Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Thống kê cơ sở dữ liệu cập nhật máy chủ SQL

Xin chào,

Thống kê các đối tượng cơ sở dữ liệu phải được cập nhật để đưa ra quyết định đúng đắn của trình tối ưu hóa SQL Server.

Nếu thống kê đối tượng cơ sở dữ liệu không được cập nhật thì trình tối ưu hóa cơ sở dữ liệu SQL Server sẽ đưa ra quyết định sai cho kế hoạch thực hiện giao dịch.

Bạn có thể cập nhật tất cả thống kê cơ sở dữ liệu bằng tập lệnh sau trong Phiên bản máy chủ SQL.

Bạn nên thực hiện truy vấn sau trong thời gian rảnh của cơ sở dữ liệu, chẳng hạn như buổi tối hoặc cuối tuần.

DECLARE @SQL VARCHAR(1000)  
DECLARE @DB sysname  

DECLARE curDB CURSOR FORWARD_ONLY STATIC FOR  
   SELECT [name]  
   FROM master..sysdatabases 
   WHERE [name] NOT IN ('model', 'tempdb') 
   ORDER BY [name] 
     
OPEN curDB  
FETCH NEXT FROM curDB INTO @DB  
WHILE @@FETCH_STATUS = 0  
   BEGIN  
       SELECT @SQL = 'USE [' + @DB +']' + CHAR(13) + 'EXEC sp_updatestats' + CHAR(13)  
       PRINT @SQL  
       FETCH NEXT FROM curDB INTO @DB  
   END  
    
CLOSE curDB  
DEALLOCATE curDB


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL được tối ưu hóa cho cấu trúc cây

  2. Tìm các ngày Thứ Hai giữa 2 ngày

  3. so sánh một cột với một danh sách các giá trị trong t-sql

  4. Cách tìm tất cả vi phạm ràng buộc trong cơ sở dữ liệu máy chủ SQL

  5. SQL Server 2012 gói dịch vụ 1 và bản cập nhật tích lũy 1