mysql 資料庫效能檢視以及一些SQL

2021-09-02 13:38:55 字數 2063 閱讀 1534

主要方法: 

show status , show profile ,檢查慢查詢日誌 

# 檢測執行的sql,具體那個位置比較慢 

select * from phone_sts

#資料庫版本

select  version();

#查詢sql對資源的占用情況 

show profiles ; 

#查詢當前sql執行過程中的時間消耗 

show profile ;

show profile  block io,cpu for  query 31969

#檢查profiling是否開啟

show variables like '%pro%';  

#開啟set profiling=1;  

show profiles;  

#c查詢各個表占用大小

select   

table_schema as 'db name',  

round( sum( data_length + index_length ) / 1024 / 1024, 3 ) as 'db size (mb)',  

round( sum( data_free ) / 1024 / 1024, 3 ) as 'free space (mb)'  

from information_schema.tables  

group by table_schema ;  

show databases;    

use information_schema;   

show tables;  

# 表超過1000行的

select concat(table_schema,'.',table_name) as table_name,table_rows   

from information_schema.tables 

where table_rows > 1000  

order by table_rows desc;   

# 最大的10個表

select concat(table_schema,'.',table_name) table_name,   

concat(round(data_length/(1024*1024),2),'m') data_length   

from information_schema.tables   

order by data_length desc limit 10; 

# 查詢乙個sql語句的時間消耗在**

set @query_id=1 ; 

select state,sum(duration)  as total_r,

round(

100*sum(duration)/

(select  sum(duration)

from information_schema.profiling

where query_id=@query_id

),2) as calls , 

sum(duration )/count(*) as "r/call"

from information_schema.profiling

where query_id=@query_id

group by state 

order by total_r desc ; 

# 查詢乙個sql語句的時間消耗在**

set @query_id=31969 ; 

select state,sum(duration)  as total_r,

round(

100*sum(duration)/

(select  sum(duration)

from information_schema.profiling

),2) as calls , 

sum(duration )/count(*) as "r/call"

from information_schema.profiling

group by state 

order by total_r desc ; 

mysql資料庫效能資料 MYSQL資料庫效能優化

1.選取最適用的字段屬性 表中字段的寬度設得盡可能小 char 的上限為 255 位元組 固定占用空間 varchar 的上限 65535 位元組 實際占用空間 text 的上限為 65535。盡量把字段設定為 not null,執行查詢的時候,資料庫不用去比較 null 值。2.使用連線 join...

mysql檢視 MySQL檢視當前資料庫庫

mysql檢視當前資料庫庫 1 在mysql下檢視當前使用的是哪個資料庫,有三種方式 用select database 語句 mysql select database database test row in set 0.00 sec 從查詢結果中可以看出,當前用的是test資料庫 2 用show...

mysql 檢視資料庫及表大小以及資料庫擴容評估

1.檢視資料庫資料儲存的位置 2.檢視資料庫大小 2.1information shema 每個資料庫都有乙個原資料庫,記錄和儲存了當前 mysql 所有資料庫及表的儲存資訊,包含列,索引,大小,字段等等 information schema中的表主要有 schemata表 這個表裡面主要是儲存在m...