ディスクがいっぱいです。MySQL データベース ファイルを移動するにはどうすればよいですか?

ディスクがいっぱいです。MySQL データベース ファイルを移動するにはどうすればよいですか?

私のデータベースファイルは/var/lib/mysqlどのパーティションにあるか/dev/sda5

このパーティションはいっぱいです(詳細はこちらを参照

/var/lib/mysqlそこでデータベースファイルの場所をからに移動します/home/lib/mysql

このデータベース ファイルを移動する正しい方法は何ですか?

次の手順に従います:

  1. httpサーバーとPHPを停止する
  2. 変化datadir=/var/lib/mysqldatadir=/home/lib/mysql/etc/my.cnf
  3. すべてのデータベースファイルを新しい場所に移動する
  4. 実行してkillall -9 mysql/etc/init.d/mysqld start
  5. httpサーバーとPHPを起動する

これは正しいですか?間違っていたら訂正してください

追加した:

現在、mysql は停止しません。こちらを参照してください:mysqlが停止しない、mysqld_safeがトップに表示された

答え1

1- ファイルを移動する前に (手順 3)、mysql サーバーを停止する必要があります (手順 4)。

2- 必要な場合を除き、使用を中止してくださいkill -9

3- ステップ 5 から始めるという意味だと思います。(質問を編集します)。

4- ファイルの権限と所有権も確認する必要があります。

答え2

  1. httpサーバーとPHPを停止する
  2. MySQL に root としてログインし、「テーブルをフラッシュ」します (フラッシュが失敗した場合は、修復するテーブルがいくつかあります)
  3. killall -9 mysql を実行します。
  4. /etc/my.cnf で datadir=/var/lib/mysql を datadir=/home/lib/mysql に変更します。
  5. すべてのデータベースファイルを新しい場所に移動する
  6. MySQLサーバを起動する
  7. テーブルの状態を確認する (phpmyadmin または他の GUI から)
  8. httpサーバーとPHPを起動する

関連情報