zoukankan      html  css  js  c++  java
  • SQL Server DBA日常运维语句

    1、检查数据库完整性  

    dbcc checkdb(Portal)
    检查数据库完整性checkdb
    Portal的 DBCC 结果。
    Service Broker 消息 9675,状态 1: 已分析的消息类型: 14。
    Service Broker 消息 9676,状态 1: 已分析的服务约定: 6。
    Service Broker 消息 9667,状态 1: 已分析的服务: 3。
    Service Broker 消息 9668,状态 1: 已分析的服务队列: 3。
    Service Broker 消息 9669,状态 1: 已分析的会话端点: 0。
    Service Broker 消息 9674,状态 1: 已分析的会话组: 0。
    Service Broker 消息 9670,状态 1: 已分析的远程服务绑定: 0。
    Service Broker 消息 9605,状态 1: 已分析的会话优先级: 0。
    sys.sysrscols的 DBCC 结果。
    对象 'sys.sysrscols' 的 14 页中有 1286 行。
    sys.sysrowsets的 DBCC 结果。
    对象 'sys.sysrowsets' 的 2 页中有 206 行。
    sys.sysclones的 DBCC 结果。
    对象 'sys.sysclones' 的 0 页中有 0 行。
    sys.sysallocunits的 DBCC 结果。
    对象 'sys.sysallocunits' 的 3 页中有 228 行。
    sys.sysfiles1的 DBCC 结果。
    对象 'sys.sysfiles1' 的 1 页中有 2 行。
    sys.sysseobjvalues的 DBCC 结果。
    对象 'sys.sysseobjvalues' 的 0 页中有 0 行。
    sys.syspriorities的 DBCC 结果。
    对象 'sys.syspriorities' 的 0 页中有 0 行。
    sys.sysdbfrag的 DBCC 结果。
    对象 'sys.sysdbfrag' 的 0 页中有 0 行。
    sys.sysfgfrag的 DBCC 结果。
    对象 'sys.sysfgfrag' 的 1 页中有 0 行。
    sys.sysdbfiles的 DBCC 结果。
    对象 'sys.sysdbfiles' 的 1 页中有 2 行。
    sys.syspru的 DBCC 结果。
    对象 'sys.syspru' 的 0 页中有 0 行。
    sys.sysbrickfiles的 DBCC 结果。
    对象 'sys.sysbrickfiles' 的 0 页中有 0 行。
    sys.sysphfg的 DBCC 结果。
    对象 'sys.sysphfg' 的 1 页中有 1 行。
    sys.sysprufiles的 DBCC 结果。
    对象 'sys.sysprufiles' 的 1 页中有 2 行。
    sys.sysftinds的 DBCC 结果。
    对象 'sys.sysftinds' 的 0 页中有 0 行。
    sys.sysowners的 DBCC 结果。
    对象 'sys.sysowners' 的 1 页中有 14 行。
    sys.sysdbreg的 DBCC 结果。
    对象 'sys.sysdbreg' 的 0 页中有 0 行。
    sys.sysprivs的 DBCC 结果。
    对象 'sys.sysprivs' 的 1 页中有 170 行。
    sys.sysschobjs的 DBCC 结果。
    对象 'sys.sysschobjs' 的 33 页中有 2296 行。
    sys.syscolpars的 DBCC 结果。
    对象 'sys.syscolpars' 的 17 页中有 1047 行。
    sys.sysxlgns的 DBCC 结果。
    对象 'sys.sysxlgns' 的 0 页中有 0 行。
    sys.sysxsrvs的 DBCC 结果。
    对象 'sys.sysxsrvs' 的 0 页中有 0 行。
    sys.sysnsobjs的 DBCC 结果。
    对象 'sys.sysnsobjs' 的 1 页中有 1 行。
    sys.sysusermsgs的 DBCC 结果。
    对象 'sys.sysusermsgs' 的 0 页中有 0 行。
    sys.syscerts的 DBCC 结果。
    对象 'sys.syscerts' 的 0 页中有 0 行。
    sys.sysrmtlgns的 DBCC 结果。
    对象 'sys.sysrmtlgns' 的 0 页中有 0 行。
    sys.syslnklgns的 DBCC 结果。
    对象 'sys.syslnklgns' 的 0 页中有 0 行。
    sys.sysxprops的 DBCC 结果。
    对象 'sys.sysxprops' 的 1 页中有 29 行。
    sys.sysscalartypes的 DBCC 结果。
    对象 'sys.sysscalartypes' 的 1 页中有 34 行。
    sys.systypedsubobjs的 DBCC 结果。
    对象 'sys.systypedsubobjs' 的 0 页中有 0 行。
    sys.sysidxstats的 DBCC 结果。
    对象 'sys.sysidxstats' 的 7 页中有 382 行。
    sys.sysiscols的 DBCC 结果。
    对象 'sys.sysiscols' 的 4 页中有 565 行。
    sys.sysendpts的 DBCC 结果。
    对象 'sys.sysendpts' 的 0 页中有 0 行。
    sys.syswebmethods的 DBCC 结果。
    对象 'sys.syswebmethods' 的 0 页中有 0 行。
    sys.sysbinobjs的 DBCC 结果。
    对象 'sys.sysbinobjs' 的 1 页中有 23 行。
    sys.sysaudacts的 DBCC 结果。
    对象 'sys.sysaudacts' 的 0 页中有 0 行。
    sys.sysobjvalues的 DBCC 结果。
    对象 'sys.sysobjvalues' 的 96 页中有 391 行。
    sys.syscscolsegments的 DBCC 结果。
    对象 'sys.syscscolsegments' 的 0 页中有 0 行。
    sys.syscsdictionaries的 DBCC 结果。
    对象 'sys.syscsdictionaries' 的 0 页中有 0 行。
    sys.sysclsobjs的 DBCC 结果。
    对象 'sys.sysclsobjs' 的 1 页中有 16 行。
    sys.sysrowsetrefs的 DBCC 结果。
    对象 'sys.sysrowsetrefs' 的 0 页中有 0 行。
    sys.sysremsvcbinds的 DBCC 结果。
    对象 'sys.sysremsvcbinds' 的 0 页中有 0 行。
    sys.sysxmitqueue的 DBCC 结果。
    对象 'sys.sysxmitqueue' 的 0 页中有 0 行。
    sys.sysrts的 DBCC 结果。
    对象 'sys.sysrts' 的 1 页中有 1 行。
    sys.sysconvgroup的 DBCC 结果。
    对象 'sys.sysconvgroup' 的 0 页中有 0 行。
    sys.sysdesend的 DBCC 结果。
    对象 'sys.sysdesend' 的 0 页中有 0 行。
    sys.sysdercv的 DBCC 结果。
    对象 'sys.sysdercv' 的 0 页中有 0 行。
    sys.syssingleobjrefs的 DBCC 结果。
    对象 'sys.syssingleobjrefs' 的 1 页中有 215 行。
    sys.sysmultiobjrefs的 DBCC 结果。
    对象 'sys.sysmultiobjrefs' 的 1 页中有 138 行。
    sys.sysguidrefs的 DBCC 结果。
    对象 'sys.sysguidrefs' 的 0 页中有 0 行。
    sys.sysfoqueues的 DBCC 结果。
    对象 'sys.sysfoqueues' 的 0 页中有 0 行。
    sys.syschildinsts的 DBCC 结果。
    对象 'sys.syschildinsts' 的 0 页中有 0 行。
    sys.syscompfragments的 DBCC 结果。
    对象 'sys.syscompfragments' 的 0 页中有 0 行。
    sys.sysftsemanticsdb的 DBCC 结果。
    对象 'sys.sysftsemanticsdb' 的 0 页中有 0 行。
    sys.sysftstops的 DBCC 结果。
    对象 'sys.sysftstops' 的 0 页中有 0 行。
    sys.sysftproperties的 DBCC 结果。
    对象 'sys.sysftproperties' 的 0 页中有 0 行。
    sys.sysxmitbody的 DBCC 结果。
    对象 'sys.sysxmitbody' 的 0 页中有 0 行。
    sys.sysfos的 DBCC 结果。
    对象 'sys.sysfos' 的 0 页中有 0 行。
    sys.sysqnames的 DBCC 结果。
    对象 'sys.sysqnames' 的 1 页中有 99 行。
    sys.sysxmlcomponent的 DBCC 结果。
    对象 'sys.sysxmlcomponent' 的 1 页中有 100 行。
    sys.sysxmlfacet的 DBCC 结果。
    对象 'sys.sysxmlfacet' 的 1 页中有 112 行。
    sys.sysxmlplacement的 DBCC 结果。
    对象 'sys.sysxmlplacement' 的 1 页中有 19 行。
    sys.sysobjkeycrypts的 DBCC 结果。
    对象 'sys.sysobjkeycrypts' 的 0 页中有 0 行。
    sys.sysasymkeys的 DBCC 结果。
    对象 'sys.sysasymkeys' 的 0 页中有 0 行。
    sys.syssqlguides的 DBCC 结果。
    对象 'sys.syssqlguides' 的 0 页中有 0 行。
    sys.sysbinsubobjs的 DBCC 结果。
    对象 'sys.sysbinsubobjs' 的 1 页中有 3 行。
    sys.syssoftobjrefs的 DBCC 结果。
    对象 'sys.syssoftobjrefs' 的 1 页中有 9 行。
    MH_DBLJ的 DBCC 结果。
    对象 'MH_DBLJ' 的 1 页中有 15 行。
    MH_DLLS的 DBCC 结果。
    对象 'MH_DLLS' 的 509 页中有 36399 行。
    MH_DLRZ的 DBCC 结果。
    对象 'MH_DLRZ' 的 8 页中有 127 行。
    MH_FGCD的 DBCC 结果。
    对象 'MH_FGCD' 的 1 页中有 141 行。
    MH_GJT的 DBCC 结果。
    对象 'MH_GJT' 的 0 页中有 0 行。
    MH_GJT_JS的 DBCC 结果。
    对象 'MH_GJT_JS' 的 9 页中有 110 行。
    MH_IDENTITY的 DBCC 结果。
    对象 'MH_IDENTITY' 的 1 页中有 12 行。
    MH_JSCD的 DBCC 结果。
    对象 'MH_JSCD' 的 27 页中有 3191 行。
    MH_JSFG的 DBCC 结果。
    对象 'MH_JSFG' 的 1 页中有 12 行。
    MH_KJFS的 DBCC 结果。
    对象 'MH_KJFS' 的 1 页中有 3 行。
    MH_KJFS_JS的 DBCC 结果。
    对象 'MH_KJFS_JS' 的 8 页中有 104 行。
    MH_LBWJ的 DBCC 结果。
    对象 'MH_LBWJ' 的 4 页中有 48 行。
    MH_MKCS的 DBCC 结果。
    对象 'MH_MKCS' 的 4 页中有 297 行。
    MH_MKLB的 DBCC 结果。
    对象 'MH_MKLB' 的 1 页中有 48 行。
    MH_RZXX的 DBCC 结果。
    对象 'MH_RZXX' 的 4 页中有 135 行。
    MH_XTCS的 DBCC 结果。
    对象 'MH_XTCS' 的 2 页中有 11 行。
    MH_XTJS的 DBCC 结果。
    对象 'MH_XTJS' 的 5 页中有 66 行。
    MH_XTMK的 DBCC 结果。
    对象 'MH_XTMK' 的 26 页中有 1618 行。
    MH_XTYH的 DBCC 结果。
    对象 'MH_XTYH' 的 8 页中有 406 行。
    MH_XXDY的 DBCC 结果。
    对象 'MH_XXDY' 的 0 页中有 0 行。
    MH_XXZL的 DBCC 结果。
    对象 'MH_XXZL' 的 0 页中有 0 行。
    MH_YHCD的 DBCC 结果。
    对象 'MH_YHCD' 的 1 页中有 1 行。
    MH_YHJS的 DBCC 结果。
    对象 'MH_YHJS' 的 6 页中有 574 行。
    MH_YXRZ的 DBCC 结果。
    对象 'MH_YXRZ' 的 13049 页中有 250639 行。
    MH_ZDHC的 DBCC 结果。
    对象 'MH_ZDHC' 的 1 页中有 70 行。
    MH_ZMBJ的 DBCC 结果。
    对象 'MH_ZMBJ' 的 5 页中有 326 行。
    MH_ZYDX的 DBCC 结果。
    对象 'MH_ZYDX' 的 1 页中有 143 行。
    MH_ZYXX的 DBCC 结果。
    对象 'MH_ZYXX' 的 1 页中有 12 行。
    ZZ_FINGER的 DBCC 结果。
    对象 'ZZ_FINGER' 的 0 页中有 0 行。
    GY_FBRZ的 DBCC 结果。
    对象 'GY_FBRZ' 的 0 页中有 0 行。
    MH_DYFF的 DBCC 结果。
    对象 'MH_DYFF' 的 0 页中有 0 行。
    MH_DYLB的 DBCC 结果。
    对象 'MH_DYLB' 的 1 页中有 11 行。
    MH_DYMX的 DBCC 结果。
    对象 'MH_DYMX' 的 0 页中有 0 行。
    MH_FBLB的 DBCC 结果。
    对象 'MH_FBLB' 的 1 页中有 11 行。
    BSOFT_TEST_CONNECT的 DBCC 结果。
    对象 'BSOFT_TEST_CONNECT' 的 1 页中有 1 行。
    pbcattbl的 DBCC 结果。
    对象 'pbcattbl' 的 0 页中有 0 行。
    pbcatcol的 DBCC 结果。
    对象 'pbcatcol' 的 0 页中有 0 行。
    pbcatfmt的 DBCC 结果。
    对象 'pbcatfmt' 的 1 页中有 20 行。
    pbcatvld的 DBCC 结果。
    对象 'pbcatvld' 的 0 页中有 0 行。
    pbcatedt的 DBCC 结果。
    对象 'pbcatedt' 的 1 页中有 21 行。
    TMP_IMAGE_KEY1的 DBCC 结果。
    对象 'TMP_IMAGE_KEY1' 的 1 页中有 13 行。
    sysdiagrams的 DBCC 结果。
    对象 'sysdiagrams' 的 0 页中有 0 行。
    sys.filestream_tombstone_1893581784的 DBCC 结果。
    对象 'sys.filestream_tombstone_1893581784' 的 0 页中有 0 行。
    sys.syscommittab的 DBCC 结果。
    对象 'sys.syscommittab' 的 0 页中有 0 行。
    sys.filetable_updates_1925581898的 DBCC 结果。
    对象 'sys.filetable_updates_1925581898' 的 0 页中有 0 行。
    sys.queue_messages_1977058079的 DBCC 结果。
    对象 'sys.queue_messages_1977058079' 的 0 页中有 0 行。
    sys.queue_messages_2009058193的 DBCC 结果。
    对象 'sys.queue_messages_2009058193' 的 0 页中有 0 行。
    sys.queue_messages_2041058307的 DBCC 结果。
    对象 'sys.queue_messages_2041058307' 的 0 页中有 0 行。
    HX_NUMIDENTI的 DBCC 结果。
    对象 'HX_NUMIDENTI' 的 0 页中有 0 行。
    MH_AUTORUN的 DBCC 结果。
    对象 'MH_AUTORUN' 的 1 页中有 2 行。
    MH_CWRZ的 DBCC 结果。
    对象 'MH_CWRZ' 的 194 页中有 9159 行。
    CHECKDB 在数据库 'Portal' 中发现 0 个分配错误和 0 个一致性错误。
    DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
    消息或结果:
    dbcc checkdb(Portal) with tablock
    tablock提高速度

    2、数据库重命名、修改恢复模式、修改用户模式

    --数据库重命名  
    ALTER DATABASE WC  
    MODIFY NAME = test 
    修改数据库名称
    --设置数据库为完整恢复模式
    alter database test
    set recovery full
    设置数据库为完整恢复模式
    --只允许一个用户访问数据库  
    alter database test  
    set single_user   
    with rollback after 10 seconds --指定多少秒后回滚事务  
    只允许一个用户访问数据库
    --只有sysadmin,dbcreator,db_owner角色的成员可以访问数据库  
    alter database wc  
    set restricted_user   
    with rollback immediate        --立即回滚事务  
    只有sysadmin,dbcreator,db_owner角色的成员可以访问数据库
    --多用户模式 
    alter database wc  
    set multi_user  
    with no_wait       --不等待立即改变,如不能立即完成,那么会导致执行错误 
    多用户模式

     3、扩展数据库:增加文件组、增加文件、修改文件大小、修改文件的逻辑名称 

    --添加文件组
    ALTER DATABASE test
    ADD FILEGROUP WC_FG8
    添加文件组
    --添加数据文件
    ALTER DATABASE test
    ADD FILE
    (
        NAME = WC_FG8,
        FILENAME = 'D:WC_FG8.ndf',
        SIZE = 1mb,
        MAXSIZE = 10mb,
        FILEGROWTH = 1mb
    )
    TO FILEGROUP WC_FG8
    添加数据文件
    --添加日志文件
    ALTER DATABASE test
    ADD LOG FILE
    (
        NAME = WC_LOG3,
        FILENAME = 'D:WC_FG3.LDF',
        SIZE = 1MB,
        MAXSIZE = 10MB,
        FILEGROWTH = 100KB
    )
     
    添加日志文件
    --修改数据文件的大小,增长大小,最大大小
    ALTER DATABASE test
    MODIFY FILE
    (
        NAME = 'WC_FG8',
        SIZE = 2MB,      --必须大于之前的大小,否则报错
        MAXSIZE= 8MB,
        FILEGROWTH = 10%
    )
    修改数据文件的大小,增长大小,最大大小
    --修改数据文件或日志文件的逻辑名称
    ALTER DATABASE test
    MODIFY FILE
    (
        NAME = WC_LOG3,
        NEWNAME = WC_FG33
    )
    修改数据文件或日志文件的逻辑名称

     4、移动文件  

    --由于在SQL Server中文件组、文件不能离线,所以必须把整个数据库设置为离线
    checkpoint
    go
     
    ALTER DATABASE WC
    SET OFFLINE
    go
    设置数据库为离线
    --修改文件名称
    ALTER DATABASE WC
    MODIFY FILE
    (
        NAME = WC_fg8,
        FILENAME = 'D:WCWC_FG8.NDF'
    )
    go
    修改文件名称
    --把原来的文件复制到新的位置:'D:WCWC_FG8.NDF'
    --设置数据库在线
    ALTER DATABASE WC
    SET ONLINE
    设置数据库为ONLINE

    5、设置默认文件组、只读文件组

    --设置默认文件组
    ALTER DATABASE WC
    MODIFY FILEGROUP WC_FG8 DEFAULT
    设置默认文件组
    --设为只读文件组
    --如果文件已经是某个属性,不能再次设置相同属性
    ALTER DATABASE WC
    MODIFY FILEGROUP WC_FG8 READ_WRITE
    设为只读文件组

    6、收缩数据库、收缩文件

    --收缩数据库  
    DBCC SHRINKDATABASE('test',    --要收缩的数据库名称或数据库ID  
                        10         --收缩后,数据库文件中空间空间占用的百分比  
                        )  
       
       
    DBCC SHRINKDATABASE('test',    --要收缩的数据库名称或数据库ID  
                        10,        --收缩后,数据库文件中空闲空间占用的百分比  
                        NOTRUNCATE --在收缩时,通过数据移动来腾出自由空间  
                        )  
                    
                           
    DBCC SHRINKDATABASE('test',      --要收缩的数据库名称或数据库ID  
                        10,          --收缩后,数据库文件中空间空间占用的百分比  
                        TRUNCATEONLY --在收缩时,只是把文件尾部的空闲空间释放  
                        )  
    收缩数据库
    --收缩文件  
    DBCC SHRINKFILE(wc_fg8,   --要收缩的数据文件逻辑名称  
                    7         --要收缩的目标大小,以MB为单位  
                    )  
                       
    DBCC SHRINKFILE(wc_fg8,   --要收缩的数据文件逻辑名称  
                    EMPTYFILE --清空文件,清空文件后,才可以删除文件  
                    )
    收缩文件

    7、删除文件、删除文件组

     1.要删除文件,必须要先把文件上的数据删除,或者移动到其他文件或文件组上

    --删除数据后,必须要清空文件的内容
    DBCC SHRINKFILE(WC_FG8,EMPTYFILE)
    清空文件的内容
    --删除文件,同时也在文件系统底层删除了文件
    ALTER DATABASE test
    REMOVE FILE WC_FG8
    删除文件

     2.要删除文件组,必须先删除所有文件

    --最后删除文件组
    ALTER DATABASE test
    REMOVE FILEGROUP WC_FG8
    删除文件组

     8、重新组织索引

    ALTER INDEX [idx_temp_lock_id] ON [dbo].[temp_lock] 
    REORGANIZE 
    WITH ( LOB_COMPACTION = ON )
    重新组织索引
    use test
    go
     
    select 'DBCC INDEXDEFRAG('+db_name()+','+o.name+','+i.name + ');'
            --,db_name(),
            --o.name,
            --i.name,
            --i.*
     
    from sysindexes i
    inner join sysobjects o
            on i.id = o.id
    where o.xtype = 'U'
          and i.indid >0
          and charindex('WA_Sys',i.name) = 0
     
    批量生成重组索引的语句

    9、重新生成索引

    ALTER INDEX [idx_temp_lock_id] ON [dbo].[temp_lock] 
    REBUILD PARTITION = ALL
    WITH ( PAD_INDEX  = OFF, 
           STATISTICS_NORECOMPUTE  = OFF, 
           ALLOW_ROW_LOCKS  = ON, 
           ALLOW_PAGE_LOCKS  = ON, 
           ONLINE = OFF, 
           SORT_IN_TEMPDB = OFF )
    重建索引

    10、更新统计信息

    --更新表中某个的统计信息  
    update statistics temp_lock(_WA_Sys_00000001_07020F21)  
       
       
    update statistics temp_lock(_WA_Sys_00000001_07020F21)  
    with sample 50 percent  
       
    
    update statistics temp_lock(_WA_Sys_00000001_07020F21)  
    with resample,    --使用最近的采样速率更新每个统计信息  
         norecompute  --查询优化器将完成此统计信息更新并禁用将来的更新 
    更新表中某个的统计信息
    --更新索引的统计信息  
    update statistics temp_lock(idx_temp_lock_id)  
    with fullscan   
    更新索引的统计信息
    --更新表的所有统计信息  
    update statistics txt  
    with all
    更新表的所有统计信息

    11、执行SQL Server代理作业

    exec msdb.dbo.sp_start_job 
        @job_name =N'job_update_sql';
    执行代理作业
  • 相关阅读:
    selenium+java利用AutoIT实现文件上传
    java+selenium自动化遇到confirm弹窗,出现NoAlertPresentException: no alert open
    Appium遇到问题:
    selenium2+java切换窗口
    nodejs
    连续12天的加班工作总结-根据客户选择来生成后续表单页面
    最近三家公司面试的总结吐槽及一点点总结
    nodeJs-autoMerge
    nodeJs-autoBulid
    Angular 学习笔记——ng-Resource1
  • 原文地址:https://www.cnblogs.com/HondaHsu/p/5955249.html
Copyright © 2011-2022 走看看