¿Error? # 1146 – La tabla ‘xxx.xxxxx’ no existe

Estoy usando Windows XP. Estoy creando una tabla en phpMyAdmin usando su función incorporada para crear tablas, el nombre de mi base de datos es ddd .

Genera el siguiente código:

 CREATE TABLE `ddd`.`mwrevision` ( `asd` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `sddd` INT NOT NULL ) ENGINE = INNODB; 

y aparece el siguiente error:

 MySQL said: #1146 - Table 'ddd.mwrevision' doesn't exist 

¿Cuál podría ser el problema?

También tuve el mismo problema en el pasado. Todo había sucedido después de mover los archivos de la base de datos a una nueva ubicación y después de actualizar el servidor mysql. Todas las tablas con motor InnoDB desaparecieron de mi base de datos. Intentaba recrearlos, pero mysql me dijo 1146: Table 'xxx' doesn't exist todo el tiempo hasta que recreé mi base de datos y reinicié el servicio de mysql.

Creo que es necesario leer sobre los binarios de la tabla InnoDB.

Tuve el mismo problema y no puedo obtener un buen consejo para esto en la web, así que compartí esto para usted y para todos los que lo necesiten.

En mi situación, copio una base de datos (todos los archivos: frm, myd) a la carpeta de datos en la carpeta de datos MySQL (usando Wamp en casa). Todo estaba bien hasta que quiero crear una tabla y tener el error #1146 Table '...' doesn't exist! .

Yo uso Wamp 2.1 con MySQL versión 5.5.16.

Mi solución:

  1. Exportar la base de datos a un archivo;

  2. verificar si el archivo exportado está realmente bien !!;

  3. soltar la base de datos donde tengo problemas;

  4. crea una nueva base de datos con el mismo nombre que la última;

  5. importar el archivo a la base de datos.

PARA MI SE RESOLVIÓ EL PROBLEMA. Ahora puedo crear tablas nuevamente sin errores.

En mi caso, ejecuté este comando incluso si la tabla no estaba visible en PhpMyAdmin:

DROP TABLE mytable

entonces

CREATE TABLE....

Trabajó para mi !

Reiniciar MySQL funciona bien para mí.

Verificar nombres de archivos.
Es posible que necesite crear una nueva base de datos en phpmyadmin que coincida con la base de datos que está tratando de importar.

Yo tuve el mismo problema. Intenté crear una tabla en mysql y obtuve el mismo error. Reinicié el servidor mysql y ejecuté el comando y pude crear / migrar la tabla después de volver a configurar.

Hoy estaba enfrentando el mismo problema. Estaba en una situación muy difícil, pero ¿con qué ID creé una tabla con un nombre diferente? Por ejemplo (modulemaster no estaba creando, entonces creo modulemaster1) y después de crear la tabla simplemente hago la tabla de cambio de nombre.

Encontré el mismo problema hoy. Estaba tratando de crear una tabla de users , y me preguntaron si ERROR 1146 (42S02): Table users doesn't exist , lo cual no tenía ningún sentido, ¡¡¡porque solo estaba intentando crear la tabla !!

Luego traté de soltar la tabla escribiendo DROP TABLE users , sabiendo que fallaría porque no existía, y recibí un error, diciendo Unknown table users . Después de obtener este error, traté de crear la tabla de nuevo, y mágicamente, ¡creó la tabla con éxito!

Mi intuición es que probablemente creé esta tabla antes y no se borró por completo de alguna manera. Al decir explícitamente DROP TABLE , logré restablecer el estado interno de alguna manera? Pero eso es solo mi suposición.

En resumen, pruebe DROP cualquier tabla que esté creando, y CREE DE NUEVO.

Como dice pprakash arriba, copiar los archivos table.frm Y el archivo ibdata1 fue lo que funcionó para mí. (Acabo de comentar ese comentario, pero este requisito SO de 50 puntos significa que tengo que proporcionar una solución, incluso si es solo una repetición de una existente … raro).

En breve:

  1. Cierre el texto enfatizado de su cliente DB explorer (por ejemplo, Workbench).
  2. Detenga el servicio MySQL (host de Windows).
  3. ¡Haga una copia segura de prácticamente todo!
  4. Guarde una copia de los archivos de la tabla (por ejemplo, mytable.frm ) en la carpeta de datos del esquema (por ejemplo, MySQL Server / data / {yourschema}).
  5. Guarde una copia del archivo ibdata1 en la carpeta de datos (es decir, servidor / datos MySQL).
  6. Reinicia el servicio MySQL.
  7. Verifique que las tablas ahora sean accesibles, consultables, etc. en su cliente DB explorer.

Después de eso, todo estuvo bien. (¡No olvide hacer una copia de seguridad si tiene éxito!)

Los nombres de columna deben ser únicos en la tabla. No puede tener dos columnas llamadas asd en la misma tabla.

ejecutar desde CMD &% ruta% = establecer a mysql / bin

mysql_upgrade -u user -ppassword

Recientemente tuve el mismo problema, pero en el servidor Linux. La base de datos se bloqueó y la recuperé de la copia de seguridad, basándome simplemente en copiar /var/lib/mysql/* (carpeta de datos de mysql analógica en wamp). Después de la recuperación, tuve que crear una nueva tabla y obtuve el error # 1146 de mysql. Traté de reiniciar mysql, y dijo que no podía comenzar. Comprobé los registros de mysql y descubrí que mysql simplemente no tenía derechos de acceso a sus archivos de base de datos. Comprobé la información del propietario de / var / lib / mysql / *, y obtuve 'myuser:myuser' (mi usuario es yo). Pero debería ser 'mysql:adm' (también lo es la propia máquina desarrolladora), así que cambié el propietario a ‘mysql: adm’. Y después de esto mysql comenzó normalmente, y pude crear tablas, o hacer cualquier otra operación.

Entonces, después de mover los archivos de la base de datos o restaurar desde las copias de seguridad, compruebe los derechos de acceso para mysql.

Espero que esto ayude…

La razón por la que estaba enfrentando esto era porque tenía dos archivos “models.py” que contenían campos ligeramente diferentes. Lo resolví por:

  1. eliminar uno de los archivos models.py
  2. corrigiendo referencias al archivo eliminado
  3. luego ejecutando manage.py syncdb

Recibí este problema después de copiar el archivo de tabla mytable.idb desde otra ubicación. Para solucionar este problema, hice lo siguiente:

 ALTER TABLE mydatabase.mytable DISCARD TABLESPACE; 

Copia mytable.idb

 ALTER TABLE mydatabase.mytable IMPORT TABLESPACE; 

Reiniciar MySql

Tuve el mismo problema. Sucedió después de que el error de inicio de Windows, parece que algunos archivos se dañaron debido a esto. Importé DB otra vez desde el script guardado y funciona bien.

Tuve este problema debido a que un disparador no funcionaba … Trabajé después de eliminar el activador.

En mi caso, el parámetro de MySQL; lower_case_table_names fue configurado = 0 .

Causa que las consultas relacionadas con el uso de mayúsculas no funcionen.

Para mí, era un problema de mayúsculas / minúsculas en el nombre de la tabla. Tenía que asegurarme de que el nombre de la caja de la tabla coincidiera con una consulta de eliminación, las notifications tabla no eran lo mismo que Notifications . Lo arreglé haciendo coincidir el nombre del nombre de la tabla con la consulta y lo que informó MySQLWorkbench.

Lo que es extraño es que este error apareció en una statement SQL trabajada. No sé qué causó esta sensibilidad de caso. Tal vez una actualización automática de AWS RDS.