現在のテーブルに列を追加する必要があります。
このテーブルは昼夜を問わずよく使われます。ここにあるalterコマンドを使用して変更する必要があることがわかりました
http://dev.mysql.com/doc/refman/5.1/en/alter-table.html
開発サーバーでテストしました。
完了するまでに約2時間かかりました。これを本番サーバーで実行したいですか?
これは私のウェブサイトを停止しますか?
2012年1月7日UTC午前0時からメンテナンスを行うというメッセージをサイトに表示してみませんか。
このようにして、データを壊したり、mysqlエラーが発生したりすることはありません。ALTERを実行し、完了したらサイトを再開します(正しいフィールドがあることを確認するために、コードを忘れないでくださいなど)。簡単な解決策。
Stackoverflowはそれを行います、なぜあなたのものではないのですか?
はい、ALTER TABLEの間、すべての読み取りと書き込みがブロックされます。Webサイトでそのテーブルを使用する必要がある場合、リクエストはハングします。
pt-online-schema-changeを試してください。再構築が完了すると、変更をキャプチャして変更されたテーブルに対して再生しながら、読み取りと書き込みを続行できます。
開発サーバーで注意深くテストして、サーバーがどのように機能し、何を期待できるかを理解してください。
Webサイトが停止することはありませんが、エラーが発生する可能性があります。
もちろん、アプリケーションのすべてのコードを見ずにこれに答える方法はありません。
肝心なのは、疑わしい場合はメンテナンスウィンドウをスケジュールすることです。
PS:これは(私の経験に基づいて)より安全で確実な方法だと思います。