当前位置:首页 » 编程语言 » sql移动数据库

sql移动数据库

发布时间: 2022-12-09 14:32:37

① 怎么把sql数据库从旧电脑移动到新电脑安装​

1、可以直接复制的,备份或者分离(选中数据库,右键,任务,分离or备份)。
分离:文件直接到之前还原的路径下面(路径可以通过,选中数据库,右键,属性,文件,查看路径),复制到高于或等于当前这个SQL数据库版本的实例中即可。

备份:文件备份时可以选择备份路径。
2、无法直接复制的。
选中数据库,右键,任务,生成脚本,第一步直接下一步,高级,最下面,要编写脚本的数据类型,选择架构和数据,选择保存位置,下一步,等待导出,导出文件后,修改存储文件的路径,到新的实例中执行即可。这个办法不用考虑实例版本问题,但是,数据库导出可能导不出来等问题,不一定全都适用。
由于不允许贴图,看不懂再追问,看到了就补充。

② sql server创建的数据库文件怎么移动

在sql的控制界面,右键点击数据库名-任务-分离-确定。
然后就可以移动数据库文件了。

③ 怎么把sql数据库从旧电脑移动到新电脑安装

新电脑上直接安装同样或者高版本的数据库软件,然后把旧电脑的数据库分离一下,找到数据库文件的存放路径,将分离的数据库再复制到新电脑上(网络共享或使用U盘、移动硬盘拷贝均可),然后打开数据库软件,先将数据库文件复制进你指定的一个文件夹,然后再打开数据库软件点附加数据库

④ 怎么把sql数据库从旧电脑移动到新电脑安装

在你的机器上SQL文件夹下面存数据库的那个文件夹,然后把你代码所用到的库拷到另外的一台电脑上.
在另外一台电脑,运行SQL的企业管理器,在数据库任务那选择附加数据库,然后
选择你拷过去的库就行咯.

要把代码里的SERVER改成那台电脑的服务器名字,不一定就是LOCALHOST的

想知道另外一机器的服务器名称的话,可以用一个叫 MovieLink.udl 的小程序就可以咯.

⑤ sql server怎样把一个数据库中的表移动到另一个数据库中

分两步进行:
第一步,复制表结构:
在表上面右击——>编写表脚本为:——>Create到——>新查询编辑器窗口,你也可以保存为sql文件,将新查询编辑器窗口最上面的一句话USE
[olddatabase]中的“olddatabase”修改为“newdatabase”,其中olddatabase为源数据库名,newdatabase为目标数据库名,点击上面的“执行”按钮,这样,表结构复制完毕;
第二步,复制表数据:
在“olddatabase”上右击——>任务——>导出数据,在弹出对话框中选好源数据库、身份验证和目标数据库、身份验证后,然后选择要复制的表,完成后则表数据即插入成功。

⑥ SQL数据库的迁移方法有多少

本文介绍五种迁移SQL数据库的方法,包括DTS设计器导入导出、利用备份和恢复、直接拷贝数据文件、在应用程序中定制和SQL Server的复制功能。

DTS设计器导入导出
DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL Server Enterprise Manager中,展开服务器左边的+,选择数据库,右击,选择All tasks/Import Data...(或All tasks/Export Data...),进入向导模式,按提示一步一步走就行了,里面分得很细,可以灵活的在不同数据源之间复制数据,很方便的。而且可以另存成DTS包,如果以后还有相同的复制任务,直接运行DTS包就行,省时省力。也可以直接打开DTS设计器,方法是展开服务器名称下面的Data Transformation Services,选Local Packages,在右边的窗口中右击,选New Package,就打开了DTS设计器。
值得注意的是:如果源数据库要拷贝的表有外键,注意移动的顺序,有时要分批移动,否则外键主键,索引可能丢失,移动的时候选项旁边的提示说的很明白,或者一次性的复制到目标数据库中,再重新建立外键,主键,索引。
利用备份和恢复
先对源数据库进行完全备份,备份到一个设备(device)上,然后把备份文件复制到目的服务器上(恢复的速度快),进行数据库的恢复操作,在恢复的数据库名中填上源数据库的名字(名字必须相同),选择强制型恢复(可以覆盖以前数据库的选项),再选择从设备中进行恢复,浏览时选中备份的文件就行了。这种方法可以完全恢复数据库,包括外键,主键,索引。
直接拷贝数据文件
把数据库的数据文件(*.mdf)和日志文件(*.ldf)都拷贝到目的服务器,在SQL Server Query Analyzer中用语句进行恢复:
EXEC sp_attach_db @dbname = ';test';,
@filename1 = ';d:mssql7datatest_data.mdf';,
@filename2 = ';d:mssql7datatest_log.ldf';
这样就把test数据库附加到SQL Server中,可以照常使用。如果不想用原来的日志文件,可以用如下的命令:
EXEC sp_detach_db @dbname = ';test';
EXEC sp_attach_single_file_db @dbname = ';test';,
@physname = ';d:mssql7datatest_data.mdf';
这个语句的作用是仅仅加载数据文件,日志文件可以由SQL Server数据库自动添加,但是原来的日志文件中记录的数据就丢失了。
在应用程序中定制
可以在应用程序(PB、VB)中执行自己编写的程序,也可以在Query Analyzer中执行,这种方法比较灵活,其实是利用一个平台连接到数据库,在平台中用的主要是SQL语句,这种方法对数据库的影响小,但是如果用到远程链接服务器,要求网络之间的传输性能好,一般有两种语句:
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
区别是前者把数据插入一个新表(先建立表,再插入数据),后者是把数据插入已经存在的一个表中,我个人喜欢后者,因为在编程的结构上,应用的范围上,第二条语句强于前者。
SQL Server的复制功能
SQL Server提供了强大的数据复制功能,也是最不易掌握的,具体应用请参考相关资料,值得注意的是要想成功进行数据的复制工作,有些条件是必不可少的:
1)SQL Server Agent必须启动,MSDTC必须启动。
2)所有要复制的表必须有主键。
3)如果表中有text或image数据类型,必须使用with log选项,不能使用with no_log选项。
另外max text repl size选项控制可以复制的文本和图像数据的最大规模,超过这个限制的操作将失败。
4)在要进行复制的计算机上,应该至少是隐含共享,即共享名是a1、b1…。
5)为SQL Server代理使用的Windows Server账号不能是一个本地的系统账号,因为本地的系统账号不允许网络存取。

⑦ 如何在运行 SQL Server 的计算机之间移动数据库

您可以使用相同的方法从 SQL Server 7.0 或 SQL Server 2000 迁移数据。但是,Microsoft SQL
Server 2005 中的管理工具与 SQL Server 7.0 或 SQL Server 2000 中的管理工具有所不同。您应该使用
SQL Server Management Studio(而不是 SQL Server 企业管理器)以及 SQL Server 导入和导出向导
(DTSWizard.exe)(而不是数据转换服务导入和导出数据向导)。
备份和还原
在源服务器上备份用户数据库,然后将用户数据库还原到目标服务器上。
在备份过程中时可能有人使用数据库。如果用户在备份完成后对数据库执行
INSERT、UPDATE 或 DELETE
语句,则备份中不会包含这些更改。如果您必须传输所有更改,那么,假如您既执行事务日志备份又执行完整数据库备份,您可以以尽可能短的停止时间来传输这些更改。
在目标服务器上还原完整数据库备份,并指定 WITH NORECOVERY 选项。

注意:为防止对数据库做进一步的修改,请指导用户在源服务器上退出数据库活动。
执行事务日志备份,然后使用 WITH RECOVERY 选项将事务日志备份还原到目标服务器上。停止时间仅限于事务日志备份和恢复的时间。有关更多信息,请参阅 SQL Server 联机丛书的“Transact-SQL 参考”主题中的“还原”子主题。
目标服务器上的数据库将与源服务器上的数据库大小相同。要减小数据库的大小,您必须在执行备份前压缩源数据库的大小,或者在完成还原后压缩目标数据库的大小。有关更多信息,请参阅 SQL Server 联机丛书的“创建和维护数据库”标题下的“压缩数据库”子主题。
如果您将数据库还原到的文件位置不同于源数据库的文件位置,则必须指定 WITH MOVE 选项。例如,在源服务器上,数据库位于 D:\Mssql\Data 文件夹中。目标服务器没有 D 驱动器,因而您需要将数据库还原到 C:\Mssql\Data 文件夹。

有关如何将数据库还原到其他位置的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
221465

INF:结合使用 WITH MOVE 选项和 RESTORE 语句
304692 INF:使用 BACKUP 和 RESTORE 将 SQL Server 7.0 数据库移到新的位置
如果您想覆盖目标服务器上的一个现有数据库,则必须指定 WITH REPLACE 选项。有关更多信息,请参阅 SQL Server 联机丛书的“Transact-SQL 参考”主题中的“还原”子主题。
源服务器和目标服务器上的字符集、排序顺序和 Unicode 整序可能必须相同,具体取决于您要还原到 SQL Server 的哪种版本。有关更多信息,请参阅本文中的“关于排序规则的说明”一节。
Sp_detach_db 和 Sp_attach_db 存储过程
要使用 sp_detach_db 和 sp_attach_db 这两个存储过程,请按下列步骤操作:
使用 sp_detach_db 存储过程分离源服务器上的数据库。您必须将与数据库关联的 .mdf、.ndf 和 .ldf 这三个文件复制到目标服务器上。参见下表中对文件类型的描述:

文件扩展名
说明

.mdf 主要数据文件
.ndf 辅助数据文件
.ldf 事务日志文件
使用 sp_attach_db 存储过程将数据库附加到目标服务器上,并指向您在上一步骤中复制到目标服务器的文件。

有关如何使用这些方法的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
224071

如何通过使用 SQL Server 中的分离和附加功能将 SQL Server 数据库移到新位置
分离数据库后将无法访问该数据库,并且复制文件时也无法使用该数据库。在进行分离的那一时刻数据库中包含的所有数据都被移动。
在您使用附加或分离方法时,两个服务器上的字符集、排序顺序和 Unicode 整序都必须相同。有关更多信息,请参阅本文中的“关于排序规则的说明”一节。
关于排序规则的说明
如果您使用备份和还原或附加和分离方法在两个
SQL Server 7.0 服务器之间移动数据库,则两个服务器上的字符集、排序顺序和 Unicode 整序都必须相同。如果您将数据库从
SQL Server 7.0 移到 SQL Server 2000,或者在不同的 SQL Server 2000
服务器之间移动数据库,则数据库将保留源数据库的整序。这意味着,如果运行 SQL Server 2000
的目标服务器的整序与源数据库的整序不同,则目标数据库的整序也将与目标服务器的 master、model、tempdb 和 msdb 数据库的整序不同。有关更多信息,请参见 SQL Server 2000 联机丛书中的“混合整序环境”主题。
导入和导出数据(在 SQL Server 数据库之间复制对象和数据)
您可以使用数据转换服务导入和导出数据向导来复制整个数据库或有选择地将源数据库中的对象和数据复制到目标数据库。
在传输过程中,可能有人在使用源数据库。如果在传输过程中有人在使用源数据库,您可能会看到传输过程中出现一些阻滞现象。
在您使用导入和导出数据向导时,源服务器与目标服务器的字符集、排序顺序和整序不必相同。
因为源数据库中未使用的空间不会移动,所以目标数据库不必与源数据库一样大。同样,如果您只移动某些对象,则目标数据库也不必与源数据库一样大。
SQL Server 7.0 数据转换服务可能无法正确地传输大于 64 KB 的文本和图像数据。但 SQL Server 2000 版本的数据转换服务不存在此问题。

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
257425

FIX:DTS 对象传输不能传输大于 64 KB 的 BLOB 数据
第 2 步:如何传输登录和密码
如果您不将源服务器中的登录传输到目标服务器,当前的 SQL Server 用户就无法登录到目标服务器。您可以按照下面的 Microsoft 知识库文章中的说明来传输登录和密码:

246133 如何在 SQL Server 实例之间传输登录和密码
目标服务器上的登录的默认数据库可能与源服务器上的登录的默认数据库不同。您可以使用 sp_defaultdb 存储过程来更改登录的默认数据库。有关更多信息,请参见 SQL Server 联机丛书中的“Transact-SQL 参考”主题的“sp_defaultdb”子主题。
第 3 步:如何解决孤立用户
在您向目标服务器传输登录和密码后,用户可能还无法访问数据库。登录与用户是靠安全识别符 (SID) 关联在一起的;在您移动数据库后,如果 SID
不一致,SQL Server 可能会拒绝用户访问数据库。此问题称为孤立用户。如果您使用 SQL Server 2000 DTS
传输登录功能来传输登录和密码,就可能会产生孤立用户。此外,被允许访问与源服务器处于不同域中的目标服务器的集成登录帐户,也会导致出现孤立用户。
查找孤立用户。在目标服务器上打开查询分析器,然后在您移动的用户数据库中运行以下代码:
exec sp_change_users_login 'Report'

此过程将列出任何未链接到一个登录帐户的孤立用户。如果没有列出用户,请跳过第 2 步和第 3 步,直接进行第 4 步。
解决孤立用户问题。如果一个用户是孤立用户,数据库用户可以成功登录到服务器,但却无权访问数据库。如果您尝试向数据库授予登录访问权,则会因该用户已经存在而出现下列错误消息:
Microsoft SQL-DMO (ODBC SQLState:42000) 错误 15023:当前数据库中已存在用户或角色 '%s'。
有关如何解决孤立用户的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
240872

如何解决在运行 SQL Server 的服务器之间移动数据库时的权限问题

此文章介绍如何将登录映射到数据库用户,以及如何解决标准的 SQL Server 登录和集成登录产生的孤立用户。

274188 PRB:联机丛书中的“孤立用户疑难解答”主题不完整

上面的文章介绍了如何使用 sp_change_users_login 存储过程来逐个纠正孤立用户。sp_change_users_login 存储过程仅能解决标准的 SQL Server 登录帐户的孤立用户问题。
如果数据库所有者 (dbo) 被当作孤立用户列出,请在用户数据库中运行下面的代码:
exec sp_changedbowner 'sa'

此存储过程会将数据库所有者更改为 dbo 并解决这个问题。要将数据库所有者更改为另一用户,请使用您想使用的用户再次运行 sp_changedbowner。有关更多信息,请参见 SQL Server 联机丛书的“Transact-SQL 参考”主题中的“sp_changedbowner”子主题。
如果您的目标服务器运行的是 SQL Server 2000 Service Pack 1,则在您执行附加操作或还原操作(或两种操作都执行)后,企业管理器的用户文件夹中的列表中可能没有数据库所有者用户。

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
305711

BUG:在企业管理器中没有显示 DBO 用户
如果目标服务器上不存在映射到源服务器上的 dbo 的登录,您在尝试通过企业管理器更改系统管理员 (sa) 密码时,可能会收到以下错误消息:
错误 21776:[SQL-DMO] 名称 'dbo' 在 Users 集合中没有找到。如果该名称是合法名称,则使用 [] 来分隔名称的不同部分,然后重试。
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
218172

PRB:在企业管理器中不能更改 SA 密码
警告:如果您再次还原或附加数据库,则数据库用户可能会再次被孤立,这样您就必须重复第 3 步操作。
第 4 步:如何移动作业、警报和运算符
第 4 步是可选操作。您可以为源服务器上的所有作业、警报和运算符生成脚本,然后在目标服务器上运行脚本。
要移动作业、警报和运算符,请按照下列步骤操作: 您可以用右键单击选择为所有警报、所有作业或所有运算符生成脚本。
打开 SQL Server 企业管理器,然后展开管理文件夹。
展开 SQL Server 代理,然后右键单击警报、作业或运算符。
单击所有任务,然后单击生成 SQL 脚本。对于 SQL Server 7.0,请单击为所有作业生成脚本、警报或运算符。
您可以将作业、警报和运算符从 SQL Server 7.0 移到 SQL Server 2000,也可以在运行 SQL Server 7.0 和运行 SQL Server 2000 计算机之间移动。
如果在源服务器上为运算符设置了 SQLMail 通知,则目标服务器上也必须设置 SQLMail,才能具有相同的功能。

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
263556

INF:如何配置 SQL Mail
第 5 步:如何移动 DTS 包
第 5 步是可选操作。如果 DTS 包在源服务器上存储在 SQL Server 中或存储库中,您可以在需要时移动这些包。要在服务器之间移动 DTS 包,请使用下列方法之一。
方法 1
在源服务器上将 DTS 包保存到一个文件中,然后在目标服务器上打开 DTS 包文件。
将目标服务器上的包保存到 SQL Server 或存储库中。
注意:您必须用单独的文件逐个地移动这些包。
方法 2
在 DTS 设计器中打开每个 DTS 包。
在包菜单上,单击另存为。
指定目标 SQL Server。
注意:在新服务器上,包可能无法正常运行。您可能必须对包进行更改,更改包中任

⑧ sql server 怎么迁移数据库

1、真心不建议你迁移系统数据库,太麻烦了。就一个系统用户账号就够你累的了。
2、我一般都是在新计算机上安装新的SQL服务实例,然后逐个迁移用户数据库
3、只需要向用户贴出安民告示即可,也就半个小时到1一个小时,基本上全部搞定。

若非要迁移,那么你可以这样做:
首先迁移master数据库,master数据库是整个SQL Server实例的核心,所有的设置都存放在master数据库里,如果master数据库出现问题,整个实例都将瘫痪。首先打开SQL Server Configuration Manager,在左边的列表框中选中SQL Server Services节点,然后在右边的列表框中找到需要迁移系统数据库的实例的那个SQL Server服务,比如说SQLServer(MSSQLSERVER),停止这个实例的服务(不会停的去菜场买块豆腐撞死算了),然后右键单击,选中最底下的“Properties”,并且切换到“Advanced”标签,如下图所示:

看到“Startup Parameters”了吧,这里的参数就是需要我们更改的。如下图所示:

把这段字符整理一下就是这样:
-dC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf;
-eC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;
-lC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.ldf

基本上看出来了吧,“-d”后面的就是master数据库数据文件的位置,“-e”是该SQL Server实例的错误日志所在的位置,至于“-l”就是master数据库日志文件所在的位置了。修改数据文件和日志文件的路径到适当为位置,错误日志的位置一般不需要做变更,例如将数据文件存放到D盘的SQLData文件夹下,日志文件存放到E盘的SQLLog文件夹下,则参数如下:

-dD:\SQLData\master.mdf;-eC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-lE:\SQLLog\mastlog.ldf

点击“OK”保存并关闭对话框。

热点内容
ebay图片上传 发布:2024-04-27 21:31:50 浏览:586
微信电脑登录显示服务器错误 发布:2024-04-27 20:58:08 浏览:134
压缩弹簧安装 发布:2024-04-27 20:35:43 浏览:371
淘宝视频无法上传视频 发布:2024-04-27 20:31:27 浏览:643
安卓软件怎么分享 发布:2024-04-27 20:28:26 浏览:669
宽带测速上传 发布:2024-04-27 20:23:22 浏览:174
mysql存储过程ifand 发布:2024-04-27 20:17:12 浏览:252
4位数密码锁怎么开 发布:2024-04-27 20:10:31 浏览:853
倾倒压缩机 发布:2024-04-27 20:00:34 浏览:652
根中根算法 发布:2024-04-27 19:51:44 浏览:749