MySQL データの保存先を変更する

久しぶりの投稿です。

運用しているサービスのDB肥大よって、ディスク容量が足らなくなりディスクの追加&データ保存先の変更を実施したのでそのログとして残しておきます。

ちなみに、ディスク追加前のdf結果はこんな感じです。

$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/vda2 50G 47G 684M 99% /
devtmpfs 486M 0 486M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 6.8M 490M 2% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0

99%とか・・・マネタイズしていないサービスとはいえ酷過ぎる・・・

環境

ホスティングサービス ConohaVPS
OS CentOS 7系
MySQL 5.7

 手順

以下は大まかな手順です。

  1. Conoha でディスクの追加
  2. ディスクをマウント
  3. MySQLのデータをコピー
  4. my.cnfの修正
  5. 保存先変更の確認

実作業

Conoha でディスクの追加

Conohaのコントロールパネルを開き、下記画像の容量でディスクを追加します。
参考:[Conohaご利用ガイド]ディスク最大容量の変更

確認画面で「はい」をクリックするとディスクの使完了。

ディスクをマウント

ディスクの追加が完了したら、SSHでログインして下記コマンドを実行。(root権限で実行)
参考:[Conohaご利用ガイド]追加SSDの設定方法

# パーティションを初期化
$ parted -s -a optimal /dev/vdb -- mklabel msdos mkpart primary ext4 1 -1

# ファイルシステムを作成(この例ではext4)
$ mkfs.ext4 /dev/vdb1

# マウント先のディレクトリを作成(ここでは/data)
$ mkdir /data

# マウント
$ mount /dev/vdb1 /data

コマンドの実行が終わったらdfコマンドでマウントされていることを確認

$ df -h
ファイルシス   サイズ  使用  残り 使用% マウント位置
/dev/vda2         50G   47G  684M   99% /
devtmpfs         486M     0  486M    0% /dev
tmpfs            496M     0  496M    0% /dev/shm
tmpfs            496M  6.8M  490M    2% /run
tmpfs            496M     0  496M    0% /sys/fs/cgroup
tmpfs            100M     0  100M    0% /run/user/0
/dev/vdb1        197G   42G  146G   23% /data

*もろもろの作業が終わった後のdf結果です

MySQLのデータをコピー

# mysqlを停止
$ systemctl stop mysqld.service 

# 保存ディレクトリを作成
mkdir /data/lib

# データをコピー
cp -af /var/lib/mysql* /data/lib/

my.cnfの修正

/etc/my.cnf を開き下記の通り修正

before

datadir=/var/lib/mysql

after

datadir=/data/lib/mysql

保存先変更の確認

# mysqlを起動
$ systemctl start mysqld.service 

# mysqlに接続
$ mysql -u user -p dbname

-- 保存先ディレクトリの確認
mysql> show variables like 'datadir';
+---------------+------------------+
| Variable_name | Value            |
+---------------+------------------+
| datadir       | /data/lib/mysql/ |
+---------------+------------------+

Valueの値がmy.cnfに設定した値になっていれば完了。

ひとまずしばらくはこれで安心だ ^^

シェアする

  • このエントリーをはてなブックマークに追加

フォローする