SQL SERVER 2008笔记

本文介绍了如何使用SQLServer的动态管理视图来分析索引的使用情况,包括用户操作统计,表视图和存储过程的修改记录,以及如何查询性能最差的CPU-bound查询。同时涵盖了登录名历史、IP地址获取和数据库管理的相关操作。
摘要由CSDN通过智能技术生成

索引分析 使用SQL Server提供的动态管理视图来分析索引的使用情况。

SELECT 
    OBJECT_NAME(i.object_id) AS TableName, -- 获取对象名称,即表名
    i.name AS IndexName, -- 获取索引名称
    user_seeks, -- 用户查找次数
    user_scans, -- 用户扫描次数
    user_lookups, -- 用户查找次数
    user_updates -- 用户更新次数
FROM 
    sys.dm_db_index_usage_stats ius -- 系统视图,用于获取索引使用情况统计信息
JOIN 
    sys.indexes i ON i.object_id = ius.object_id AND i.index_id = ius.index_id -- 连接索引信息
WHERE 
    OBJECT_NAME(i.object_id) = 'Orders'; -- 指定表名为 'Orders'

表视图函数存储过程修改记录查询

select * from sys.objects a where a.modify_date>='2023-12-01' order by a.modify_date desc

登录名历史记录

 SELECT S.SPID, S.LOGINAME, S.LOGIN_TIME, S.LAST_BATCH, C.CLIENT_NET_ADDRESS
 FROM sys.sysprocesses S, sys.dm_exec_connections C 
 WHERE S.spid = C.SESSION_ID;

sql获取本地IP,服务器IP

select distinct login_name 登录名 from sys.dm_exec_Sessions
select client_net_address '客户端IP'
,local_net_address '服务器的IP'
,* from sys.dm_exec_connections

SELECT 
 CONNECTIONPROPERTY('PROTOCOL_TYPE') AS PROTOCOL_TYPE
,CONNECTIONPROPERTY('CLIENT_NET_ADDRESS') AS '客户端IP'
,HOST_NAME() 计算机名称
,HOST_id()

SQL查找某个"关键字"在视图、函数、存储过程中存在
SELECT A.NAME,A.[TYPE],B.[DEFINITION] FROM SYS.ALL_OBJECTS A,SYS.SQL_MODULES B
WHERE A.IS_MS_SHIPPED=0 AND A.OBJECT_ID = B.OBJECT_ID AND A.[TYPE] IN ('P','V','AF')
AND B.[DEFINITION] LIKE '%HQMS%'
ORDER BY A.[NAME]

查询SQL Server根据CPU消耗列出前5个最差性能的查询
-- Worst performing CPU bound queries
SELECT TOP 5
st.text,
qp.query_plan,
qs.*
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.plan_handle) st
CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp
ORDER BY total_worker_time DESC


exec sp_databases; --查看数据库
exec sp_tables;        --查看表
exec sp_columns student;--查看列
exec sp_helpIndex student;--查看索引
exec sp_helpConstraint student;--约束
exec sp_stored_procedures;
exec sp_helptext 'sp_stored_procedures';--查看存储过程创建、定义语句
exec sp_rename student, stuInfo;--修改表、索引、列的名称
exec sp_renamedb myTempDB, myDB;--更改数据库名称
exec sp_defaultdb 'master', 'myDB';--更改登录名的默认数据库
exec sp_helpdb;--数据库帮助,查询数据库信息
exec sp_helpdb master
  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Vampire_if

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值