当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 讲解无法打开用户默认数据库的解决方法

MSSQL
SQL Server SA权限总结经典技术
ASP数据库编程SQL常用技巧
SQL SERVER数据库开发之存储过程应用
SQL Server 2000的安全配置
MSSQL经典语句
SQL 经典语句
有用的SQL语句(删除重复记录,收缩日志)
Access 数据类型与 MS SQL 数据类型的相应
SQL语句示例
SQL数据类型详解
将Sql Server对象的当前拥有者更改成目标拥有者
MSSQL内外连接(INNER JOIN)语句详解
SQL 外链接操作小结 inner join left join right join
SQL Server中网络备份一例
SQL语句导入导出大全
SQL 新增/修改 表字段列的类型等
系统存储过程,sp_executesql
sql2005开启xp_cmdshell
实例学习SQL的Select命令
删除数据库中重复数据的几个方法

MSSQL 中的 讲解无法打开用户默认数据库的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 47 ::
收藏到网摘: n/a

无法打开用户默认数据库,登录失败,这也是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'BUILTIN\Administrators', 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。