SQL Server DBA日常运维语句(下)

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介: 今天我们介绍一下,日常工作中的一些运维语句,可以当作工具直接来使用。

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、删除文件、删除文件组

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


--删除数据后,必须要清空文件的内容
DBCC SHRINKFILE(WC_FG8,EMPTYFILE)


--删除文件,同时也在文件系统底层删除了文件
ALTER DATABASE test
REMOVE FILE WC_FG8


7.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 testgo
select 'DBCC INDEXDEFRAG('+db_name()+','+o.name+','+i.name + ');'
       --,db_name(),
       --o.name,
       --i.name,
       --i.*
from sysindexes iinner join sysobjects o        
     on i.id = o.idwhere 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 =
ALLWITH ( 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';


请大家收藏以后备用~

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
2月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
3月前
|
SQL 运维 监控
SQL Server 运维常用sql语句(二)
SQL Server 运维常用sql语句(二)
35 3
|
3月前
|
SQL 缓存 运维
Sql Server日常运维看我这篇就够了!
Sql Server日常运维看我这篇就够了!
78 2
|
3月前
|
SQL XML 运维
SQL Server 运维常用sql语句(三)
SQL Server 运维常用sql语句(三)
25 1
|
4月前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
111 13
|
4月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
|
4月前
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
60 6
|
3月前
|
SQL 安全 Java
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
469 0
|
4月前
|
SQL 监控 数据库
SQL Server 查询超时问题排查
【7月更文挑战第8天】排查 SQL Server 查询超时涉及五个主要方面:检查复杂查询、评估服务器性能、审视配置参数、更新统计信息和分析执行计划。关注点包括查询的结构(如连接、子查询和索引),服务器资源(CPU、内存、网络延迟),连接和内存设置,以及统计信息的时效性。通过这些步骤可定位并解决性能瓶颈。
119 0
|
SQL 运维 监控
SQL Server自动化运维系列——监控性能指标脚本(Power Shell)
原文:SQL Server自动化运维系列——监控性能指标脚本(Power Shell) 需求描述 一般在生产环境中,有时候需要自动的检测指标值状态,如果发生异常,需要提前预警的,比如发邮件告知,本篇就介绍如果通过Power shell实现状态值监控 监控值范围 根据经验,作为DBA一般需要监控...
1549 0