當前位置:首頁 > IT技術 > 數(shù)據(jù)庫 > 正文

mysql性能測試(SQL_CALC_FOUND_ROWS)
2021-10-15 15:08:32

環(huán)境:

mysql

引擎:innodb

?表結(jié)構:

mh_uid_user    兩個字段,username為索引

mh_user?      八個字段,username為索引

500W條數(shù)據(jù)時,insert一條數(shù)據(jù)的執(zhí)行時間是20ms+

根據(jù)主鍵或索引select一條數(shù)據(jù)差不多是1-10ms

全局select一條數(shù)據(jù)估計是3s!?。?/p>

?

第一條根據(jù)索引查,表結(jié)構簡單,兩個字段

第二三四條根據(jù)索引查,表結(jié)構稍微復雜,8個字段,

?

?

?

?

?

?

幾百萬數(shù)據(jù)的select基本在100ms以下,所以問題不大,如果是用like模糊查詢,就在2s左右,其中如果需要分頁,可以用SQL_CALC_FOUND_ROWS函數(shù)

為了獲取總記錄數(shù)200W數(shù)據(jù),下面是SQL_CALC_FOUND_ROWS函數(shù)和count(*)方法對比。

count(*)差不多2.4s

SQL_CALC_FOUND_ROWS差不多2s,

其中SQL_CALC_FOUND_ROWS方法的返回值是結(jié)果集,而記錄數(shù)用 SELECT FOUND_ROWS()返回(這個基本不花時間)

?轉(zhuǎn):https://www.cnblogs.com/alazalazalaz/p/4027516.html

本文摘自 :https://www.cnblogs.com/

開通會員,享受整站包年服務立即開通 >