2011-02-01 10 views
1

これは本当にコミュニティのwikiページですが、私はこの質問をして、何が欠けているのか見ていなければなりません。私はサイト上の司会者で、新しいサイト移行を行っています。索引付けの有無にかかわらずデータベースをコピーしますか?

彼らは昨日昼食のあいだにデータ移行を開始しました。まだ進行中で、30時間以上かかると言われています。それはむしろ大規模なサイト(SQL ServerからMySQLに至る7億レコード)ですが、なぜそれがずっと時間がかかるのかわかりませんでした。

私は彼らがその場でインデックスを作成していることを知りました。これに利点がありますか?コピーしてインデックスを作成する方が速くて安全かもしれませんか?誰かがリンクを持っている場合、私はその答えとして最もよく選択するでしょう。ありがとう。

+0

文法編集、素敵です。 :) – XstreamINsanity

答えて

0

私が知っている典型的な手順は、無効な制約とインデックスのないすべてのテーブルをコピーし、後でインデックスをゼロから再作成してから制約を有効にすることです。ゼロからインデックスを再構築することは、移行中にオンラインで作成するよりも安価です。です。

http://www.mysql.com/why-mysql/white-papers/mysql_microsoftsql2mysql_paper.pdf

は、例えば以下を参照してください分は馬の口:)からあなたのためにこれを育てグーグル

5ページ:

またあなたは[ はMySQLのDDLを生成]これらの各ファイルの 端から 権限とインデックスステートメントを撮りたい、と 新しいファイルに入れます。移行時にこれらのステートメントが残っている場合は、 の移行が大幅に遅くなります。

ベンチマークは見つかりませんでしたが、あなたは非常に代表的なものを自分で作ることができます。結果は自分自身で話すべきです。

ここにはrelated questionがあります。

+0

それはまさに私が考えていたものです。残念なことに、私はMODなので、私はそのことについては言いません。これを示すことができるベンチマークテストサイトを知っていますか?私は彼らがやっていることを止めさせ、変えてからやり直すようにしたい。 30時間を10時間以下に短縮することができるかもしれません。 – XstreamINsanity

+0

残念ながら、私はそれができる位置にいません。しかし、私はリンクと助けに感謝します。今すぐメールで送信してください。私が移行を止めることができるかどうかを見て、スクリプトを編集してから実行してください。彼らは間違いないだろう。 – XstreamINsanity

関連する問題