打开sql数据库提示被使用

打开sql数据库提示被使用,第1张

其实这说起来还是满复杂的```你这要是看不懂的话``我看你就叫些专业人士来搞吧```你这问题我是按下面漫漫试,试好的

连接到 SQL Server 的实例时收到错误消息:“Cannot open user default database”(无法打开用户默认数据库

全文原因

用户默认数据库在连接时不可用。这可能是因为该数据库: • 处于可疑模式。

• 不再存在。

• 处于单用户模式,并且唯一可用的连接已由其他用户或事物使用。

• 已被分离。

• 已设置为 RESTRICTED_USER 状态。

• 处于脱机状态。

• 设置为紧急状态。

• 不具有映射到用户的登录帐户,或者该用户已被拒绝访问。

此外,该登录帐户可能是多个组的成员,且其中一个组的默认数据库在连接时不可用。

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。

SQL Server 2000 和 SQL Server 70

在 SQL Server 2000 和 SQL Server 70 中,可以使用 osql 实用程序更改默认数据库。为此,请按照下列步骤 *** 作: 1 在命令提示符处,键入以下内容,然后按 Enter:

C:\>osql -E

2 在“osql”提示符处,键入以下内容,然后按 Enter:

1>sp_defaultdb 'user's_login', 'master'

3 在第二个提示符处,键入以下内容,然后按 Enter:

2>go

更简单明了的:

无法打开用户默认数据库,登录失败,这也是SQL Server使用者熟悉的问题之一。在使用企业管理器、查询分析器、各类工具和应用软件的时候,只要关系到连接SQL Server数据库的时候,都有可能会碰到此问题,引起此错误发生的原因比较多,下面我们就来详细分析引起此问题的原因以及解决办法。

一、原因

登录帐户的默认数据库被删除。

二、解决方法:

(1)、使用管理员帐户修改此帐户的默认数据库

1、打开企业管理器,展开服务器组,然后展开服务器

2 展开"安全性",展开登录,右击相应的登录帐户,从d出的菜单中选择,属性

3、重新选择此登录帐户的默认数据库

(2)、若没有其他管理员登录帐户,无法在企业管理器里修改,使用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'"

注:上述isql命令可以直接在命令提示符下输入。

第二篇:

无法打开用户默认数据库 登录失败

无法打开用户默认数据库,登录失败,这也是SQL Server使用者熟悉的问题之一。在使用企业管理器、查询分析器、各类工具和应用软件的时候,只要关系到连接SQL Server数据库的时候,都有可能会碰到此问题,引起此错误发生的原因比较多,下面我们就来详细分析引起此问题的原因以及解决办法。

一、原因

登录帐户的默认数据库被删除。

二、解决方法:

(一)、使用管理员帐户修改此帐户的默认数据库

1、打开企业管理器,展开服务器组,然后展开服务器

2 展开"安全性",展开登录,右击相应的登录帐户,从d出的菜单中选择,属性

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'"

参考:微软中文知识库文章:如何解决 SQL Server 2000 中的连接问题

地址:>

网址1:>

网址2:>

另,附图两张。

以上希望能帮助到你。

以下几种情况下是不能分离数据库的

已复制并发布数据库。  如果进行复制,则数据库必须是未发布的。 必须通过运行 sp_replicationdboption 禁用发布后,才能分离数据库。

数据库中存在数据库快照。

必须首先删除所有数据库快照,然后才能分离数据库。  有关详细信息,请参阅删除数据库快照 (Transact-SQL)。

该数据库正在某个数据库镜像会话中进行镜像。

数据库处于可疑状态。  无法分离可疑数据库;必须将数据库设为紧急模式,才能对其进行分离。

数据库为系统数据库。

具体情况参阅以下链接:>

以前没有备份吗?

没有的话看看这个,或许对你有用。。。

SQL Server数据库备份有两种方式,一种是使用BACKUP DATABASE将数据库文件备份出去,另外一种就是直接拷贝数据库文件mdf和日志文件ldf的方式。下面将主要讨论一下后者的备份与恢复。本文假定您能熟练使用SQL Server Enterprise Manager(SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器)

1、正常的备份、SQL数据库恢复方式

正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。

卸下数据库的命令:Sp_detach_db 数据库名

连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db

s_attach_db [@dbname =] ′dbname′, [@filename1 =] ′filename_n′ [,16]

sp_attach_single_file_db [@dbname =] ′dbname′, [@physname =] ′physical_name′

使用此方法可以正确恢复SQL Sever70和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。

例子:

假设数据库为test,其数据文件为test_datamdf,日志文件为test_logldf。下面我们讨论一下如何备份、恢复该数据库。

卸下数据库:sp_detach_db 'test'

连接数据库:sp_attach_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_datamdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_logldf'

sp_attach_single_file_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_datamdf'

2、只有mdf文件的恢复技术

由于种种原因,我们如果当时仅仅备份了mdf文件,那么恢复起来就是一件很麻烦的事情了。(此文章由飞客数据恢复中心搜集>

实例就是一个名称

比如你安装好数据库默认的实例名称是:sql

server

(mssqlserver)

可以是主机名,也可以是ip地址,这样连接的是安装时的默认实例。

如果实例名不是默认的,比如:sql2

如果有其它的名称,可以使用

"\\主机名\sql2"或者"\\ip\\sql2"

一、Report Server数据库:

是一个SQL Server数据库。它能够存储SSRS配置部分,报告定义,报告元数据,报告历史,缓存政策,快照,资源,安全设置,加密的数据,调度和提交数据,以及扩展信息。

注意事项:尽管用户能够直接存取在SSRS目录下的数据库并且能够直接修改SSRS使用的对象;但在实践中,不推荐(或不支持)这样做,因为在SSRS目录下的内在数据和结构不能被保证与不同版本的SSRS、服务包或补丁相兼容。

需要把Report Server数据库当作产品数据库之一来对待。尽管许多开发人员都习惯把RDL存储在一个单独的仓库中,并因此导致经常恢复RDL。但是,损失快照数据能够带来消极的业务影响。

例如,用户可能使用快照的报告"相对静止"数据的能力来作一些业务决定。

二、ReportServerTempDB数据库:

是SSRS使用的临时数据库。这个数据库负责存储中间处理结果,例如报表服务器生成的会话和执行数据、缓存报表以及工作表。

正常情况下,Report Server能够周期性地清ReportServerTempDB中的到期的和孤立的数据。后台进程定期清理时间间隔由参数CleanupCycleMinutes控制,这个参数位于

<Installation Drive>\<Program Files or Program Files(x86)>\Microsoft SQL Server\<SSRS

Instance>\Reporting Services\ReportServer 下的rsreportserverconfig配置文件中。

在桌面双击“SQL Server 2008R2”的图标,点击进入它的管理界面,开始我们的附加之旅,如图所示~

来带“SQL Server 2008R2”的登陆验证界面,输入自己之前设定的用户名密码即可,一般是默认的用户名,直接选择登陆即可,如图所示~

验证登陆后的界面,在里面找到“数据库”菜单,右键这个选项,找到“附加数据库”,点击这个选项,如图所示~

来到“附加数据库”的界面,点击“添加”按钮,即可跳转到本地电脑里面的文件选择项,如图所示~

在自己的本地电脑里面找到刚刚需要附加的数据库文件,找到“mdf”文件,点击附加即可~

添加完毕自己的数据库后,点击”确定“即可,很简单的 *** 作步骤,如图所示~

如图所示,很简单地我们就附加到我们的数据库里面了。这步我们是在数据库附加没有问题的基础上,假如你的数据库有问题,那又另当别论了,需要找到对应的问题再去调整,请读者根据自己的实际情况来进行调整~

以上就是关于打开sql数据库提示被使用全部的内容,包括:打开sql数据库提示被使用、SQL 2008 可疑状态,数据库好像损坏了、sql数据库不能附加和分离怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9646119.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存