转:SQL Server 2005的服务器角色没有public角色的问题

先说几句啰嗦话:

SQL Server的服务器角色原本有9种,可是我的服务器上只有8种,原以为2005的都是8种(除public之外的其他八项)后台发现是我数据库服务器的问题。百度了下没有public的原因,再次体会到水贴的强大啊:每一篇内容与我转载的这篇都相同。我也是无语了。

先看看转载的内容,后面说我转载的原因。

转载链接:http://www.cnblogs.com/chenxizhang/archive/2008/07/29/1255459.html

--------------------------------------------------------转载开始------------------------------------------------------------------------

SQL Server 默认会有9个服务器角色,而且这些角色是不能删除和新增、修改的。关于这些角色相关介绍和权限,请参考。


 其中有一个特殊的角色public,任何登录都会属于该角色,它只拥有的权限是VIEW ANY DATABASE。

本文并不是为了介绍这些角色,而是提醒你,如果你在服务器角色中没有看到public,那么很可能是因为你没有安装sql server的最新补丁包(sql server 2005 sp2)的问题。(这是今天确认的一个问题)

--------------------------------------------------------转载结束------------------------------------------------------------------------

以下说说我的解决过程。

因为sp2补丁实在不好下且网上说“SP4更适合SQL Server2005”就下载了SP4,64位的。安装完成后重启电脑,查看数据库版本安装成功。但是服务器角色里还是没有public这一项,想着可不能是SP4和SP2的差距问题导致失败,就在另外一台也没有public选项的SQL Server服务器的电脑上装了SP4补丁,原以为也会失败,可打开一看竟然出现了public选项。

扫描二维码关注公众号,回复: 268558 查看本文章

想想两台电脑的区别:

1、系统不同,另外一台电脑是windows Server 2008 R2 Enterprise,我的电脑是普通的win7旗舰版。

2、SQL Server服务器安装项不同:另外一台是完全安装就是在安装的时候把所有的选项都勾选了都安装了一遍,我的是选择行安装只安装了一些个人认为有用的。

除了以上两项,其他的都一样(连SQL Server的版本都一样)。觉得操作系统应该不是导致这个问题的原因,是否完全安装可能性比较大(因为这个非完全安装,出现过好几次差异问题,如SQL Server Profiler,非完全安装没有这个工具)。

总结:

使用SP2或SP4可以解决服务器角色中没有public的问题,前提条件是”数据库是完全安装的“。

至于非完全安装怎么解决,我也不清楚。有清楚的记得留个言,万分感谢。

PS:验证SP4补丁是否安装成功,看SQL Server的版本即可。使用select @@version查看数据库版本。

没安装之前版本是这样子的:Microsoft SQL Server 2005 - 9.00.1399.06 (X64)

安装之后版本变成:Microsoft SQL Server 2005 - 9.00.5000.00 (X64)

SQL Server2005 SP4 64位下载链接:http://pan.baidu.com/s/1i5x5FPN

猜你喜欢

转载自1017401036.iteye.com/blog/2338131