① sql Server只读/正在恢复问题怎么解决
5步解决SQL Server只读/正在恢复问题
1.首先,启动"任务管理器",杀掉SQL Server进程,或者停掉SQL Server服务。
2.将数据库文件拷贝一份(保险起见,备份),当然你也可以剪切到指定的文件。
3.将原来的出错的数据库文件(只读/正在恢复)删除。
4.重新启动SQL Server服务,打开Express,数据库会变为【只读】。
5.删除掉【只读】数据库,重新附加之前备份的数据库文件。
② sql2005备份数据库怎么恢复
数据库数据恢复步骤
1、通过日志恢复SQLSERVER2005数据(也可通过LogExplorer工具查找进行恢复数据)
(A)......通过日志和时间点来恢复数据的前提条件:数据库的故障恢复改为非简单模式,去掉自动关闭和自动收缩两个选项,如果是简单模式:类似下面的语句操作数据就不会记录到日志中:select*intotfrom[表名].【采用LogExplorer工具可以在线操作,通过恢复日志(指定时间点恢复)来恢复数据,必须停止数据库或者再另一个数据库恢复(前提是必须有一个完全备份和日志备份)】
这时为保证数据的完整要将数据库的恢复模式改成“完整.
1.1、这时对数据库事务日志做备份(注意,如果没做个数据库完整备份,是不能做事务日志备份的)
这时新建一个数据库zp(将以前的数据库改名),恢复数据库
这时我们看到,有两个还原的数据库备份,因为我对zp数据库备份了两次,两次的备份的数据文件都一样。这里我们选择最近时间的备份默认在数据库的设置如下:是追加到备份集里,所以会有两个备份。
同时,在”选项“里设置”不回滚“事务,
注意:通过事务日志还原数据库,必须选择"不回滚"事务
确定后:出现下面情况:
这时发现,数据库一直是”正在还原“,这时还原数据库事务日志,
1.2、“常规”里选择时间,(刚删除的时间)
1.3、“选项”里将恢复状态设置为”回滚未提交“事务
确定后,查询数据库,发现数据回来了.
2、无日志的数据恢复
2.1.新建一个同名的数据库
2.2再停掉sqlserver(注意不要分离数据库)
2.3用原数据库的数据文件覆盖掉这个新建的数据库
2.4再重启sqlserver
2.5此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)
2.6完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.
USEMASTER
SP_CONFIGURE'ALLOWUPDATES',1RECONFIGUREWITHOVERRIDE
UPDATESYSDATABASESSETSTATUS=32768WHERENAME='数据库名'
sp_dboption'数据库名','singleuser','true'
DBCCCHECKDB('数据库名')
updatesysdatabasessetstatus=28wherename='数据库名'
sp_configure'allowupdates',0reconfigurewithoverride
sp_dboption'数据库名','singleuser','false'
③ 如何在SQL Server 2005中修复损坏的数据库
1. 在SQL Server Management Studio中随便创建一个数据库,例如:PVLink。
2. 停止SQL Server服务。
如果不停止此服务,刚才创建的PVLink数据库将即不能被拷贝,也不能被覆盖。
3. 把已经损坏的数据库的mdf文件拷贝并覆盖刚才新建的数据库产生的mdf文件。
4. 启动SQL Server服务。
此时可以看见刚才创建的PVLink数据库名字后面没有加号,无法察看其任何信息,其实目前它已经处于无法使用的状态。
5. 把数据库设置为紧急状态。
通过在“查询分析器”中执行:alter database PVLink set EMERGENCY 可以将数据库设置为紧急亮搜状态,此时数据库PVLink的图标改变成粉红色并出现“紧急”字样。
6. 将数据库设置为单用户模式。
如果不设置为单用户模式,我们告团将无法使用带有效repair选项的DBCC CHECKDB来检查/修复数据库,SQL Server 2005设置单用户模式比SQL Server 2000容易,只要在“查询分析器”中执行:
use master
go
sp_dboption 'PVLink',single,true
即可。
7. 修复数据库
修复数据库主要使用DBCC来*作,一般来讲,我们可以使用以下三个选项来修复:
REPAIR_ALLOW_ DATA_LOSS
尝试修复报告的所有错误。这些修复可能会导致一些数据丢失。
REPAIR_FAST
仅为保持向后兼容性而保留。
REPAIR_REBUILD
执行由 REPAIR_FAST 执行的所有修复,包括需要较长时间的修复(如重建索引)。执行这些修复时不会有丢失数据的危险。
一般我们通过执行:DBCC CHECKDB('PVLink',REPAIR_REBUILD) 即可完成修复工作,此时 SQL Server 2005会给出很多提示,因为这个过程可能会导致一些数据库设计或者数据的丢失,并且在这个过程中,会产生新的以ldf为扩展名的数据库日志文件。
8. 完成以上的步骤后,一般情况下数据库应该可用了,如果数据库此时仍然是紧急状态,可以通过:alter database PVLink set ONLINE ,把数据库变成在线状态。
以上敬友历介绍的方法对于通过“附加”的方法无法恢复受到比较严重损坏的数据库比较有效,总的来看,SQL Server 2005给数据库管理和开发提供了更加有效实用的工具和方法。
④ SQL SERVER 2005 数据库名后显示(正在恢复/只读),不能使用而且无法删除。只是这一个数据库是这种情况,
数据库名后显示(正在恢复/只读)。 表示 当前库正在恢复中。或者是只读的。 确定你的数据库在你的主机中,再有可以试着修改它的状态。
⑤ sql 2005,镜像 已断开连接/正在恢复,我现在想要删除这个镜像,然后再从新做一个镜像,但是就是删除不了。
看镜像是否被虚拟光驱装载着,如果是先卸装再删除
⑥ 如何在SQL Server 2005中修复损坏的数据库
sql2005数据库修复方法如下:
1、停止数据陆橡库服务。
2、将需要恢复的数据库文件复制到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
5、新建同名的数据库(数据库文件名也要相同)。
6、停止数据库磨悉差服务。
7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。
8、启动数据库服务。
9、运行alter database dbname set emergency,将数据库设置瞎皮为emergency mode
10、运行下面的命令就可以恢复数据库:Titleuse masterdeclare @databasename varchar(255)
set @databasename='要恢复的数据库名称'
⑦ sql数据库提示正在恢复怎么处理
重新恢复一下,并加上参数: restore database 数据库名 from disk='c:/a.bak' with RECOVERY 当前的提示“正在装载”是因为你恢复的时候使用了 with NORECOVERY 选项。
⑧ sqlserver2012数据库提示正在还原和停止(sql2008数据库显示正在恢复)
输入用户名和密码,先登顷扮录数据脊凳库
找到无法还原的数据库,右键-属性
数据库属性页面,点击左侧的‘选项’
点开状态,找到限制访问雀野灶,修改选择值,把原来的multi_user,改成single_user,点击确定,保存修改
修改保存后,刷新数据库列表,可以看到该数据库后面已经显示‘单个用户’
这个时候,在重新还原数据库,应该就可以成功了