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

MSSQL
使用SQL Server数据库嵌套子查询的方法
SQL Server SQL Agent服务使用教程小结
五种提高 SQL 性能的方法
非常不错的SQL语句学习手册实例版
SQL语言查询基础:连接查询 联合查询 代码
SQL SERVER的优化建议与方法
简单的SQL Server备份脚本代码
sql基本函数大全
SQL查询语句精华使用简要
数据库分页存储过程代码
SQL查询连续号码段的巧妙解法
sql server中千万数量级分页存储过程代码
sql2000各个版本区别总结
如何远程连接SQL Server数据库图文教程
一个SQL语句获得某人参与的帖子及在该帖得分总和
通用分页存储过程,源码共享,大家共同完善
SQL查找某一条记录的方法
使用 GUID 值来作为数据库行标识讲解
非常详细的SQL--JOIN之完全用法
收缩后对数据库的使用有影响吗?

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 71 ::
收藏到网摘: 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。