При частом увеличении и уменьшении размера базы, очень часто происходим что файл /var/lib/mysql/ibdata1 забивается мусором до неприлично больших размеров.

Это происходит из-за появления в базе ненужного мусора.

Для решения проблемы необходимо сделать дамп всех баз на сервере, это можно сделать командой

mysqldump -A -uroot -p > all.sql

И ввести пароль пользователя root вашей базы.

Если на вашем сервере недостаточно места для создания дампа, то можно сделать дамп на сторонний сервер.

Создаём дамп на сторонний сервер, у вас должен быть доступ на сторонний сервер по ssh

mysqldump -A | ssh логин@8.8.8.8 'cat > /all.sql'

На стороннем сервере должен быть установлен MySQL и должно работает удалённое подключение к базе.

На стороннем сервере выполняем команду:

mysqldump -A -h8.8.8.8 -uroot -p > all.sql

 

После создания дампа, останавливаем базу.

Centos6/Ubuntu/Debian

service mysqld stop

Centos 7

systemctl stop mariadb 

 

После остановки базы, удаляем файл /var/lib/mysql/ibdata1 и запускаем базу

Centos6/Ubuntu/Debian

service mysqld start

Centos 7

systemctl start mariadb

 

И заливаем базу обратно

mysql -uroot -p < all.sql

Если делали дамп на сторонний сервер то

mysql -h8.8.8.8 -uroot -p < all.sql