没有SQL Server Express登录权限创建数据库

8

我无法创建新的数据库因为只有两个登录:

sa
BuiltIn\Users

尽管我是管理员,但在尝试创建数据库时,我会收到权限被拒绝的消息。 在这种情况下,如何添加具有许可权限的用户?是否必须重新安装?


这种类型的问题通常最好在serverfault.com上解决。 - mjv
3个回答

29

我假设SQL身份验证被禁用,并且builtin\users不是sysadmin(即你被锁定了)。

停止Express服务,以管理员模式启动服务器(从命令行运行sqlservr -m -s SQLEXPRESS),连接到管理员实例并将builtin \ administrators添加回sysadmin。 然后停止管理实例(Ctrl-C),并重新启动正常实例。

自Vista / Win7 / Win2k8以来,在正常的UAC下从上下文中删除管理员令牌,因此明确地将自己(domain \ user)作为sysadmin添加也是有意义的,这样您就无需使用RunAsAdministrator进行连接。

详见如何在SQL Server 2005中将Windows用户添加到sysadmin固定服务器角色作为故障恢复机制


我已经成功创建了数据库。但是,我现在注意到有几个新的登录名。"##MSPolicy..." "WIN--\Adminsitrator" 和一些 NTAuthority。这是为什么? - zsharp
这是一个很好的解决方案。我只会添加一个[好的解决方案](http://blogs.msdn.com/b/dparys/archive/2009/09/17/create-database-permission-denied-in-database-master-my-fix.aspx),以连接和修复缺失的登录。 - JasonCoder

0
在SQLExpress的默认安装中,SA用户默认处于禁用状态。您可以使用SQL Server Management Studio Express连接到您的SQLExpress实例,并启用该用户并确保其具有强大的密码,只需添加一个新用户并赋予其所需的权限或使用Windows集成安全性即可。

0

如果您使用SQL Server身份验证登录为“sa”,那么肯定不会出现权限被拒绝的情况吧?


sa的默认密码是什么? - zsharp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接