docs:zabbix:mysql
Использование базы MySQL
Дефрагментация базы
Так как движок подвержен фрагментации, иногда приходится базу дефрагментировать. Самый простой способ это сделать – задампить базу, удалить её и заново импортировать на сервер.
Инструкция в разработке
Останавливаем службы
service zabbix-agentd stop service zabbix-server stop
Т.к. на сервере Zabbix место приходится экономить, монтирую samba-шару для выгрузки дампа в неё
mount -t cifs -o username=user,password=user_password,iocharset=utf8,file_mode=0777,dir_mode=0777 //samba_server/bkp /mnt/net
где
user и user_password -- логин и пароль пользователя на самба ресурсе //samba_server/bkp -- "шара" для хранения /mnt/net -- точка монтирования
Создаём дамп базы
mysqldump -u root -p zabbix > /mnt/net/zabbix.%Y%m%d.%H%M%S.sql
После удаляем базу
mysql -u root -p mysql> DROP DATABASE zabbix; mysql> CREATE DATABASE zabbix CHARACTER SET utf8; mysql> GRANT usage ON *.* TO zabbix@localhost IDENTIFIED BY 'password'; mysql> GRANT ALL privileges ON zabbix.* TO zabbix@localhost; mysql> FLUSH privileges; mysql> quit;
Запускаем импорт базы обратно
mysql -u root -p zabbix < /mnt/net/zabbix.20140426.122043.sql
Стартуем сервисы
service zabbix-agentd start service zabbix-server start
При изначальном размере базы в ~70Gb экспорт занял порядка 30 минут, импорт же более 2х суток. Размер базы после дефрагментации уменьшился примерно на 10Gb.
Только авторизованные участники могут оставлять комментарии.
docs/zabbix/mysql.txt · Последнее изменение: 31.05.2014 13:48 — philip