Estou cometendo o erro mais estranho de todos.
Às vezes, ao criar ou alterar tabelas, recebo o erro 'tabela já existe'. No entanto, DROP TABLE retorna '# 1051 - tabela desconhecida'. Então eu tenho uma mesa que não posso criar, não posso largar.
Quando tento eliminar o banco de dados, o mysqld falha. Às vezes ajuda criar outro banco de dados com um nome diferente, às vezes não.
Eu uso um banco de dados com cerca de 50 tabelas, todas InnoDB. Esse problema ocorre com tabelas diferentes.
Eu experimentei isso no Windows, Fedora e Ubuntu, MySQL 5.1 e 5.5. Mesmo comportamento, ao usar PDO, PHPMyAdmin ou linha de comando. Eu uso o MySQL Workbench para gerenciar meu esquema - eu vi alguns erros relacionados (linhas finais e outras coisas), porém nenhum deles foi relevante para mim.
Não, não é uma vista, é uma mesa. Todos os nomes estão em minúsculas.
Eu tentei tudo que pude no google - esvaziar tabelas, mover arquivos .frm de db para db, ler o log do mysql, nada ajudou a não ser reinstalar a porcaria inteira.
'Mostrar tabelas' não revela nada, 'descrever' a tabela diz 'a tabela não existe', não há nenhum arquivo .frm, mas 'criar tabela' ainda termina com um erro (e também 'criar tabela se não existir') e eliminando falhas de banco de dados mysql
Perguntas relacionadas, mas inúteis:
Editar:
mysql> use askyou;
Database changed
mysql> show tables;
Empty set (0.00 sec)
mysql> create table users_has_friends (id int primary key);
ERROR 1050 (42S01): Table '`askyou`.`users_has_friends`' already exists
mysql> drop table users_has_friends;
ERROR 1051 (42S02): Unknown table 'users_has_friends'
E assim mesmo: a mesa não existe, mas não pode ser criada;
mysql> drop database askyou;
ERROR 2013 (HY000): Lost connection to MySQL server during query
Mudança de nomes, esta não é a única tabela / banco de dados que eu tive problemas com
SHOW FULL TABLES IN askyoue SELECT * FROM information_schema.TABLES WHERE TABLE_SCHEMA LIKE 'askyou'?