サイト検索のために最適化されたmysqlテーブルの更新版を作成するcronスクリプトがあります。レプリケートされたmysql構造内のRENAME TABLEのリスクは何ですか?
サイトの検索に使用されているテーブルはcronジョブがwrkSearch新しいテーブルを作成し、それがテーブルを移入するために完了したとき がtblSearchをドロップしwrkSearch (両方の名前を変更終了tblSearch
と呼ばれていますテーブルはMySamエンジン)
DROP TABLE IF EXISTS `tblSearch
RENAME TABLE `wrkSearch` TO tblSearch
これは正常に動作している必要がありますが、私はこの問題への良いアプローチであるかどうかを知りたいのです。
私は例えば...あなたの考慮事項が変更された場合、テーブルのサイズに基づいて知っていると思います:
を「非常に大きなテーブルが引き起こすために...解決策は危険かもしれない」私はあることに変化しているすべてのクエリを知っていますmysqlテーブル内の何かがファイルシステム上に物事を書いています...しかし、UPDATE/INSERTの代わりにRENAMEを実行することにはいくつかの違いがありますか?私は、ファイルシステムに対するRENAMEコマンドがaggresiveであるかどうかを理解しようとしています。
テーブルの上にもう一つの要素は、TEデータベースはMASTER-SLAVE構造と複製されているという事実である...ので、私もこれが最終的にRENAMEクエリ
別の背後にあるリスクをincraseことができれば知りたいです私にとって重要な側面は、使用されるシステムリソースの量です... RENAME操作はUPDATE/INSERTよりも貪欲である可能性がありますか?
最後の声明を展開してください。なぜこのタイプの操作はうまくいったのか? – nulll