SQL数据库修复的问题一定要用达思SQL数据库修复软件,是全球最棒的SQL数据库修复软件了。而且在数据库修复过程中遇到任何问题,还有数据库修复专家指导。此外,达思数据库修复软件还支持最新的SQL2008,最新更新的13版本支持碎片重组功能,即使数据库被覆盖了,也有比较好的解决方案。
找这个软件不难,在百度或谷歌搜索“达思数据库修复软件”即可!
第一步:复制modelmdf、mastlogldf、modelmdf、modellogldf、msdbdatamdf、msdblogldf文件。
从X:\Program Files\Microsoft SQL Server\MSSQL10MSSQLSERVER\MSSQL\Binn\Templates
至X:\Program Files\Microsoft SQL Server\MSSQL10MSSQLSERVER\MSSQL\DATA
注:以上“X:\Program Files\Microsoft SQL Server”为SQL Server的安装目录。以下的“C:\Program Files\Microsoft SQL Server”为系统盘下的目录
第二步:定位并执行安装命令
1 首先找到安装命令:C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Release\setupexe
2 执行命令
可以通过日志来恢复。
具体方法如下:
当数据库的主数据MDF文件完好无损时,在丢失了LDF文件的情况下,如何利用MDF文件恢复数据库?我们把的日志文件分为两类:一类是无活动事务的日志,另一类是含活动事务的日志,根据不同的日志,采取不同的方法来恢复数据库。
1无活动事务的日志恢复
无活动事务的日志丢失时,我们很容易利用MDF文件直接恢复数据库,具体方法如下:
①分离被质疑的数据库,可用企业管理器中的"分离",或者用存储过程sp_detach_db分离数据库;
②利用MDF文件附加数据库生成新的日志文件,可用企业管理器中的"附加数据库"的工具,或者用存储过程sp_attach_single_file_db附加数据库。
如果数据库的日志文件中含有活动事务,利用此方法就不能恢复数据库。
2含活动事务的日志恢复
含有活动事务的日志丢失时,利用上述方法就会出现"数据库和日志文件不符合,不能附加数据库"。对于这种情况下,我们采用如下方法:
①新建同名数据库AAA,并设它为紧急模式
·停止服务器;
·把数据库主数据MDF文件移走;
·启SQLServer服务器,新建一个同名的数据库AAA;
·停止SQLServer服务器,把移走的MDF文件再覆盖回来;
·启动SQLServer服务器,把AAA设为紧急模式,不过默认情况下,系统表是不能随便修改的,必须首先设置一下使其能被修改,运行以下语句即可:
UseMaster
Go
sp_configure’allowupdates’,1
reconfigurewithoverride
Go
接着运行以下语句,把AAA数据库设为紧急模式,即把Sysdatabases表中AAA数据库的属性设为’37268’,就表示把AAA数据库处于紧急模式。
如果没有报告什么错误,就可以进行以下 *** 作。
②设置数据库AAA为单用户模式,并检查数据库
·重启SQLServer服务器;
·把数据库AAA设为单用户模式
·运行以下语句,检查数据库AAA
如果没有什么大的问题就可以把数据库的状态改回去。
③还原数据库的状态
运行以下语句,就可以把数据库的状态还原:
updatesysdatabasessetstatus=28wherename=’AAA’
sp_configure’allowupdates’,0
reconfigurewithoverride
Go
如果没有什么大的问题,刷新一下数据库,数据库AAA又会出现在你面前,但目前恢复工作还没有做完,此时的数据库仍不能工作,还要进行下面的处理,才能真正恢复。
④利用DTS的导入导出向导,把数据库AAA导入到一个新建数据库BBB中
·新建一个数据库BBB;
·右击BBB,选择IMPORT功能,打开导入向导;
·目标源选择"在SQLServer数据库之间复制对象和数据库",这样可以把表结构,数据视图和存储过程导入到BBB中
·再用此功能把BBB库替换成原来的AAA库即可。
到此为止,数据库AAA就完全恢复。
请输入你的答案
数据库926错误解决方案在做任何 *** 作前首先备份数据库的数据文件和日志文件!以及最新的备份文件!第一种解决方法:先删除报错数据库,再新建一同名数据库,然后暂停Service
manager(及sql
server
服务)
,删除库文件和日志文件再启动Service
manager
,使用单数据文件恢复数据库命令恢复数据库。例:打开sql
server/tools/sql
server
query
analyzer
执行下面 *** 作
EXEC
sp_attach_single_file_db
@dbname
=
'pubs',
@physname
=
'c:\mssql7\data\pubsmdf'
说明:‘pubs’为要恢复的数据库名称,‘c:\mssql7\data\pubsmdf’为要恢复的数据库的库文件的具体路径和文件名称。再重新启动一下service
manager
,看能否正常打开处理后的数据库;如果不可以再使用第二种方案。第二种解决方法:打开sql
server/tools/sql
server
query
analyzer
执行下面 *** 作
USE
MASTER
GO
sp_configure
'allow
update',1
RECONFIGURE
WITH
OVERRIDE
GO
UPDATE
sysdatabases
set
status
=
32768
WHERE
name
=
'db_pos363'
GO
sp_configure
'allow
update',0
RECONFIGURE
WITH
OVERRIDE
GO
说明:'db_pos363'是要修复的数据库名称。执行完毕再重启一下Service
manager打开数据库看是否处于紧急状态!再从另一装有sql
2000的机器上连接报错的数据库,然后再在sql
2000的机器上新建一数据库,再使用sql
2000自带的数据库导入导出功能(在新建的数据库上单击右键/所有任务/数据导入、数据导出)从报错数据库导入数据到新建的数据库中!在导入选项中注意以下几项:
1,
导入方式选择分‘从源数据库复制表和视图’以及‘从sql
server数据库间复制对象和数据’。当选择从源数据库复制表和视图时一定要选择全部表!
2,
当选择‘从sql
server数据库间复制对象和数据’时,在‘导入导出向导’对话框中去除‘使用默认选项’的选中标志;再在打开‘选项’对话框,去除以下三项的选中标志。A,复制数据用户和数据库角色;B,复制sql
server
登陆;C,复制对象及权限。
3,
在使用‘从sql
server数据库间复制对象和数据’时,有时会出现单张表导入失败,这时有时会在导入结束时提示那几张表导入失败有时不提示,如果提示,就再使用‘从源数据库复制表和视图’并选中导入失败的表重新导入一遍;如果不提示就只能在一张张表打开查看了,发现空表后再使用‘从源数据库复制表和视图’导入需要导入的表!导入成功后再删除sql
server
70机器上处于紧急状态的数据库,再新建一个同名数据库,建好后再使用sql
2000的数据库导出功能导出到此数据库中,在导出过程中同样要注意导入时的注意事项!
以上就是关于SQL Server2005 页撕裂,如何解决全部的内容,包括:SQL Server2005 页撕裂,如何解决、怎么把数据库从可疑变为紧急再变为正常、update忘了加条件,急求恢复方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)