默认数据库无法打开是进行数据库操作过程中经常会遇到的问题,就这个问题,下文将给出解决方案,希望对大家能够有所帮助。
AD:
导读:无法打开用户默认数据库,登录失败,这也是SQL
Server使用者熟悉的问题之一。在使用企业管理器、查询分析器、各类工具和应用软件的时候,只要关系到连接SQL
Server数据库的时候,都有可能会碰到此问题,引起此错误发生的原因比较多,下面我们就来详细分析引起此问题的原因以及解决办法。
一、原因
登录帐户的默认数据库被删除。
二、解决方法:
(一)、使用管理员帐户修改此帐户的默认数据库
1、打开企业管理器,展开服务器组,然后展开服务器
2. 展开 安全性 ,展开登录,右击相应的登录帐户,从弹出的菜单中选择,属性
3、重新选择此登录帐户的默认数据库
(二)、若没有其他管理员登录帐户,无法在企业管理器里修改,使用isql命令行工具
isql /U sa /P sa的密码 /d master /Q exec sp_defaultdb N’sa’, N’master’
如果使用Windows验证方式,使用如下命令行,将默认数据库改成非丢失的数据库:
isql /E /d master /Q exec sp_defaultdb N’BUILTINAdministrators’, N’master’
(2)由于改变了系统密码导致SQLSErver无法启动
解决办法是:
点击运行,键入services.msc,打开服务程序,找到SQLSERVER项目,选择属性项之二- 登录
,把登录密码改为操作系统Administrator帐户登录密码,重新启动SQLSErver,即可正常启动。
SQL Server 2005
在 SQL Server 2005 中,可以使用 sqlcmd 实用程序更改默认数据库。为此,请按照下列步骤操作:
1. 单击 开始 ,单击 运行 ,键入 cmd,然后按 Enter。
2. 根据 SQL Server 登录使用的身份验证种类,请使用以下方法之一:? 如果 SQL Server 登录使用 Microsoft Windows
身份验证连接到该实例,请在命令提示符处键入以下内容,然后按 Enter:
sqlcmd E -S InstanceName d master
? 如果 SQL Server 登录使用 SQL Server 身份验证连接到该实例,请在命令提示符处键入以下内容,然后按 Enter:
sqlcmd -S InstanceName -d master -U SQLLogin -P Password
注意:InstanceName 是要连接到的 SQL Server 2005 实例的名称的占位符。SQLLogin 是已删除其默认数据库的 SQL
Server 登录的占位符。Password 是 SQL Server 登录密码的占位符。
3. 在 sqlcmd 提示符处,键入以下内容,然后按 Enter:
Alter LOGIN SQLLogin WITH DEFAULT_DATABASE = AvailDBName
注意:AvailDBName 是可由实例中 SQL Server 登录访问的现有数据库的名称的占位符。
4. 在 sqlcmd 提示符处,键入 GO,然后按 Enter。
上文中为大家总结出来了这些解决默认数据库打不开的问题,如果大家有更好的办法,欢迎拿出来与大家一起分享。