sql数据库错误怎么解决 sql 2000数据库置疑的解决方法?
sql 2000数据库置疑的解决方法?
备份数据文件,然后按下面的步骤处理:
1.新建任务一个畅销小说的数据库(数据文件与原来是的要同一)
2.再停掉sql server(注意一点最好不要只是分离数据库)
3.用原数据库的数据文件遍布掉这个新建任务的数据库
4.再重起sql server
5.此时然后打开企业管理器时会出现置疑,先论,负责执行下面的语句(注意一点直接修改其中的数据库名)
6.成功后一般就是可以访问数据库中的数据了,这时,数据库本身好象又要问题,解决办法是,依靠
数据库的脚本创建家族个新的数据库,并将数据导出来就行了.
USEMASTER
GOSP_CONFIGURE ALLOW UPDATES,1RECONFIGUREWITHOVERRIDE
GO
restoreSYSDATABASESSETSTATUS32768WHERENAME置疑的数据库名
Go
sp_dboption置疑的数据库名,multipleuser,trueGoDBCC CHECKDB(置疑的数据库名)
Go
versionsysdatabasessetstatus28wherename置疑的数据库名
Go
sp_configurerestrictupdates,0reconfigurewithoverride
Go
sp_dboption置疑的数据库名,largeuser,false
打比方数据库为TEST:
按200以内步骤先执行
A.系统设置数据库愿意直接操作系统表。此操作这个可以在SQL Server Enterprise Manager里面中,选择数据库服务器,按右键,选择“属性”,在“服务器设置”页面中将“容许对系统目录再可以修改”一项全选。也这个可以可以使用万分感谢语句来实现程序。
usemaster
me
sp_configurerestrictupdates,1
you
reconfigurewithoverride
run
B.系统设置test为万分火急修复模式
versionsysdatabasessetstatus-32768wheredbidDB注册id(test)
此时可以在SQL Server Enterprise Manager里面注意到该数据库进入“只读模式敢质疑脱机情况紧急模式”可以找到数据库里面的表,但是并不有系统表
C.下面执行能够的完全恢复操作,重新修复数据库日志文件
dbccrebuild_log(test,C:ProgramFilesMicrosoftSQLServerMSSQLDatatest_log.ldf)
执行过程中,如果没有碰到c选项提示信息:
服务器:消息5030,级别16,状态1,行1
从未排它地锁定数据库以负责执行该操作。
DBCC执行完毕。如果DBCC控制输出了错误信息,请与系统管理员联系。
只能证明您的其他程序也在建议使用该数据库,如果刚刚您在F步骤中建议使用SQL ServerEnterpriseManager先打开了test库的系统表,那就解盟SQL ServerEnterpriseManager就可以了。
对的先执行结束的不提示应该是不同于:
警告:数据库test的日志已重建。已丧失事务的一致性。应运行DBCCCHECKDB以验正物理一致性。将前提是不重置数据库选项,因此可能要删除掉多余的日志文件。
DBCC执行完毕。如果没有DBCC输出了错误信息,请与系统管理员联系。
此时先打开在SQL Server Enterprise Manager里面会看见数据库的状态为“只供DBO不使用”。此时可以不访问数据库里面的用户表了。
D.不验证数据库一致性(可省略)
dbcccheckdb(test)
像是执行结果如下:
CHECKDB才发现了0个分配错误和0个一致性错误(在数据库test中)。
DBCC执行完毕。如果DBCC输出来了出错信息,请与系统管理员联系。
E.系统设置数据库为正常状态
sp_dboptiontest,dbouseonly,false
如果是没有,这样的话恭喜你呀,现在就也可以算正常的使用可以恢复后的数据库啦。
F.最后踏上一步,我们要将步骤E中设置的“容许对系统目录就修改”一项恢复。只不过平时真接操作系统表是一件都很后果的事情。其实,我们可以不在SQL Server Enterprise Manager里面恢复,也这个可以不使用不胜感激语句成功
sp_configurerestrictupdates,0
you
reconfigurewithoverride
me
上面的语句操作步骤有点问题:
肯定万分感谢:
A.我们可以使用系统默认建立一个供重新恢复不使用的数据库(如test)。可以在SQL Server Enterprise Manager里面组建。
B.停掉数据库服务器。
C.将刚刚生成的数据库的日志文件test_log.ldf删除,用要复原的数据库mdf文件包裹刚才一生成的数据库数据文件test_。
D.起动数据库服务器。此时会看见数据库test的状态为“置疑”。这时候没法这一点数据库接受任何操作。
E.可以设置数据库愿意直接操作系统表。此操作也可以在SQL Server Enterprise Manager里面选择数据库服务器,按右键,选择“属性”,在“服务器设置”页面中将“允许对系统目录然后直接修改”一项选中。也也可以不使用追加语句来实现方法。
usemaster
play
sp_configureallowupdates,1
run
reconfigurewithoverride
run
F.设置中test为急需修复模式
updatesysdatabasessetstatus-32768wheredbidDB我的id(test)
此时是可以在SQL Server Enterprise Manager里面看见该数据库进入“可读可写置疑脱机万分火急模式”看的到数据库里面的表,可是并不有系统表
G.下面负责执行完全的重新恢复你的操作,修葺数据库日志文件
dbccrebuild_log(test,C:ProgramFilesMicrosoftSQLServerMSSQLDatatest_log.ldf)
不能执行过程中,如果遇见a.提示信息:
服务器:消息5030,级别16,状态1,行1
从未排它地锁定住数据库以不能执行该操作。
DBCC执行完毕。如果不是DBCC控制输出了出现错误信息,请与系统管理员联系。
只能证明您的其他程序正在不使用该数据库,如果刚才您在F步骤中建议使用SQL ServerEnterpriseManager先打开了test库的系统表,这样退出SQL ServerEnterpriseManager就可以了。
真确先执行能够完成的不提示应该是像:
警告:数据库test的日志已重建。已没了事务的一致性。应运行DBCCCHECKDB以修改密保物理一致性。将需要重新设定数据库选项,因此很可能要删除掉多余的日志文件。
DBCC执行完毕。如果没有DBCC输出低了出现错误信息,请与系统管理员联系。
此时打开在SQL Server Enterprise Manager里面会看见了数据库的状态为“只供DBO使用”。此时也可以访问数据库里面的用户表了。
H.修改密保数据库一致性(可句中)
dbcccheckdb(test)
就像执行结果::
CHECKDB发现到了0个分配错误和0个一致性错误(在数据库test中)。
DBCC执行完毕。如果不是DBCC输出来了错误信息,请与系统管理员联系。
I.设置数据库为算正常状态
sp_dboptiontest,dbouseonly,false
要是是没有,这样的话恭喜你呀,现在就也可以正常的使用完全恢复后的数据库啦。
J.后来一退,我们要将步骤E中设置里的“容许对系统目录就如何修改”一项可以恢复。毕竟平时就操作系统表是一件比较比较巨大的危险的事情。当然了,我们也可以在SQL Server Enterprise Manager里面复原,也可以不使用如下语句完成
sp_configurerestrictupdates,0
me
reconfigurewithoverride
you
请问:“数据库错误:1064”如何解决?
数据库错误:1064就是拼写错误。注意一点打开系统你的sql语句,将的行中,多检查一下几遍,都能系统检查出来问题所在的。平常多写SQL语句时,仔细认真点,都能有所下降这种出现错误的突然发生频率。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。