Mysql – thesql cluster with innodb utilizing high memory

innodblinuxMySQLmysql-clusterndbcluster

I have implemented MySQL cluster with two data, sql and management node respectively.
On one of the sql node I have ndb as well innodb engine for the huge tables which I can not able to convert into ndb-cluster engine. But after few days the sql node with innodb engine started eating large amount of physical memory it is increasing rapidly. Show processlist is not showing any running processes. I am clueless now where is MySQL consuming this RAM. I am worried if my server goes out of memory. One week ago I have uploaded 30GB of data but right now it is not used by any of the application. I have observed increase In ram usage goes 20% to 75% within a week after that data upload.

[mysqld]

ndbcluster
ndb-connectstring=192.168.0.105,192.168.0.109   # IP address of Management
ndb-cluster-connection-pool=2

[mysql_cluster]

ndb-connectstring=192.168.0.105,192.168.0.109   # IP address of Management Node

[mysqld]

ndbcluster
ndb-connectstring=192.168.0.105,192.168.0.109       # IP address for server management node
default_storage_engine=ndbcluster     # Define default Storage Engine used by MySQL

[mysql_cluster]

ndb-connectstring=192.168.0.105,192.168.0.109       # IP address for server management node
 #[mysqld_safe]
 #log-error=/var/log/mysqld.log
 #pid-file=/var/run/mysqld/mysqld.pid

 #log_bin=/var/log/mysql/mysql-bin.log
 #binlog_do_db=radius

 #port = 8881
 #innodb_force_recovery=6
 #innodb_purge_threads=0

Best Answer

The main memory usage in an SQL node is for InnoDB's buffer pool. What is the value of innodb_buffer_pool_size? (Use SHOW VARIABLES LIKE 'innodb_buffer_pool_size';) How much RAM do you have? Normally, it should be set to about 70% of RAM. The memory usage will grow until it hits the setting. After that it will fluctuate slightly as other allocations come and go.