Problema com o mecanismo InnoDB enquanto habilita e [skip-innodb] - [ERROR] A função init do Plugin 'InnoDB' retornou erro

1

No servidor de produção, a partir de agora, estamos executando apenas com tabelas MyIsam, portanto, desativamos o mecanismo innodb com a opção skip-innodb. Mas agora em diante, precisamos ativar o mecanismo innodb, bem como criar algumas tabelas de innodb. Por isso, comentamos a opção [# skip-innodb] em my.cnf e reiniciámos. Por favor, analise os casos abaixo e solicite uma solução ou dicas para o mesmo?

Caso 1: Desabilite o innodb com a opção skip-innodb e "mysql > show engines" dados como abaixo.

mysql> show engines;
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                        | Transactions | XA   | Savepoints |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB     | NO      | Supports transactions, row-level locking, and foreign keys     | NULL         | NULL | NULL       |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| FEDERATED  | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| ARCHIVE    | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         | NO           | NO   | NO         |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
8 rows in set (0.01 sec)

      Engine     | Support ...
    | InnoDB     | NO   ......

Caso 2: Como eu quero ativar o innodb, eu comandei a opção # skip-innodb e reiniciei. Mas agora os motores de demonstração ainda não mostram o mecanismo InnoDB na lista. ?

mysql> show engines;
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                        | Transactions | XA   | Savepoints |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         | NO           | NO   | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| FEDERATED  | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| ARCHIVE    | YES     | Archive storage engine                                         | NO           | NO   | NO         |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
7 rows in set (0.00 sec)

Versão do Mysql: 5.1.57-community-log SO: versão CentOS 5.7 (Final)

Log:

120622 13:06:36  InnoDB: Initializing buffer pool, size = 8.0M
120622 13:06:36  InnoDB: Completed initialization of buffer pool
InnoDB: No valid checkpoint found.
InnoDB: If this error appears when you are creating an InnoDB database,
InnoDB: the problem may be that during an earlier attempt you managed
InnoDB: to create the InnoDB data files, but log file creation failed.
InnoDB: If that is the case, please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/error-creating-innodb.html
120622 13:06:36 [ERROR] Plugin 'InnoDB' init function returned error.
120622 13:06:36 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
120622 13:06:36 [Note] Event Scheduler: Loaded 0 events
120622 13:06:36 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.57-community-log'  socket: '/data/mysqlsnd/mysql.sock1'  port: 3307  MySQL Community Server (GPL)
    
por Ahn 22.06.2012 / 09:17

1 resposta

1

Seus arquivos de log podem estar corrompidos.Experimente isso:

  1. Pare o mysql.
  2. Como você não tinha dados anteriores nas tabelas innodb, remova (ou mova para outro lugar) os arquivos de log, eles devem ser nomeados como /var/lib/mysql/ib_logfile0 e /var/lib/mysql/ib_logfile1 na instalação padrão.
  3. Inicie o mysql novamente

Para mostrar o tipo de status do mecanismo innodb do mysql,

mysql> show engine innodb status;
    
por 26.06.2012 / 08:05

Tags