0

ここで何をしたのかわかりませんが、InnoDBエンジンがMySQLサーバーからなくなったようです。最近、dotdebリポジトリからアップグレードして、インストールしmysql-serverました。

私の中にはInnoDBについての言及はありませんが、InnoDBmy.cnfがデフォルトで有効になっていることを説明するコメントがいくつかありますが、私にはわかりません。にはInnoDBについての言及もありませんSHOW ENGINES

ここに欠けているものはありますか?

重要な場合、私のMySQLサーバーのバージョンは次のとおり5.5.24-1~dotdeb.1 (Debian)です。

編集SHOW ENGINES::

mysql> SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | DEFAULT | MyISAM storage engine                                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
8 rows in set (0.00 sec)
4

4 に答える 4

4

問題はおそらく、ログ ファイルのサイズが一致していないことです。mysql は、innodb ログ ファイルが構成ファイルで指定されたサイズと正確に一致することを期待しています。これが本当に問題であるかどうかを確認するには、次の手順を実行します。

  1. sudo /etc/init.d/mysql restart
  2. sudo tail -n 1000 /var/log/syslog

(Debianを使用していると仮定しています)

innodb とログ ファイルのサイズに関するいくつかのエラーが報告されている場合 (申し訳ありませんが、メッセージの正確な言葉遣いを思い出せません)、修正は簡単です。

  1. ログファイルを見つけます (おそらく/var/lib/mysql/ib_logfile0/var/lib/mysql/ib_logfile1)
  2. mysqlサーバーを停止します
  3. ログファイルの名前を変更します:sudo mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bakなど。
  4. mysql サーバーを起動する
  5. /var/log/syslogエラーが発生しなくなったかどうかを確認します
  6. mysql に接続し、SHOW ENGINES;InnoDB が現在利用可能かどうかを確認します...

お役に立てれば!

于 2012-07-02T14:18:10.960 に答える
1

最初に行うことはSHOW ENGINES、MySQLプロンプトで実行して、Innodbが無効になっているかどうかを確認することです。

そうである場合は、MySQLサーバーのエラーログを確認してください。InnoDBが無効にされた理由の詳細が表示されます。MySQLが起動時にInnoDBを無効にする理由はいくつかあります。たとえば、my.cnfで指定されたinnodbログファイルのサイズが、ディスク上の既存のログファイルのサイズと一致しない場合です。

于 2012-05-15T18:31:50.903 に答える
0

mysql 5.5がプリインストールされたDebian 7サーバーでこの問題が発生しました。その後、InnoDBエンジンはありませんでしたSHOW ENGINES

これを実行する前にseverinが述べたように:

  1. sudo /etc/init.d/mysql restart
  2. sudo tail -n 1000 /var/log/syslog

私はこれを持っています:

InnoDB: エラー: 5 回試行した後、io_setup() が EAGAIN で失敗しました。

そして他の行の解決策:

InnoDB: my.cnf で innodb_use_native_aio = 0 を設定することにより、Linux ネイティブ AIO を無効にできます。

my.cnf に追加innodb_use_native_aio = 0した後、InnodDB がSHOW ENGINES

于 2014-03-14T12:31:43.003 に答える
0

ディスクに十分なスペースがあるかどうか、および mysql.sock が保存されている場所を確認してください。

  1. MYSQL を停止します
  2. my.cnf を編集して増やします:

innodb_buffer_pool_size=100M (May vary per case)

  1. 追加:

    [mysqld] innodb_force_recovery = 1

  2. 以下を実行

    mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bak

    mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1.bak

  3. 万が一に備えて、MySQL を起動し、バックアップを取ります。

  4. mysql にログインし、次のことを行います。show engines;- InnoDB がリストされ、SUPPORT = YES であることを確認します。

  5. 6 まで問題がなければ、終了して my.cnf を編集し、これを元に戻します。

[mysqld] innodb_force_recovery = 0

  1. MySQL を再起動します

  2. Web サイトにアクセスして、すべてが機能することを確認してください。幸運を祈ります!

PS - 実稼働サーバーで作業している、または再起動によってログ ファイルが破損したなど、原因を確認することをお勧めします。今のところ問題はありません。周りを見回して、特に空きディスク容量とオフサイト バックアップなど、他のすべてが適切であることを確認してください。

于 2015-10-19T11:23:26.227 に答える