加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

MS SQLServer DBCC MAINTAIN

发布时间:2020-12-12 13:18:01 所属栏目:MsSql教程 来源:网络整理
导读:use Sfis GO --如果出现错误:未处理修复语句。数据库需处于单用户模式下。 --更改成单用户 USE master GO sp_dboption initSfis,single,true alter database initSfis set single_user with rollback immediate DBCC CHECKFILEGROUP(1) --{ 'filegroup' | f

use Sfis

GO


--如果出现错误:未处理修复语句。数据库需处于单用户模式下。

--更改成单用户

USE master

GO

sp_dboption initSfis,single,true

alter database initSfis set single_user with rollback immediate


DBCC CHECKFILEGROUP(1) --{ 'filegroup' | filegroup_id } 适用于文件组,分区表机制的数据库


DBCC CHECKDB('initSfis') --加上WITH TABLOCK 参数很快,但会阻塞

DBCC CHECKDB('initSfis',REPAIR_FAST) --快速修复?

--重建索引并修复?

DBCC CHECKALLOC('initSfis') --检查指定数据库的磁盘空间分配结构的一致性


--还原数据库为多用户模式 ?

alter database initSfis set multi_user with rollback immediate


dbcc checktable('dbo.t_productarrage')

dbcc checkdb('initSfis')


--检查表的特定索引

USE Sfis;

DECLARE @indid int;

SET @indid = (SELECT index_id?

? ? ? ? ? ? ? FROM sys.indexes

? ? ? ? ? ? ? WHERE object_id = OBJECT_ID('dbo.t_productarrage')

? ? ? ? ? ? ? ? ? ? AND name = 'IX_gd');

DBCC CHECKTABLE ("dbo.t_productarrage",@indid);


DBCC SHOWCONTIG('dbo.t_productarrage','pk_t_productarrage') --索引情况

DBCC SHOW_STATISTICS ('dbo.t_productarrage','pk_t_productarrage'); --统计情况 ?WITH HISTOGRAM;

UPDATE STATISTICS dbo.t_productarrage --更新统计


DBCC DBREINDEX('dbo.t_productarrage','IX_gd',80) --重建索引,填充因子为%80

DBCC INDEXDEFRAG('initSfis','dbo.t_productarrage','IX_gd') --索引碎片整理

ALTER INDEX IX_gd ON dbo.t_productarrage REBUILD --重建索引

ALTER INDEX IX_gd ON dbo.t_productarrage REORGANIZE --重组索引


DBCC FREEPROCCACHE WITH NO_INFOMSGS --缓存中删除所有元素

DBCC PROCCACHE --以表格格式显示有关过程缓存的信息

DBCC UPDATEUSAGE('initSfis','dbo.t_productarrage') --报告目录视图中的页数和行数错误并进行更正

DBCC LOG('initSfis') --查看数据库的事务日志信息


dbcc traceon(3604)

SP_HELPDB Sfis

dbcc page(Sfis,1,100,1) ? ?--查看Sfis数据库第1个文件中的100页


--修改数据库名字

sp_renamedb 'old_name','new_name'


--修改 Tempdb 路径,修改完成后,重启 SQL Server生效

sp_helpdb Tempdb /* (查看路径) */

ALTER DATABASE TEMPDB MODIFY FILE

(NAME='TEMPDEV',FILENAME='NEWPATHtempdb.mdf',SIZE=500MB)

(NAME='TEMPLOG',FILENAME='NEWPATHtemplog.ldf',SIZE=500MB)



--数据库快照

Create Database Data_snapshot_Credit

ON

( NAME = 'Credit',? ?--这里的名称必须为实际数据库名称,查出所对应的NAME名称(exec sp_helpdb 'Credit')

?Filename = N'D:Program FilesMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLDATACredit_snapshot.snap'

)

AS Snapshot of Credit

DROP DATABASE Data_snapshot_Credit ? ?--删除快照

RESTORE DATABASE Credit FROM Database_snapshot = 'Data_snapshot_Credit' ? ?--利用快照恢复数据库

GO




/*

?* 收缩数据库

?*?

*/

USE [Sfis_PrintBarcode]

SELECT * FROM sys.database_files

DBCC SHRINKDATABASE(N'Sfis_PrintBarcode' )

*/


USE [master]

ALTER DATABASE [Sfis_PrintBarcode] SET RECOVERY SIMPLE WITH NO_WAIT

DBCC SHRINKFILE (N'sfis',TRUNCATEONLY)

DBCC SHRINKFILE (N'sfis_log','Microsoft YaHei';">?* 恢复模式为完整

ALTER DATABASE [Sfis_PrintBarcode] SET RECOVERY FULL WITH NO_WAIT

GO

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读