如何檢視MySQL資料庫佔多大記憶體,佔用太多記憶體怎麼辦?

shangyun發表於2022-01-12

最近用的雲伺服器的資料庫似乎佔據了太多的記憶體,想知道檢視的方式和解決的方法,於是整理了相關資料。

先說下我的伺服器:小鳥雲香港高防節點,4核4g10m,送50g防禦,搭建小型網頁遊戲,訪問不多,資料庫用於儲存資料。

MySQL資料庫佔用作業系統記憶體,主要分為兩部分:

第一部分為:innodb儲存引擎佔用的buffer pool size,一部分為myism儲存引擎佔用的記憶體大小

第二部分為:MySQL資料庫應用會話佔用的記憶體大小

1.切換資料庫

use information_schema;

2.檢視資料庫使用大小

select concat(round(sum(data_length/1024/1024),2),’MB’) as data from tables where table_schema=’DB_Name’ ;

3.檢視錶使用大小

select concat(round(sum(data_length/1024/1024),2),’MB’) as data from tables where table_schema=’DB_Name’ an

d table_name=’Table_Name’;

具體情況簡單說明:

1、顯示資料庫

show databases;

2、選擇資料庫

use 資料庫名;

3、顯示資料庫中的表

show tables;

4、顯示資料表的結構

describe 表名;

5、顯示錶中記錄

select * from 表名;

6、建庫

create databse 庫名。

如果是啟動就佔用很多記憶體,可以檢查資料庫埠連線數:

netstat -nao —— Windows命令

netstat -natpl —- Linux 命令

最佳化my.ini資料庫伺服器引數,適當調整以下引數值。再重啟試試看記憶體佔用是否減少了。

performance_schema_max_table_instances=11000

table_definition_cache=10000

max_connections=1500

可以去他們的文件看看

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69990023/viewspace-2851816/,如需轉載,請註明出處,否則將追究法律責任。

相關文章