本文介绍如何查看RDS SQL Server中常用的系统视图及其查询方法,以便于日常管理和维护工作。
说明
阿里云提醒您:
如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
操作步骤
使用客户端连接实例。具体操作,请参见连接SQL Server实例。
依次执行如下SQL语句,查看系统参数配置。
USE [$DB_Name]; SELECT * FROM sys.configurations;
说明[$DB_Name]
为数据库名称。参数详细解释,请参见sys.configurations。系统显示类似如下:
依次执行如下SQL语句,查看数据库的文件相关信息。
USE [$DB_Name]; SELECT * FROM sys.sysfiles;
系统显示类似如下:
执行如下SQL语句,查看数据库文件大小。
SELECT name, CONVERT(float,size) * (8192.0/1024.0)/1024 AS Size_MB,* from [$DB_Name].dbo.sysfiles;
系统显示类似如下:
执行如下SQL语句,查看数据库文件的I/O统计信息。
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID('[$DB_Name]'), [$File_ID]);
说明[$File_ID]
为步骤4获取的fileid
。系统显示类似如下:
执行如下SQL语句,查看实例中所有未提交的事务及其执行的语句。
SELECT DB_NAME(dbid) AS DBNAME, (SELECT text FROM sys.dm_exec_sql_text(sql_handle)) AS SQLSTATEMENT FROM master..sysprocesses WHERE open_tran > 0
系统显示类似如下:
执行如下SQL语句,查看数据和索引的碎片。
DBCC SHOWCONTIG;
系统显示类似如下,显示指定表或者视图的数据以及索引的碎片情况。参数详细解释,请参见DBCC SHOWCONTIG。
执行如下SQL语句,查看数据库中的索引碎片。
SELECT * FROM sys.dm_db_index_physical_stats(DB_ID(N'[$DB_Name]'),NULL,NULL,NULL,DEFAULT);
系统显示类似如下:
执行如下SQL语句,查看近期执行的语句。
SELECT p.spid, p.status, p.hostname, p.loginame, p.cpu, r.start_time, r.command, p.program_name, text FROM sys.dm_exec_requests AS r, master.dbo.sysprocesses AS p CROSS APPLY sys.dm_exec_sql_text(p.sql_handle) WHERE p.status NOT IN ('sleeping', 'background') AND r.session_id = p.spid
系统显示类似如下:
文档内容是否对您有帮助?