ksaitoの日記

日々試したことの覚え書き

MySQLの引越し

Zabbixのデータを格納しているMySQLのデータベースが6.4GBとなり/ファイルシステムを圧迫してきたので別のディスクに移すことにしました。

サービスの停止

MySQLを使っているサービスを停止します。

# /etc/init.d/zabbix-server stop
Shutting down zabbix server:                               [  OK  ]
# /etc/init.d/httpd stop
httpd を停止中:                                            [  OK  ]
# /etc/init.d/mysqld stop
MySQL を停止中:                                            [  OK  ]
#

データファイルのコピー

/homeのディスクに空きがあるので/home/mysqlにコピーします。
LVMを切っているのですが、物理的に追加するディスクがないので仕方ありません。

# pwd
/var/lib
# time tar cf - mysql/* | (cd /home; tar xf -) 
real    6m2.380s
user    0m1.698s
sys 0m56.402s
#

シンボリックリンクの設定と動作確認

/etc/my.confの設定変更でも良いのですが、なんとなくシンボリックリンクで対応します。

# pwd
/var/lib
# mv mysql mysql.backup
# ln -s /home/mysql .
# ls -l mysql
lrwxrwxrwx 1 root root 11  7月 29 12:50 mysql -> /home/mysql
#

動作確認

MySQLを起動して/home/mysqlmysql.sockが作成されることを確認します。
念のためテスト用にデータベースを作成/削除してファイルが作成されるか確認します。

サービス起動

停止したサービスを起動して、しばらく様子を見ます。

ファイル削除

/var/lib/mysql.backupを、どこかにバックアップして削除します。