質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

2回答

17905閲覧

MySQLのDumpデータを爆速で復元したい

Razumerians

総合スコア25

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2016/12/31 04:59

ある別のMySQLサーバーからデータを移行する為Dumpし、そのDumpデータを他のMyDQLデータベース・サーバーに移しインポートしています。

しかし、4日間経過しますがまだインポートが終わっていません。

データ量は50GBで、レコード数は3億くらいです。
インデックスも複数貼っていますので、その生成にも時間がかかっていると思います。

そこで質問なのですが、このインポート処理を爆速で終わらせたいのですが、何か良い方法はありますでしょうか?

CPUの使用率をみたら、MySQLが12%であり、アイドルCPUが80%以上あるので、できればCPUを100%に近い形で使い切りインデックス作成処理を早く終わらせたいと思っています。

インポート元先共に同じ環境:
XEON-5
Memori:8GB
SSD
Windows Server
MySQL 5.6 MyiSAM

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2016/12/31 05:02

ディスクI/Oは、どれぐらいでしょうか?
Razumerians

2016/12/31 05:51

デスクIOも20%ほどです。何か制限でもかかっているのかとおもうくらいです。
A.Ichi

2016/12/31 07:15

cpuでのお答えではありません、インデックスを削除してからdumpデータを出力し、新しいサーバーで再度取り込んだ後にインデックスを張りなおすと早なる場合が有ります。
A.Ichi

2016/12/31 07:29

移行元のインデックスのドロップは難しいですよね、考えが足りませんでした。(失礼しました)
guest

回答2

0

  • 以下で使うSQL文の詳細オプションなどは、マニュアルで確認下さい。

ダンプをやり直せるのなら、通常のダンプファイルではなく、データを別個にファイルに書き出す方法が考えられます。LOAD DATA INFILEINSERT INTOよりもすごく速いです (マニュアルには「20倍」などという記述が見えます)。

  1. mysqldump --no-data ...でテーブルの定義だけダンプ。
  2. SELECT * INTO OUTFILE ...で、テーブル毎のデータをファイルに保存。

リストアの際は、

  1. テーブルの定義だけをリストア。
  2. LOAD DATA INFILE ...でテーブル毎のデータをリストア。

また、LOAD DATA INFILE ...を実行する前にインデクスを使わないようにし、あとで作成することで、読み込みをより高速化できます。詳細はマニュアルを参照 (5.6日本語5.5英語)。

なお、LOAD DATA INFILEの代わりにmysqlimportクライアントプログラムを使うこともできます。

投稿2017/01/02 06:43

ikedas

総合スコア4317

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

key_buffer_sizeを調整すると速くなることがあるみたいですよ。
https://dev.mysql.com/doc/refman/5.6/ja/server-system-variables.html

投稿2017/01/01 01:59

rysh

総合スコア874

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問