代码改变世界

升级Sql Server 2000到Sql Server 2005中要注意的问题

2008-10-21 15:38  ruinet  阅读(2399)  评论(3编辑  收藏  举报

最近在升级Sql server的实践中,遇到了些问题,但最后顺利的解决了.特此跟大家分享下.
  升级到SQl server 2005,有两中方法:1In plase (就是在原服务器上升级现有数据库实例)
                                                              2side-by-side(在另外一台服务器上重新安装).
在转移现有数据库时有分离/附加和备份/还原两种方法.
详细的过程大家可以看MSDN的webcast
http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/Series/Sql2005Upgrade.aspx
我只想说下在升级过程种应该注意的问题:
1.如果时side-by-side方法升级,如果你的sqlserver的登陆帐号太多,但有不想在升级后的sql上一个个添加的话,
那就只能使用"复制数据库"的方法了.只要通过该方法才能将登陆名一次性复制过来.
2.在使用"复制数据库"时,要注意Sql server 和Sql server agent两个服务的启动帐号.如果你安装sql server的时候选择的使用本地服务帐号启动的话,那肯定时没方法复制数据库的,因为该帐号没有权限访问sql server 2000的数据库的服务器.
解决方法:可以使用域帐号或在两个服务器上同时建一个相同的帐号来启动服务,如果不是管理员权限的话,还有建数据库文件所在的目录设为可用启动服务的帐号能够读写.
3.如果顺利的话,一次性就可以将所有数据库一次复制过来.但是以我的经验,现在用原帐号并不能登陆.还必须重新设置登陆名的密码使之生效.到此也还不能访问,你点开某个数据的用户,你会发现该用户的登陆名没有了.
可以使用:EXEC sp_change_users_login 'report' 查出没有登陆名用户
通过:EXEC sp_change_users_login 'Update_one','UserName','LoginName';添加登陆名.
4.如果大家是打算在新买的服务器上可以考虑安装64位的.这样要求windows server 也要是64位的.

大致上有以上几个问题可能会遇到.具体问题大家可以参考msdn webcast同时在实际升级前最好先多练习几次,
如果你是要在新的服务器上升级(即side-by-side),最好能在两台服务器上练习下.

如果是想在XP上做测试,在默认安装下,即使设定了SA 的密码也无法通过SQL server 账号登陆,只能先用windows方式登录后,然后在管理器上选择“属性”--将安全登陆,改为可以使用SQL server 账号登陆,重启就可以了


free web counter