主页>技术社区>IT 技术>数据库>SQL Server>SQL教程

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

eIT.com.cn 2022/11/26 23:24:39 阅读 59 次

打印


本页

概要

如果您使用的是 SQL Server 2005

备份和还原

Sp_detach_db 和 Sp_attach_db 存储过程

关于排序规则的说明

导入和导出数据(在 SQL Server 数据库之间复制对象和数据)

第 2 步:如何传输登录和密码

第 3 步:如何解决孤立用户

第 4 步:如何移动作业、警报和运算符

第 5 步:如何移动 DTS 包

方法 1

方法 2

更多信息

参考

概要

本文分步介绍了如何在运行 Server 的计算机之间移动 Microsoft Server 和大多数常见的 Server 组件。
本文中介绍的步骤假定您不移动 mastermodeltempdbmsdb 这些系统。这些步骤为您传输以及mastermsdb 中包含的大多数常见组件提供了多个选项。
有关执行本文中介绍的步骤时未传输的特定项目的信息,请参阅本文中的“更多信息”一节。
注意:将数据从 Server 2000 迁移到 Microsoft Server 2000(64 位)。您可以将 32 位附加到 64 位上,是:使用 sp_attach_db 系统存储过程或 sp_attach_single_file_db 系统存储过程,或者使用 32 位企业管理器中的备份和还原。您可以在 Server 的 32 位和 64 位两种版本之间来回移动。您还可以使用同样的从 Server 7.0 迁移数据。但是,将数据从 Server 2000(64 位)降级到 Server 7.0。 下面分别介绍这几种。

如果您使用的是 Server 2005

您可以使用相同的从 Server 7.0 或 Server 2000 迁移数据。但是,Microsoft Server 2005 中的管理工具与 Server 7.0 或 Server 2000 中的管理工具有所不同。您应该使用 Server Management Stu(而不是 Server 企业管理器)以及 Server 导入和导出向导 (DTSWizard.exe)(而不是数据转换服务导入和导出数据向导)。

备份和还原

在源服务器上备份,然后将还原到目标服务器上。

•在备份过程中时可能有人使用。如果在备份完成后对执行 INSERT、UPDATE 或 DELETE 语句,则备份中不会包含这些更改。如果您必须传输所有更改,那么,假如您既执行事务日志备份又执行完整备份,您可以以尽可能短的停止时间来传输这些更改。

1.在目标服务器上还原完整备份,并指定 WITH ECOVERY 选项。
注意:为防止对做进一步的,请指导在源服务器上活动。

2.执行事务日志备份,然后使用 WITH RECOVERY 选项将事务日志备份还原到目标服务器上。停止时间仅限于事务日志备份和恢复的时间。有关更多信息,请参阅 Server 联机丛书的“Transact- 参考”中的“还原”子。

•目标服务器上的将与源服务器上的大小相同。要减小的大小,您必须在执行备份前压缩源的大小,或者在完成还原后压缩目标的大小。有关更多信息,请参阅 Server 联机丛书的“创建和维护”下的“压缩”子。

•如果您将还原到的位置不同于源的位置,则必须指定 WITH MOVE 选项。例如,在源服务器上,位于 D:\Ms\Data 夹中。目标服务器没有 D 驱动器,因而您需要将还原到 C:\Ms\Data 夹。 有关如何将还原到其他位置的更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/221465/) INF:结合使用 WITH MOVE 选项和 RESTORE 语句

(http://support.microsoft.com/kb/304692/) INF:使用 BACKUP 和 RESTORE 将 Server 7.0 移到新的位置

•如果您想覆盖目标服务器上的现有,则必须指定 WITH REPLACE 选项。有关更多信息,请参阅 Server 联机丛书的“Transact- 参考”中的“还原”子。

•源服务器和目标服务器上的字符集、排序顺序和 Unicode 整序可能必须相同,具体取决于您要还原到 Server 的哪种版本。有关更多信息,请参阅本文中的“关于排序规则的说明”一节。

Sp_detach_db 和 Sp_attach_db 存储过程

要使用 sp_detach_dbsp_attach_db 这两个存储过程,请按下列步骤操作:

1.使用 sp_detach_db 存储过程分离源服务器上的。您必须将与关联的 .mdf、.ndf 和 .ldf 这三个复制到目标服务器上。参见下表中对类型的描述:

扩展名说明

.mdf主要数据

.ndf辅助数据

.ldf事务日志

2.使用 sp_attach_db 存储过程将附加到目标服务器上,并指向您在上一步骤中复制到目标服务器的。 有关如何使用这些的更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/224071/) 如何通过使用 Server 中的分离和附加将 Server 移到新位置

•分离后将无法访问该,并且复制时也无法使用该。在进行分离的那一时刻中包含的所有数据都被移动。

•在您使用附加分离时,两个服务器上的字符集、排序顺序和 Unicode 整序都必须相同。有关更多信息,请参阅本文中的“关于排序规则的说明”一节。

关于排序规则的说明

如果您使用备份和还原或附加分离在两个 Server 7.0 服务器之间移动,则两个服务器上的字符集、排序顺序和 Unicode 整序都必须相同。如果您将从 Server 7.0 移到 Server 2000,或者在不同的 Server 2000 服务器之间移动,则将保留源的整序。这意味着,如果运行 Server 2000 的目标服务器的整序与源的整序不同,则目标的整序也将与目标服务器的 mastermodeltempdbmsdb 的整序不同。有关更多信息,请参见 Server 2000 联机丛书中的“混合整序环境”。

导入和导出数据(在 Server 之间复制对象和数据)

您可以使用数据转换服务导入和导出数据向导来复制整个或有选择地将源中的对象和数据复制到目标。

•在传输过程中,可能有人在使用源。如果在传输过程中有人在使用源,您可能会看到传输过程中出现一些阻滞现象。

•在您使用导入和导出数据向导时,源服务器与目标服务器的字符集、排序顺序和整序不必相同。

•因为源中未使用的空间不会移动,所以目标不必与源一样大。同样,如果您只移动某些对象,则目标也不必与源一样大。

• Server 7.0 数据转换服务可能无法正确地传输大于 64 KB 的文本和图像数据。但 Server 2000 版本的数据转换服务不存在此问题。 有关更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/257425/) FIX:DTS 对象传输不能传输大于 64 KB 的 BLOB 数据

第 2 步:如何传输和密码

如果您不将源服务器中的传输到目标服务器,当前的 Server 就无法到目标服务器。您可以按照下面的 Microsoft 知识库中的说明来传输和密码:

(http://support.microsoft.com/kb/246133/) 如何在 Server 实例之间传输和密码

目标服务器上的的认可能与源服务器上的的认不同。您可以使用 sp_defaultdb 存储过程来更改的认。有关更多信息,请参见 Server 联机丛书中的“Transact- 参考”的“sp_defaultdb”子。

第 3 步:如何孤立

在您向目标服务器传输和密码后,可能还无法访问。与是靠安全识别符 (SID) 关联在一起的;在您移动后,如果 SID 不一致, Server 可能会拒绝访问。此问题称为孤立。如果您使用 Server 2000 DTS 传输来传输和密码,就可能会产生孤立。此外,被允许访问与源服务器处于不同域中的目标服务器的集成帐户,也会导致出现孤立。

1.查找孤立。在目标服务器上打开分析器,然后在您移动的中运行以下:

exec sp_change_users_login 'Report'

此过程将列出任何未到帐户的孤立。如果没有列出,请跳过第 2 步和第 3 步,直接进行第 4 步。

2.孤立问题。如果是孤立,可以成功到服务器,但却无权访问。如果您尝试向授予访问权,则会因该已经存在而出现下列消息:

Microsoft -DMO (ODBC State:42000) 13:当前中已存在或角色 ''。

有关如何孤立的更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/240872/) 如何在运行 Server 的服务器之间移动时的权限问题

此介绍如何将映射到,以及如何标准的 Server 和集成产生的孤立。

(http://support.microsoft.com/kb/274188/) PRB:联机丛书中的“孤立疑难解答”不完整

上面的介绍了如何使用 sp_change_users_login 存储过程来逐个纠正孤立。sp_change_users_login 存储过程仅能标准的 Server 帐户的孤立问题。

3.如果所有者 (dbo) 被当作孤立列出,请在中运行下面的:

exec sp_changedbowner 'sa'

此存储过程会将所有者更改为 dbo 并这个问题。要将所有者更改为另一,请使用您想使用的再次运行 sp_changedbowner。有关更多信息,请参见 Server 联机丛书的“Transact- 参考”中的“sp_changedbowner”子。

4.如果您的目标服务器运行的是 Server 2000 Service Pack 1,则在您执行附加操作或还原操作(或两种操作都执行)后,企业管理器的夹中的列表中可能没有所有者。 有关更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/305711/) BUG:在企业管理器中没有 DBO

5.如果目标服务器上不存在映射到源服务器上的 dbo 的,您在尝试通过企业管理器更改系统 (sa) 密码时,可能会收到以下消息:

21776:[-DMO] 'dbo' 在 Users 集合中没有找到。如果该是合法,则使用 [] 来分隔的不同部分,然后重试。

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

(http://support.microsoft.com/kb/218172/) PRB:在企业管理器中不能更改 SA 密码

警告:如果您再次还原或附加,则可能会再次被孤立,这样您就必须重复第 3 步操作。

第 4 步:如何移动作业、警报和运算符

第 4 步是可选操作。您可以为源服务器上的所有作业、警报和运算符脚本,然后在目标服务器上运行脚本。

•要移动作业、警报和运算符,请按照下列步骤操作:

1.打开 Server 企业管理器,然后展开管理夹。

2.展开 Server 代理,然后右键单击警报作业运算符

3.单击所有任务,然后单击 脚本。对于 Server 7.0,请单击为所有作业脚本警报运算符

您可以用右键单击选择为所有警报所有作业所有运算符脚本。

•您可以将作业、警报和运算符从 Server 7.0 移到 Server 2000,也可以在运行 Server 7.0 和运行 Server 2000 计算机之间移动。

•如果在源服务器上为运算符设置了 Mail ,则目标服务器上也必须设置 Mail,才能具有相同的。 有关更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/263556/) INF:如何配置 Mail

第 5 步:如何移动 DTS 包

第 5 步是可选操作。如果 DTS 包在源服务器上存储在 Server 中或存储库中,您可以在需要时移动这些包。要在服务器之间移动 DTS 包,请使用下列之一。

1

1.在源服务器上将 DTS 包保存到中,然后在目标服务器上打开 DTS 包。

2.将目标服务器上的包保存到 Server 或存储库中。
注意:您必须用单独的逐个地移动这些包。

2

1.在 DTS 设计器中打开每个 DTS 包。

2.在上,单击另存为

3.指定目标 Server。

注意:在新服务器上,包可能无法正常运行。您可能必须对包进行更改,更改包中任何对旧的源服务器上的连接、、数据源、和其他信息的引用,以便引用新的目标服务器。您必须根据每个包的设计逐个包进行这些更改。

更多信息

您可能还需要移动其他一些项目,例如复制、日志传送、全文目录、指定的备份设备、维护计划和的服务器等。如果您需要的话,您可以检查这些配置的源服务器,然后在目标服务器上采用相应的步骤手动设置它们。
有关如何移动全文组件的更多信息,请单击下面的编号,以查看 Microsoft 知识库中相应的:

(http://support.microsoft.com/kb/240867/) 如何移动、复制和备份全文目录夹和

本文中介绍的步骤不移动关系图以及备份与还原历史记录。如果您必须移动这些信息,请移动 msdb 系统。有关如何移动 msdb 的信息,请参阅本文的“第 1 步:如何移动”一节中引用的 Microsoft 知识库。如果您移动 msdb ,则不必执行“第 4 步:如何移动作业、警报和运算符”或“第 5 步:如何移动 DTS 包”。

参考

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

(http://support.microsoft.com/kb/320125/) 如何移动关系图

from:

总结

以上是为你收集整理的全部内容。

如果觉得网站内容还不错,欢迎将推荐给好友。






相关内容


热门栏目


特别声明


最新资讯
热讯排行



合作媒体友情链接
生活常识小贴士 软件开发教程 智慧城市生活网 息县通生活服务[移动版] 息县商圈[移动版] 美食菜谱
健康养生 法律知识 科技频道 电影影讯 留学考研学习 星座生肖|解梦说梦




关于我们 | 联系我们 | 合作媒体 | 使用条款 | 隐私权声明 | 版权声明

      Copyright © 2023 eIT.com.cn. All Rights Reserved. 豫ICP备2022012332号