sql >> データベース >  >> RDS >> Mysql

MyISAMをInnoDBに変換します。有益?結果?

    他のスレッドで説明されている、その使用の利点/欠点にもかかわらず(MyISAMとInnoDB )、移行は重要なプロセスです。

    検討する

    • 可能であればデータベースと通信するすべてのコンポーネントを機能的にテストします-階差機関は異なるセマンティクスを持っています
    • できるだけ多くのパフォーマンステストを実行します。改善するものもあれば、悪化するものもあります。よく知られている例は、大きなテーブルのSELECT COUNT(*)です。
    • すべてのコードがデッドロックを適切に処理することを確認します-トランザクションを明示的に使用しなくてもデッドロックを取得できます
    • 変換によって得られるスペース使用量を見積もります。これを非実稼働環境でテストします。

    大規模なソフトウェアプラットフォームでは、間違いなく変更する必要があります。これは問題ありませんが、(うまくいけば)多くの自動テストカバレッジがあるので、変更は許容できるはずです。

    PS:「何かがCPUに負担をかけ始めている」場合は、a)非本番環境で何を調べ、b)非本番環境でさまざまなオプションを試してCPUに負担をかけます。問題を完全に分析していないときに、データベースエンジンの変更などの主要なことをやみくもに始めるべきではありません。

    すべてのパフォーマンステストは、実稼働環境のようなデータを使用し、実稼働グレードのハードウェアを使用して、非実稼働環境で実行する必要があります。そうしないと、結果を正しく解釈することが困難になります。



    1. Puppetを使用したデータベース自動化:MySQLとMariaDBGaleraクラスターのデプロイ

    2. PHPを使用してファイルをアップロードし、MySQLデータベースへのパスを追加します

    3. SQLServer2008のデータベースからのデータを使用して単一のテーブルをバックアップします

    4. SQL ServerでのCAST()のしくみ