Manejo de problemas de escritura en la base de datos
Este artículo proporciona instrucciones detalladas sobre cómo resolver varios problemas de bases de datos MySQL, incluidos errores de escritura y errores de fallo en la creación de bases de datos.
Errores de escritura en la base de datos
Si el servidor de destino está en MySQL 5.7+ y el registro de Duplicator muestra errores como: ERROR database error write ‘…’, entonces, puede tener problemas al ejecutar MySQL en modo estricto. Si este es el caso, pruebe las siguientes opciones:
Mensajes de error comunes
- ERROR DB: No se pudo obtener la consulta CREATE para la tabla wp_XYZ. Información incorrecta en el archivo: ‘./database_store/wp_XYZ.frm’
- ERROR DE BASE DE DATOS: Esta función no tiene DETERMINISTIC, NO SQL ni READS SQL DATA en su declaración y el registro binario…
- El tablespace para la tabla xxx existe. Por favor, DESCARTAR el tablespace antes de IMPORTAR
Solución 1
Para errores de escritura generales, hay algunas opciones a considerar. Pruébelas en el orden en que se presentan. La solución más rápida es la OPCIÓN A, sin embargo, para que la opción sea permanente en el servidor, considere la OPCIÓN B.
OPCIÓN A
- Habilite el modo avanzado del instalador.
- En Opciones » Base de datos » Configuración de extracción, selecciona Personalizada para la configuración del Modo, e introduce NO_ENGINE_SUBSTITUTION en el cuadro de texto.

- Continúe y complete el proceso de instalación.
OPCIÓN B
- Abra este archivo con el bloc de notas: C:\wamp64\bin\mysql\mysql5.7.9\my.ini
- Añada la línea final al archivo:
[mysqld]
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION - Reinicie el servidor MySQL (los hosts económicos pueden necesitar contactar a su proveedor de hosting).
If OPTIONS A/B do not work, do the following:
- Inicie sesión en su servidor vía SSH como root y cree el archivo /etc/mysql/conf.d/disable_strict_mode.cnf.
- Abra el archivo e introduzca estas dos líneas:
[mysqld]
sql_mode=IGNORE_SPACE, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION - Reinicie MySQL ejecutando:
$ sudo service mysql restart
Solución 2
Resuelva problemas de escritura para consultas CREATE relacionadas con el siguiente mensaje de error:
MENSAJE DE EXCEPCIÓN: ERROR DB: No se pudo obtener la consulta CREATE para la tabla wp_XYZ. Información incorrecta en el archivo: ‘./database_store/wp_XYZ.frm’
- Ejecute una reparación de base de datos en su sitio actual de WordPress.
- En el Paso 2 del Instalador » Pestaña Tablas » Desmarque la opción Importar para la tabla que genera el problema.
- Alternativamente, al crear una copia de seguridad en el Paso 1, excluya la tabla en cuestión de ser añadida.
Solución 3
Resuelva problemas de escritura para funciones relacionadas con el siguiente mensaje de error:
ERROR DE BASE DE DATOS: Esta función no tiene DETERMINISTIC, NO SQL ni READS SQL DATA en su declaración y el registro binario está habilitado (es posible que desee usar la variable menos segura log_bin_trust_function_creators).
O, añada lo siguiente al archivo de configuración de mysql.ini:
Ejecute lo siguiente en la consola de MySQL:
SET GLOBAL log_bin_trust_function_creators = 1;
O, añada lo siguiente al archivo de configuración de mysql.ini:
log_bin_trust_function_creators = 1
La configuración relaja la comprobación de funciones no deterministas. Las funciones no deterministas son funciones que modifican datos (es decir, tienen sentencias de actualización, inserción o eliminación).
Para más información, ver aquí. Para detalles completos, ver este artículo.
Si tu proveedor de hosting no permite la configuración anterior, contacta con ellos directamente o considera trabajar con el desarrollador que escribió las funciones y haz que se reevalúen para que funcionen correctamente con los requisitos del motor de base de datos.
Solución 4
Durante una instalación, si recibes un mensaje como el que se muestra a continuación, es probable que necesites eliminar uno de los archivos tablename.ibd, que no se eliminó correctamente durante el proceso de eliminación de la tabla de la base de datos.
Para un resumen completo de todas las posibles soluciones para este problema, ver este artículo de stack-overflow.
Fallo en la creación de la base de datos
Se recibe un mensaje como "No se puede crear la base de datos..." al intentar usar la acción de crear base de datos.
Solución
"No se puede crear la base de datos..." normalmente significa que tu host no admite la creación de bases de datos a través de código PHP. En este caso, necesitarás crear una base de datos a través de las herramientas que proporcionan.
En la mayoría de los hosts, puedes hacerlo a través del cpanel. Ponte en contacto con tu host para obtener instrucciones sobre cómo crear una nueva base de datos. Los usuarios de Duplicator Pro deberían poder usar la pestaña de conexión de cPanel para iniciar sesión en sus cuentas de cPanel y crear la base de datos a través de la interfaz del instalador de cPanel. Alternativamente, puedes usar los modos Importar o Sobrescribir.
Ver también:
¿Proveedores de hosting recomendados para Duplicator?
http://dev.mysql.com/downloads/mysql
https://make.wordpress.org/core/2015/04/02/the-utf8mb4-upgrade