2011-05-02 12 views
5

Estoy tratando de restaurar una base de datos desde un archivo sql a través de la función de importación phpmyadmin. Tengo este error al intentar importar la base de datos:Cómo configurar inno db en mysql 5.5.8

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=InnoDB' at line 15 

ha intentado dar vueltas en my.ini, y he hecho un poco de edición:

# Uncomment the following if you are using InnoDB tables 
innodb_data_home_dir = C:\wamp\bin\mysql\mysql5.5.8\data/ 
innodb_data_file_path = ibdata1:10M:autoextend 
innodb_log_group_home_dir = C:\wamp\bin\mysql\mysql5.5.8\data/ 
innodb_log_arch_dir = C:\wamp\bin\mysql\mysql5.5.8\data/ 
# You can set .._buffer_pool_size up to 50 - 80 % 
# of RAM but beware of setting memory usage too high 
#innodb_buffer_pool_size = 16M 
#innodb_additional_mem_pool_size = 2M 
# Set .._log_file_size to 25 % of buffer pool size 
#innodb_log_file_size = 5M 
#innodb_log_buffer_size = 8M 
#innodb_flush_log_at_trx_commit = 1 
#innodb_lock_wait_timeout = 50 

Pero tengo este error:

#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured) 

Intenté ejecutar los motores de demostración en la consola de mysql, y descubrí que el soporte para innodb está configurado de manera predeterminada. No instalé mysql por separado, lo instalé vía wampserver. El valor predeterminado para el dir de inicio y el directorio de grupo es c: \ mysql \ data, pero ese directorio no existe. Entonces lo que hice fue poner:

C:\wamp\bin\mysql\mysql5.5.8\data 

No estoy seguro si estoy haciendo lo correcto. ¿Cómo hago esto correctamente? Por favor ayuda. ¡Gracias!

+0

también reinicié todos los servicios después de editar –

Respuesta

10

Lo primero es lo primero. La configuración que ha realizado es irrelevante para el error anterior que se muestra en el registro de MySQL.

Desde la versión 5.5, MySQL cambió la sintaxis de TYPE=INNODB a ENGINE=INNODB en las sentencias DDL. Esto implica que necesita revisar las declaraciones SQL afectadas emitidas por su aplicación web para rectificar el problema.

Veo que está usando PHPMyAdmin. Este paquete puede no actualizarse para reflejar el cambio de sintaxis. Consulte la última versión de PHPMyAdmin y actualícela si es posible.

Asegúrese de que no hay tal parámetro en el fichero de opciones my.cnf como los siguientes:

skip-innodb 

De lo contrario, INNODB se apagará incluso le han puesto algunos otros parámetros correctamente.

Alternativamente, para verificar si InnoDB es el predeterminado Motor de almacenamiento, puede emitir el comando siguiente en la consola del cliente de MySQL para confirmar si InnoDB está disponible:

SHOW VARIABLES LIKE 'have_innodb'; 

Si el resultado es NO, usted tiene un mysqld binario que se compiló sin compatibilidad con InnoDB y necesita obtener uno diferente.

Por cierto, el último mensaje de error le pide que compruebe la configuración de socket MySQL que puede ser una buena pista para averiguar qué está mal en realidad en el archivo de opciones de MySQL. Si está tan seguro de que no tiene nada mal en el archivo de opciones de MySQL, puede intentar finalizar todos los procesos MySQL que se ejecutan actualmente en segundo plano antes de volver a iniciar el servidor MySQL. Esto asegura que ningún otro proceso MySQL mantenga ocupada la toma local.

Espero que esto ayude!

+0

Cambiando manualmente el 'TYPE' por' ENGINE' funciona para mí. ¡Gracias! – mr5

Cuestiones relacionadas