はじめに:
MySQLデータベースが大きすぎるので、デフォルトの/ varのディスクでインストールはもはや新しく追加されたデータに対応していない、方法がない、唯一のデータディレクトリを転送する方法を考えることができます。
今私は/ホーム/ mysql_data / mysqlディレクトリの特定の操作に以下の/ var / lib / mysqlでディレクトリからMySQLの転送を整理:
システムメンテナンスが www.osyunwei.com リマインダー:qihang01オリジナルコンテンツ©著作権、明記してくださいソースと元のリンク
:1、最初に我々はMySQLをシャットダウンする必要があり、次のように、コマンドがある
サービスのmysqld STOP
2、その後、最初に元のディレクトリのmysql見つけ、データを転送する期間の安全のために、我々はコピーコマンドのCPを使用し
、CDの/ var / libの
LSは
、このコマンドを実行しますその後、あなたはmysqlディレクトリが表示され、その後、cpコマンド実行
のcp -a mysqlの/ホーム/ mysql_data / # これは、データベースがにコピーされて入れを/ホーム/ mysql_dataは下記行ってきました
注:( -このパラメータが取る、または権限が適切ではないの上にコピーする必要があります。)
データベースが大きい場合、時間が長くなります、タイムアウトする可能性があり、特に邪魔にsshのない時間を設定する方法を、自分自身を見つけてください関連情報。
:3、その後、我々は、設定ファイル、3の合計を変更し、私は以下の説明与えた
最初のファイルを変更しますな/etc/my.cnf /etc/my.cnfbak CP変更する前にバックアップする
のvi /etc/my.cnfが
オープンし変更した後でDATADIRディレクトリを/ホーム/ mysql_data / mysqlのにソケット/home/mysql_data/mysql/mysql.sockの #は、安全のために、あなたは元をコメントアウトすることができますし、ラインを再追加し、カレントディレクトリを変更します。================================================== ================================ 変更する前に、CP /etc/init.d/の最初のバックアップ:第二のファイルを変更します/etc/init.d/mysqldbakのmysqld VI /etc/init.d/mysqld 注:正確な位置/etc/rc.d/init.d/mysqld、これに起因/etc/init.dのが/ありますなど/ rc.dの/ init.dディレクトリマッピング、 それは上記で注文することができ、また簡単です。 これに
DATADIR =の/ var / libに/ mysqlの行、あなたが今、実際のストレージ・パスあるパスへの右辺:/ホーム/ mysql_data / MySQLの
=================== ================================================== ============
3番目のファイルを変更します。cpは/ usr / binに/ mysqld_safeをは/ usr / binに/ mysqld_safebak変更する前にバックアップを作成
viのは/ usr / binに/ mysqld_safeをし
、ここでは変更することですディレクトリDATADIRがあります/ホーム/ mysql_data / MySQLの
============================================= =====================================
4、リンクにmysql.sockを確立するには、次の必要性:
LN -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sockの
システム運用・保守 www.osyunwei.com リマインダー:qihang01オリジナルコンテンツ©すべての権利を保有ソースと説明リンクを明記してください
この時点で、すべての変更が完了し、次はMySQLの起動
サービスを開始してmysqld
のLinuxまたは再起動し
、再起動を
正常に変更を示し、通常のスタートならば。