2007-04-11

运行SQL Server的计算机间移动数据库

来源: support.microsoft.com 作者:support.microsoft.com 评论 0 条
 

exec sp_change_users_login 'Report'

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

2. 解决孤立用户问题。假如一个用户是孤立用户,数据库用户可以成功登录到服务器,但却无权访问数据库。假如您尝试向数据库授予登录访问权,则会因该用户已经存在而出现下列错误消息:

Microsoft SQL-DMO (ODBC SQLState:42000)

错误 15023:当前数据库中已存在用户或角色 '%s'。上面介绍了如何使用 sp_change_users_login 存储过程来逐个纠正孤立用户。sp_change_users_login 存储过程仅能解决标准的 SQL Server 登录帐户的孤立用户问题。

3. 假如数据库所有者 (dbo) 被当作孤立用户列出,请在用户数据库中运行下面的代码:exec sp_changedbowner 'sa'此存储过程会将数据库所有者更改为 dbo 并解决这个问题。要将数据库所有者更改为另一用户,请使用您想使用的用户再次运行 sp_changedbowner。

4. 假如您的目标服务器运行的是 SQL Server 2000 Service Pack 1,则在您执行附加操作或还原操作(或两种操作都执行)后,企业治理器的用户文件夹中的列表中可能没有数据库所有者用户。

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

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

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

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

第 4 步是可选操作。您可以为源服务器上的所有作业、警报和运算符生成脚本,然后在目标服务器上运行脚本。• 要移动作业、警报和运算符,请按照下列步骤操作:

1. 打开 SQL Server 企业治理器,然后展开治理文件夹。

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

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

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

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

• 假如在源服务器上为运算符设置了 SQLMail 通知,则目标服务器上也必须设置 SQLMail,才能具有相同的功能。

第 5 步:如何移动 DTS 包

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

方法 1

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

2. 将目标服务器上的包保存到 SQL Server 或存储库中。
共4页: 上一页 [1] [2] 3 [4] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:SQL Server分布式分区视图分解数据表  
下一篇:在SQL Server实例之间传输登录和密码
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号