首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server DBA 必備:常用管理與監控 T-SQL 指令速查表 (1)

     編輯:關於SqlServer

整理 SQL Server 日常管理、監控、疑難排查最常用的系統預存程序與 T-SQL 查詢,供 DBA 與開發人員快速參考。

1. 版本與環境資訊

-- 版本詳細資訊
SELECT @@VERSION;

-- 作業系統層級資訊
EXEC master..xp_msver;

-- 伺服器啟動參數
EXEC sp_configure;  -- 或 SELECT * FROM sys.configurations;

-- 伺服器啟動時間
SELECT CONVERT(VARCHAR(30), login_time, 120) 
FROM master..sysprocesses WHERE spid = 1;

-- 伺服器名稱與實例名
PRINT 'Server Name: ' + CONVERT(VARCHAR(30), @@SERVERNAME);
PRINT 'Instance: ' + CONVERT(VARCHAR(30), @@SERVICENAME);

2. 資料庫層級資訊

-- 所有資料庫名稱、大小、狀態
EXEC sp_helpdb;

-- 重新命名資料庫
EXEC sp_renamedb 'old_name', 'new_name';

-- 查看特定資料庫物件大小
EXEC sp_spaceused 'TableName';  -- 或 sp_spaceused @objname = 'TableName'

-- 查看前 N 大資料表(預設 50)
EXEC sp_toptables;  -- 非標準,建議改用 sys.dm_db_partition_stats 查詢

3. 使用者與權限

-- 所有登入帳號資訊
EXEC sp_helplogins;

-- 伺服器角色成員
EXEC sp_helpsrvrolemember;

-- 修復遷移後的孤立使用者
EXEC sp_change_users_login 'Auto_Fix', 'username';

-- 變更物件擁有者
EXEC sp_changeobjectowner 'Schema.Table', 'NewOwner';

4. 連結伺服器與遠端登入

-- 檢視連結伺服器登入對應
EXEC sp_helplinkedsrvlogin;

-- 檢視遠端登入
EXEC sp_helpremotelogin;

5. 索引與條件約束

-- 物件索引資訊
EXEC sp_helpindex 'TableName';

-- 詳細索引資訊(非標準,部分版本支援)
EXEC SP_NChelpindex 'TableName';

-- 物件條件約束資訊
EXEC sp_helpconstraint 'TableName';

6. 預存程序與函數

-- 列出所有預存程序與函數
USE YourDatabase;
EXEC sp_stored_procedures;

-- 檢視原始碼
EXEC sp_helptext 'ProcedureName';

-- 搜尋包含特定字串的物件
SELECT DISTINCT OBJECT_NAME(id) 
FROM syscomments 
WHERE TEXT LIKE '%SearchString%';

-- 建立加密預存程序
CREATE PROC EncryptedProc WITH ENCRYPTION AS SELECT 1;

-- 解密(需第三方工具或 sp_decrypt 非官方)

小結

掌握這些指令可大幅提升日常巡檢、異常排查與變更作業效率。下集將介紹程序監控、鎖死鎖分析、效能分析、資料庫修復與維護指令。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved