|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。办理|数据|数据库|置疑在MSSQLSERVER中一向有如许的成绩,SQLSERVER的形态"置疑",我们先来剖析一下SQLSERVER数据库"置疑"的缘故原由:
1.毛病的删除日记;
2.硬件(HD)破坏,形成日记和数据文件写毛病;
3.硬盘的空间不敷,好比日记文件过年夜;
办理举措:
这是最复杂的举措是无数据库的全备份,然后恢复便可.
步骤:
1.删除原始的数据库:
USEMASTER
GO
DROPDATABASEDB_SUEPECT
2.创建同名的数据库:
USEmaster
GO
CREATEDATABASEDB_SUSPECT
ON
(NAME=DBNAME_DAT,
FILENAME=C:,
SIZE=10,
FILEGROWTH=5)
LOGON
(NAME=DBNAME_LOG,
FILENAME=g:,
SIZE=5MB,
FILEGROWTH=5MB)
GO
3.恢单数据库:
RESTOREDATABASEDB_SUSPECT
FROMDBNAME_BACKUP.DAT
4.数据库完全性检测:
DBCCCHECKDB(DB_SUSPECT)
5.从头启动MSSQLSERVER服务.
假如没有全备份,那就要用一些特别的办法:
1.设置数据库为告急形式
UseMaster
GO
sp_configureallowupdates,1
reconfigurewithoverride
GO
UPDATEsysdatabasesSETstatus=32768wherename=DB_SUSPECT
GO
2.停失落SQLServer服务:
NETSTOPMSSQLSERVER
3.把原始数据库的数据文件DBNAME_DAT.MDF,DBNAME_LOG.LDF移走:
4.启动SQLServer服务:
NETSTARTMSSQLSERVER
5.从头创建一个同名的数据库DB_SUSPECT;
USEmaster
GO
CREATEDATABASEDB_SUSPECT
ON
(NAME=DBNAME_DAT,
FILENAME=C:,
SIZE=10,
FILEGROWTH=5)
LOGON
(NAME=DBNAME_LOG,
FILENAME=g:,
SIZE=5MB,
FILEGROWTH=5MB)
GO
6.设置数据库运转在单用户的形式:
USEMASTER
GO
ALTERDATABASEDB_SUSPECTSETSINGLE_USER
GO
7.停失落SQL服务:
NETSTOPMSSQLSERVER
8.把本来的数据文件再掩盖返来:
9.启动SQLServer服务:
NETSTARTMSSQLSERVER
10.从头设置SQLSERVER的形态:
USEMASTER
GO
EXECsp_resetstatus"DB_SUSPECT"
11.数据库完全性检测:
DBCCCHECKDB(DB_SUSPECT)
12.恢单数据库为多用户形式:
USEMASTER
GO
ALTERDATABASEDB_SUSPECTSETMULTI_USER
GO
13.恢复SQLSERVER原始的设置:
USEMATER
GO
UPDATEsysdatabasesSETstatus=4194320wherename=DB_SUSPECT
GO
14.设置SQLSERVER不同意更新体系表:
USEMASTER
GO
sp_configureallowupdates,0
reconfigurewithoverride
GO
15.从头启动MSSQLSERVER服务:
最好从头启动操纵体系
16.备份数据库:
能够经由过程SQLSERVER企业办理器或T-SQL.必要备份MASTER和DB_SUSPECT
增补一点,假如用DOMAINUSER时,要注重对.MDF.LDF的地点目次的权限.
Zach的灵验剧本Zach说他每次碰到这类数据库置疑情形,就运转上面这个剧本,屡试不爽:======================================================--beforerunninganyscript,runthefollowingtosetthemasterdatabasetoallowupdatesUSEmasterGOsp_configureallowupdates,1GORECONFIGUREWITHOVERRIDEGO--RunthefollowingscriptUPDATEmaster..sysdatabasesSETstatus=status^256WHEREname=Database_Name--RunthefollowingscriptexecSP_resetstatusDatabase_Name--stopandstarttheMSDTCatthisstage--Aftertheprocedureiscreated,immediatelydisableupdatestothesystemtables:execsp_configureallowupdates,0GORECONFIGUREWITHOVERRIDEGO=====================================
使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。比如在主库误删一张表,或者一个update语句没有指定where条件,导致全表被更新。 |
|