sql-server - SQL Server 复制数据库问题

我正在 SQL Server 的 2008 R2 实例上运行复制数据库向导。

我要复制的数据库是 SQL 2000 数据库。 我将该数据库复制到另一个 SQL SErver 2008 R2。

向导对两台服务器都使用 SQL 身份验证,并且都是系统管理员。

当我运行它时,出现以下错误(仅供引用,我已尝试复制登录名并将其保留):

Event Name: OnError Message: ERROR : errorCode=-1073548784 description=Executing the query "sys.sp_addrolemember @rolename = N'RandomRoleName..." failed with the following error: "The role 'RandomRoleName' does not exist in the current database.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly. helpFile= helpContext=0 idofInterfaceWithError={C81DFC5A-3B22-4DA3-BD3B-10BF861A7F9C} StackTrace: at Microsoft.SqlServer.Management.Dts.DtsTransferProvider.ExecuteTransfer() at Microsoft.SqlServer.Management.Smo.Transfer.TransferData() at Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()

如有任何帮助,我们将不胜感激!

吉姆

最佳答案

我的建议是不要使用复制数据库向导。在 2000 服务器上创建数据库的完整备份,然后在 2008 服务器上恢复它。

如果你用谷歌搜索“Microsoft.SqlServer.Management.Dts.DtsTransferProvider.ExecuteTransfer Copy Database Wizard”,你会发现很多人都遇到过同样的错误或其他几乎相同的 smo 错误……似乎没有人遇到过过去了。

这并不是说它不可能...只是,恢复备份比向导或向导故障排除要容易得多。祝你好运。

https://stackoverflow.com/questions/6227305/

相关文章:

c# - 如何访问 foreach 之外的变量 (C#)

php - 如何确定哪些脚本正在使用 fopen?

php - 在 PHP5 的 _destruct 中自动取消设置所有类变量

asp.net - ObjectDataSource 没有要插入的值

sql-server - 为什么我的 SQL Server 标识值被重用?

database-design - 事务处理 : How are simultaneous tran

qt - PyQt - 如何导入 .qss 文件?

sql - 是否可以用简单的汇编语言处理器级代码编写 SQL 语句?

regex - 从编号列表中删除数字和分隔符

php - 在 url mod_rewrite 中隐藏扩展名 .php