Mysql
phpmyadmin 中的 TokuDB 數據庫大小未知
在 mysql 伺服器中,我安裝了 TokuDB 儲存引擎。我將數據庫引擎 InnoDB 轉換為 TokuDB,但我的表大小顯示
unknown
在 phpmyadmin 中。
一旦定義了 TokuDB 儲存引擎,它就會負責更新INFORMATION_SCHEMA數據庫。
你應該做的第一件事是測試 TokuDB 的 INFORMATION_SCHEMA 功能。
首先,在 mysql 客戶端提示符下執行此查詢:
SELECT IF(ISNULL(DB)+ISNULL(ENGINE)=2,'Database Total', CONCAT(DB,' ',IFNULL(ENGINE,'Total'))) "Reported Statistic", LPAD(CONCAT(FORMAT(DAT/POWER(1024,pw1),2),' ', SUBSTR(units,pw1*2+1,2)),17,' ') "Data Size", LPAD(CONCAT(FORMAT(NDX/POWER(1024,pw2),2),' ', SUBSTR(units,pw2*2+1,2)),17,' ') "Index Size", LPAD(CONCAT(FORMAT(TBL/POWER(1024,pw3),2),' ', SUBSTR(units,pw3*2+1,2)),17,' ') "Total Size" FROM ( SELECT DB,ENGINE,DAT,NDX,TBL, IF(px>4,4,px) pw1,IF(py>4,4,py) pw2,IF(pz>4,4,pz) pw3 FROM (SELECT *, FLOOR(LOG(IF(DAT=0,1,DAT))/LOG(1024)) px, FLOOR(LOG(IF(NDX=0,1,NDX))/LOG(1024)) py, FLOOR(LOG(IF(TBL=0,1,TBL))/LOG(1024)) pz FROM (SELECT DB,ENGINE, SUM(data_length) DAT, SUM(index_length) NDX, SUM(data_length+index_length) TBL FROM ( SELECT table_schema DB,ENGINE,data_length,index_length FROM information_schema.tables WHERE table_schema NOT IN ('information_schema','performance_schema','mysql') AND ENGINE IS NOT NULL ) AAA GROUP BY DB,ENGINE WITH ROLLUP ) AAA) AA) A,(SELECT ' BKBMBGBTB' units) B;
這將按每個數據庫的引擎使用情況對 MySQL 數據進行分組和匯總。
- 如果確實出現了 TokuDB 統計資訊,則升級 phpMyAdmin 的 MySQL 驅動程序。
- 如果 TokuDB 沒有任何問題,請嘗試獲取最新版本的 TokuDB 儲存引擎。如果您已經擁有最新版本的 TokuDB,請聯繫 Tokutek。
- 如果您已經擁有最新版本的 TokuDB 儲存和 phpMyAdmin 的最新 MySQL 驅動程序並且仍然可以獲取
unknown
,請使用 phpMyAdmin 送出錯誤報告。