Solucionar problemas
Drupal antiguo, conflicto con la tabla system en MySQL 8
Procedimiento retirado. No renombres la tabla
systemni añadas un prefijo aislado en producción. Drupal 6 y Drupal 7 están fuera de soporte, y una modificación parcial puede romper consultas del núcleo o de módulos.
MySQL 8 convirtió SYSTEM en palabra reservada. Un error 1064 genérico no demuestra que esa sea la causa: conserva la consulta completa y confirma que falla precisamente al referirse a system sin escapar.
Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds
Drupal 7.76 incorporó soporte para MySQL 8 y el escape de nombres reservados. La configuración $db_prefix mostrada en el procedimiento antiguo correspondía a Drupal 6; Drupal 7 usa prefix dentro de $databases['default']['default']. Ninguna de esas ramas debe volver a publicarse como sitio definitivo.
Recuperación segura
- Aísla la instalación y crea copias verificadas de ficheros y base de datos.
- Si es Drupal 7 anterior a 7.76, actualiza únicamente una copia aislada a la última versión de Drupal 7 para recuperar compatibilidad de lectura con MySQL 8.
- Si es Drupal 6, utiliza en el entorno de recuperación una base de datos compatible con esa versión; no lo expongas a Internet.
- Migra los datos a una versión mantenida de Drupal y valida usuarios, contenido, ficheros, URLs y módulos antes de publicar.
Consulta el anuncio oficial de soporte de MySQL 8 en Drupal 7.76. Si una consulta directa de un módulo continúa sin escapar la tabla, sustituye o corrige ese módulo en el clon; no renombres una tabla central para ocultar el síntoma.
Después de recuperar la lectura
Comprueba recuentos, usuarios, archivos y contenido antes de exportar hacia el destino. Que una consulta vuelva a funcionar no acredita compatibilidad de todos los módulos con MySQL 8 ni seguridad de la rama antigua.
Conserva las URL con tráfico o enlaces y prepara sus equivalencias en el sitio nuevo. Si hay consultas SQL personalizadas, inventaría sus diferencias y sustituye las que dependan de un comportamiento antiguo durante la migración.
También te puede ayudar
- Error SQLSTATE 2026 al instalar o actualizar PrestaShop Diagnostica la conexión SSL con MySQL que impide a Doctrine consultar la versión del servidor, sin c...
- Joomla 1.5 y 2.5, compatibilidad con MySQL 8 Aborda la incompatibilidad de Joomla sin soporte con MySQL 8 mediante aislamiento, inventario y migr...
- Por qué cPanel y phpMyAdmin muestran tamaños distintos para una base de datos Aclara por qué cPanel y phpMyAdmin calculan tamaños distintos, cómo localizar las tablas grandes y c...
- Tablas corruptas en una base de datos MySQL Confirma el error y motor de una tabla antes de repararla, conserva una copia y evita aplicar REPAIR...
¿Algo no cuadra o ha cambiado? Cuéntanoslo y lo revisamos.