日期:2014-05-17  浏览次数:20468 次

删除了windows用户后,SqlServer出现一堆问题
如题,昨天把我Windows上的用户全部删了,然后重新创建了若干个用户。
今天发现sqlserver出问题了。

首先是打开ManagmentStudio,原来创建的数据库都看不到了(注意,是看不到了,不是不在了。),

然后发现无法创建数据库了,错误提示是  创建 对于 数据库"[数据库名字]"失败 ..... 在数据库‘master’中拒绝了CREATE DATABASE 权限

从ManagmentStudio登录数据库的时候发现使用windows 身份验证是可以登录的(无论是admin用户还是非admin用户)。但是使用SqlServer身份验证就登录不了,错误:18456 详细信息是 无法连接到xxx-xp\SQLEXPRESS ,用户'[用户名]'登录失败,
奇怪是原来系统中部署在IIS中的网站还能照常运行(用的是Sqlserver身份验证)。这也是我为什么今天才发现出了问题的原因。

用管理员帐号登录,“使用管理员身份打开”,都试过了,还是不行。

求大神指点啊!!!
SQL?Server IIS

------解决方案--------------------
应该是你的相应权限的账号被你删除了,只能重配用户权限
------解决方案--------------------
1、运行SQLSERVER的服务需要windows账户,你删除了再添加同样的也无效。
2、点击开始,在运行框里输入:services.msc,然后找到与SQLSERVER有关的所有服务,右键属性,选择登录选项卡,选择需要用来启动SQLSERVER的windows账户。
------解决方案--------------------
奇怪是原来系统中部署在IIS中的网站还能照常运行(用的是Sqlserver身份验证)。

这个不太可能,如果IIS可以正常运行那么直接SSMS也是可以的。创建数据库失败是权限不够
------解决方案--------------------
通过修改注册表来解决此问题:

1.点击"开始"-"运行",输入regedit,回车进入注册表编辑器
2.依次展开注册表项,浏览到以下注册表键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
3.在屏幕右方找到名称"LoginMode",双击编辑双字节值
4.将原值从1改为2,点击"确定"
5.关闭注册表编辑器
6.重新启动SQL Server服务.

此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,
但是仍然无法使用Windows身份验证模式来连接SQL Server.
这是因为在 SQL Server 中有两个缺省的登录帐户:
BUILTIN\Administrators
<机器名>\Administrator 被删除.
要恢复这两个帐户,可以使用以下的方法:

1.打开企业管理器,展开服务器组,然后展开服务器
2.展开"安全性",右击"登录",然后单击"新建登录"
3.在"名称"框中,输入 BUILTIN\Administrators
4.在"服务器角色"选项卡中,选择"System Administrators" 
5.点击"确定"退出
6.使用同样方法添加 <机器名>\Administrator 登录.

说明:

以下注册表键:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
的值决定了SQL Server将采取何种身份验证模式.
1.表示使用"Windows 身份验证"模式
2.表示使用混合模式(Windows 身份验证和 SQL Server 身份验证).
------解决方案--------------------
grant 这些权限ALTER ANY DATABASE 或 VIEW ANY DATABASE 服务器级权限,或者为 master 数据库中的 CREATE DATABASE 权限

试试看。

右击登录名->属性->安全对象->添加...
------解决方案--------------------
最简单的先把这些新增加的帐号设置为sysadmin服务器角色。然后登录试试看。