Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
10
respostas

erro com o mysql parou de funcionar

ola estou tendo um problema com o mysql, no outro topico ja havia conseguido solucionar o phpmyadmin, mas agora nao consigo iniciar o mysql pelo painel de controle do xampp, dando o erro que parou de funcionar, abaixo segue o log de erro:

https://gist.github.com/anonymous/294269ab6521f9705d787fc196243a37

parece que o mysql nao consegue achar as tabelas que criei, se puderem me ajudar.

10 respostas

Oi Sérgio, tudo bom?

Como o proprio erro diz, pode ser um problema de permissão ou um bug. De qualquer forma, podemos forçar a recuperação:

If the file system or the disk is broken, and you cannot remove InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf

Para isso:

  • Abra seu arquivo my.ini (my.cnf no linux ou Mac)

  • Procure por [mysqld]

  • Abaixo de [mysqld] adicione: innodb_force_recovery = 1

  • Inicialize o serviço do MySQL para realizar a recuperação

  • Pare o serviço do MySQL

  • Remova a linha do my.ini (innodb_force_recovery = 1)

  • Inicialize o MySQL novamente =)

Qualquer problema é só falar.

Abraço e bons estudos.

obrigado Andre, segui os passos, consegui iniciar o mysql pelo painel, mas quando tiro o: innodb_force_recovery = 1 do my.ini o erro volta, então deixei a linha.

quando entro no phpMyAdmin, e tento acessar a database mercado, da o seguinte erro : #1932 - Table 'phpmyadmin.pma__tracking' doesn't exist in engine, e não consigo acessar as tabelas.

As tabelas do phpMyAdmin parecem estar com algum problema. Você pode encontrar o arquivo de criação dessas tabelas aqui.

A tabela pma__tracking mais especificamente:

CREATE TABLE IF NOT EXISTS `pma__tracking` (
  `db_name` varchar(64) NOT NULL,
  `table_name` varchar(64) NOT NULL,
  `version` int(10) unsigned NOT NULL,
  `date_created` datetime NOT NULL,
  `date_updated` datetime NOT NULL,
  `schema_snapshot` text NOT NULL,
  `schema_sql` text,
  `data_sql` longtext,
  `tracking` set('UPDATE','REPLACE','INSERT','DELETE','TRUNCATE','CREATE DATABASE','ALTER DATABASE','DROP DATABASE','CREATE TABLE','ALTER TABLE','RENAME TABLE','DROP TABLE','CREATE INDEX','DROP INDEX','CREATE VIEW','ALTER VIEW','DROP VIEW') default NULL,
  `tracking_active` int(1) unsigned NOT NULL default '1',
  PRIMARY KEY  (`db_name`,`table_name`,`version`)
)
  COMMENT='Database changes tracking for phpMyAdmin'
  DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;

Verifica se isso resolve, qualquer problema compartilha com a gente =)

o arquivo de criação esta idêntico ao meu, o problema continua, anteriormente quando estava tentando acessar o phpMyAdmin e nao tinha acesso, eu exclui os arquivos ibdata1 e ib_logfile da pasta do mysql, na tentativa de resolver o problema (como aqui:https://stackoverflow.com/questions/19211817/mysql-not-launching-on-xampp. Acho que fiz algo errado

Você chegou a fazer um backup desses arquivos?

No pior dos casos, você pode fazer um dump do seu banco e re-instalar o mysql também =)

sim, tenho o backup dos arquivos, mas mesmo quando eu copio de volta o erro de não startar o mysql pelo painel volta, como poderia fazer o dump e re-instalar o mysql?

Opa, para fazer o dump de uma tabela SQL em um arquivo você pode rodar o seguinte comando:

mysqldump -u seuUsuario -p database > /caminho/para/seu/arquivo.sql

o arquivo sql foi gerado, como devo re-instalar o mysql no xampp?

solução!

Acredito que seguindo o step-by-step de remoção(pelo gerenciador de programas)/instalação(pelo executavel mesmo) do xampp o ambiente esteja limpo novamente.

consegui restaurar, agora tenho acesso ao PhpMyAdmin e as tabelas, obrigado André.