3

そのため、最大ログ ファイル サイズを 64M に設定できるようにしたいのですが、それを行った後、innodb_log_file_size=64MMySQL は正常に起動しますが、何も正しく動作していないようです。

編集:そして、適切に言うと、まったく意味がありません。他の InnoDB 変数を設定しても問題は発生しません。

これをトラブルシューティングするにはどうすればよいですか?

4

3 に答える 3

4

MySQL が正常にシャットダウンされていることを確認しib_logfile*、MySQL データ ディレクトリからすべてのファイルを削除 (または別の場所に移動) します (/var/lib/mysql/通常)。

私はそれをテストし、私のために働きました。このヒントのソースは次のとおりです。

InnoDB は、show table statusコメント フィールドにいくつかのエラーを報告します。hostname.errその他の問題は、MySQL エラー ログ ( MySQL データ ディレクトリ内)で見つけることができます。

于 2008-11-24T20:30:57.697 に答える
3

私もこの問題に遭遇しました。@porneLの回答によると、これを修正するための特定のbash手順は次のとおりです。

service mysql stop              # Stop MySQL
rm /var/lib/mysql/ib_logfile0   # Delete log file 1
rm /var/lib/mysql/ib_logfile1   # Delete log file 2
vim my.conf                     # Change innodb_log_file_size = 64M
service mysql start             # Start MySQL

これらの具体的な手順は、MySQL フォーラムで見つけました。

于 2013-07-05T20:51:35.837 に答える
1

innodb_log_file_sizeを変更する前に、残りのトランザクション データをすべてフラッシュする必要があります。innodb_fast_shutdownを 0 または 2 に設定するだけです。

  • innodb_fast_shutdown = 0 : InnoDB は、シャットダウン前に低速シャットダウン、フル パージ、および挿入バッファー マージを実行します。
  • innodb_fast_shutdown = 2 : InnoDB はログをフラッシュし、MySQL がクラッシュしたかのようにコールド シャットダウンします。コミットされたトランザクションが失われることはありませんが、クラッシュ リカバリ操作により次の起動に時間がかかります。

これに照らして、これはあなたがそれを処理する方法です

mysql -ANe"SET GLOBAL innodb_fast_shutdown = 2"
vi /etc/my.cnf                  # Change innodb_log_file_size = 64M
service mysql stop              # Stop MySQL
rm /var/lib/mysql/ib_logfile0   # Delete log file 1
rm /var/lib/mysql/ib_logfile1   # Delete log file 2
service mysql start             # Start MySQL
于 2013-07-05T21:01:00.820 に答える