![](/img/trans.png)
[英]Migration Issue: error '80040e14' in ASP classic application from Windows server 2003/SQL Server 2000 to Windows Server 2008 R2/SQL Server 2012
[英]SQL Server 2000 to SQL Server 2008 R2 migration
我使用SQL Server 2000包括77个数据库,我想将它们迁移到新的SQL Server 2008 R2。
我可以使用attach或restore命令单独执行此操作。 是否有任何脚本可以将77个数据库迁移到安装了SQL Server 2008 R2的新服务器。
谢谢
您可以编写脚本以在循环中进行备份并在另一台服务器上进行还原
只要备份文件对两个服务器都可见。 这将允许WITH MOVE选项允许不同的驱动器/文件夹。
备份也小于MDF / LDF,以减少复制
您需要生成自己的脚本,因为您真的想做的不仅仅是备份和还原。 您可能想要做的其他事情是运行DBCC UpdateUsage,设置兼容级别,更新统计信息,使用Data_Purity运行DBCC CheckDB,将页面验证选项更改为校验和。 您也可以使用复制和全文目录进行处理。 所有这些事情都可能需要进入你的脚本。
您需要设置一个脚本,该脚本执行先前在数据库中提及的所有/部分/更多内容,然后扩展您的脚本以循环遍历所有数据库。 这可以使用批处理文件或powershell文件的组合并使用sqlcmd来完成。
例如,这是我将备份还原到新服务器后运行的一个脚本。 这是通过sqlcmd从Windows批处理文件调用的。
USE [master]
走
ALTER DATABASE [$(DATABASENAME)] SET COMPATIBILITY_LEVEL = 100
ALTER DATABASE [$(DATABASENAME)] SET PAGE_VERIFY CHECKSUM WITH NO_WAIT GO
使用[$(DATABASENAME)]
Go声明@DBO sysname
- 是sa用户
从sys.server_principals中选择@DBO = name其中principal_id = 1
- 分配数据库所有者
exec('sp_changedbowner'''+ + DBO +'''')去吧
- 修正计数
dbcc updateusage(0)go --check db包含列值的完整性
dbcc checkdb(0)使用Data_Purity,ALL_ERRORMSGS,NO_INFOMSGS去
- 确保统计数据是最新的
exec sp_updatestats
走
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.