如何将数据库及其用户从一个SQL Server传输到另一个SQL Server?

时间:2011-05-12 11:13:43

标签: sql-server

我们在SQLServer实例中有一个数据库应该转移到另一个实例(假设dbname="testdb"用户为testuser)。

当我们使用SQL Server Management Studio(在源计算机上备份数据库并在目标计算机上还原它)时,此传输很容易。

现在的问题是我无法连接目标计算机上的testuser。它是数据库的一部分,但不是SQL Server范围登录的一部分。

现在我的问题。如何将用户从db添加到SQL Server登录?

提前感谢任何评论!

干杯, 赫尔穆特

2 个答案:

答案 0 :(得分:3)

最终真正帮助我的是运行以下SQL脚本(恢复后)

USE testdb;
GO
EXEC sp_change_users_login 'Auto_Fix', 'testuser', NULL, 'testpwd';
GO

这将数据库用户“testuser”“连接”到服务器登录名“testuser”。如果没有服务器登录“testuser”,则会创建一个新的。{/ p>

有关文档,请参阅http://msdn.microsoft.com/en-us/library/ms174378.aspx

答案 1 :(得分:1)

我曾经面对同样的问题亲爱的。 他的解决方案是您必须使用下面的语句

在服务器中创建登录

使用[testdb] - 您的数据库名称

CREATE USER [testuser] FOR LOGIN [testuser]

这里你的[testuser]是你的数据库用户,第二个[testuser]是你的服务器登录名,我们用这个语句相互映射。