巨大でローカルに保存できない MySQL のダンプファイルを外部サーバーに SSH で保存する方法
さくらの VPS の20GBにぎっしり詰まった MySQL のファイル。サーバーを100GBの VPS に移転することになったのですが、phpMyAdmin でダウンロードしても、どれだけ設定を変更しても2GBまでしか取れない。それよりも、これだと心配なので mysqldump を使いたいと思ったところ、mysqldump をローカルに保存しなくても、そのまま外部のサーバーに保存する方法を見つけました。
mysqldump を外部サーバーに保存する
mysqldump を gzip で圧縮して SSH でそれを外部の VPS に転送します。変更点は [PASSWORD] と [DB_NAME] です。あと SSH の部分はご自分の転送したいサーバーに合わせて変更してください。ちなみに [PASSWORD] は無しでも構いませんが、MySQL のユーザーパスワードと SSH のユーザーのパスワードを同時に聞かれて混乱しますので気をつけましょう。
1
mysqldump -u root -p[PASSWORD] [DB_NAME] | gzip | ssh info@192.168.0.1 -p 10022 'cat > ~/dump.sql.gz'
転送された巨大なダンプファイルをインポートする
これで、圧縮して SSH で新しいサーバーにデータを直接転送されました。この巨大なファイルのインポートに 共用サーバーでも使える BigDump を使った方法などもあり、それでやっても良いのですが、ここはせっかく VPS を使っていますので、以下のようなコマンドで簡単にインポートしましょう。
1
mysql -u root [DB_NAME] -p < dump.sql
以下のサイトを参考にさせて頂きました。
関連記事
- mysqldump でバックアップが取れない件から MySQL の場所とかを物凄い追求しました
- XAMPP の MySQL の root ユーザーのパスワードを変更する方法
- ヘテムルで複数の MySQL をまとめて自動バックアップをする方法
- 超巨大な MySQL のデータを共用サーバーにインポートできる BigDump の使い方
- Mac に MacPorts を使って MySQL と PHPMyAdmin をインストールする方法
- PHP で MySQL のデータを扱う際に良く使う SQL とかその辺
- CentOS で MySQL が起動しない場合に行った対処メモ
- MySQL のフィールド名に使ってはいけない予約語
- heteml から Serverman@VPS に SVN のリポジトリを移転する方法
- CakePHP で MySQL で文字化けする場合の解決方法
コメント
コメントは受け付けていません。