🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo optimizar una base de datos MySQL para PrestaShop en Syspanel

Actualizado el 14 de abril de 2026

¿Tu tienda PrestaShop va lenta? ¿Las páginas tardan en cargar o notas que el panel de administración responde con retraso? Si has llegado hasta aquí, probablemente ya sabes que el rendimiento de tu tienda online depende en gran medida de la base de datos MySQL. En este artículo, te guiaré paso a paso para optimizar tu base de datos MySQL para PrestaShop en Syspanel. No necesitas ser un experto técnico; solo sigue mis instrucciones y verás cómo tu tienda vuela.

¿Por qué es clave optimizar MySQL en PrestaShop?

PrestaShop es un sistema de gestión de contenidos (CMS) muy potente, pero también es muy exigente con la base de datos. Cada vez que un cliente busca un producto, añade algo al carrito o realiza un pedido, se ejecutan decenas de consultas SQL. Si tu base de datos no está optimizada, esas consultas se vuelven lentas y, en consecuencia, tu tienda se vuelve frustrantemente lenta.

Además, una base de datos desordenada acumula tablas temporales, registros de errores y caché obsoleta. Esto no solo ralentiza la tienda, sino que también puede provocar errores 500 o tiempos de espera. Por eso, aprender a optimizar MySQL PrestaShop es una habilidad esencial para cualquier propietario de tienda online.

Primeros pasos: accede a Syspanel

Antes de empezar, debes acceder a tu panel de control Syspanel. Recuerda que la URL de acceso suele ser https://tudominio.com:2106 (puerto 2106). Una vez dentro, busca la sección de Bases de Datos. Allí verás todas las bases de datos asociadas a tus sitios web.

Identifica la base de datos de PrestaShop

Lo más probable es que tengas varias bases de datos. La de PrestaShop suele llamarse algo como prestashop_tienda o bd_tienda. Si no estás seguro, revisa el archivo config/settings.inc.php de tu instalación de PrestaShop. Allí encontrarás el nombre exacto de la base de datos.

1. Limpieza inicial: elimina datos innecesarios

Antes de tocar configuraciones técnicas, lo primero es limpiar la base de datos. PrestaShop acumula mucha basura con el tiempo: carritos abandonados, sesiones caducadas, logs de errores, etc.

Pasos para la limpieza:

  1. Accede a phpMyAdmin desde Syspanel. Busca la opción "phpMyAdmin" o "Administrar base de datos".
  2. Selecciona tu base de datos de PrestaShop.
  3. Vacía las tablas temporales:
    • ps_connections (conexiones de visitantes)
    • ps_connections_page (páginas visitadas)
    • ps_guest (invitados)
    • ps_statssearch (búsquedas realizadas)
    • ps_search_index y ps_search_word (índices de búsqueda, puedes regenerarlos después)
  4. Elimina carritos abandonados (tabla ps_cart con más de 30 días de antigüedad).
  5. Limpia sesiones caducadas (tabla ps_session).

[WARNING] Antes de eliminar cualquier tabla, haz una copia de seguridad. Ve a la pestaña "Exportar" en phpMyAdmin y guarda un archivo .sql.

2. Optimiza el motor de almacenamiento: usa InnoDB

PrestaShop funciona mejor con el motor de almacenamiento InnoDB que con MyISAM. InnoDB soporta transacciones, claves foráneas y mejor concurrencia, lo que se traduce en un mejor rendimiento.

Cómo cambiar a InnoDB:

  1. En phpMyAdmin, selecciona todas las tablas de tu base de datos.
  2. En el menú desplegable "Con seleccionados", elige "Cambiar motor de almacenamiento".
  3. Selecciona InnoDB y confirma.

[INFO] Si alguna tabla no puede convertirse, no te preocupes. Las tablas temporales o de caché pueden seguir en MyISAM sin problema.

3. Ajusta la configuración de MySQL en Syspanel

Ahora toca modificar los parámetros de MySQL para que funcionen óptimos para PrestaShop. Accede a Syspanel > Configuración de Servicios > MySQL.

Parámetros clave que debes ajustar:

  • innodb_buffer_pool_size: Esta es la memoria que MySQL reserva para almacenar en caché los datos de las tablas InnoDB. Para una tienda PrestaShop mediana, recomiendo poner entre el 50% y el 70% de la RAM disponible. Por ejemplo, si tu servidor tiene 4 GB de RAM, pon 2G o 2.5G.
  • query_cache_size: Aunque en versiones modernas de MySQL (8.0+) está obsoleto, en versiones anteriores ayuda. Pon un valor entre 64 MB y 128 MB.
  • max_connections: PrestaShop puede tener muchas conexiones simultáneas. Pon un valor como 150 o 200 si tu servidor lo soporta.
  • tmp_table_size y max_heap_table_size: Aumenta estos valores a 128 MB o 256 MB para evitar que las tablas temporales se escriban en disco.
  • thread_cache_size: Ponlo a 8 o 16 para reducir la sobrecarga de crear nuevos hilos.

[TIP] Si no sabes qué valor poner, usa la herramienta mysqltuner.pl desde la terminal de Syspanel. Te dará recomendaciones personalizadas.

Cómo aplicar los cambios:

  1. Ve a Syspanel > Configuración de Servicios > MySQL.
  2. Busca el archivo de configuración (normalmente my.cnf o my.ini).
  3. Edita los valores mencionados arriba.
  4. Guarda los cambios y reinicia MySQL desde el panel.

4. Indexa correctamente las tablas

Los índices son como los índices de un libro: aceleran las búsquedas. PrestaShop ya crea algunos índices, pero con el tiempo pueden desordenarse o faltar algunos.

Cómo optimizar índices:

  1. En phpMyAdmin, selecciona tu base de datos.
  2. Ve a la pestaña "SQL" y ejecuta la siguiente consulta para ver el estado de las tablas:
    SHOW TABLE STATUS;
    
  3. Busca tablas con un valor alto en Data_free (espacio desperdiciado). Ejecuta:
    OPTIMIZE TABLE nombre_de_la_tabla;
    
    Repite para todas las tablas que lo necesiten.

[WARNING] Optimizar tablas puede bloquear la escritura durante unos segundos. Hazlo en horas de bajo tráfico.

5. Activa la caché de PrestaShop

Una base de datos optimizada no sirve de nada si PrestaShop no usa caché. La caché reduce drásticamente las consultas a MySQL.

Configura la caché en PrestaShop:

  1. Ve a Parámetros de la tienda > Rendimiento.
  2. Activa la Caché y elige "Sistema de archivos" o "Memcached" si lo tienes instalado.
  3. Activa "Combinar, comprimir y almacenar en caché los archivos CSS/JS".
  4. En "Almacenamiento en caché de consultas SQL", actívalo.

6. Programa tareas de mantenimiento automáticas

No querrás tener que hacer esto manualmente cada semana. En Syspanel puedes programar tareas CRON para mantener tu base de datos optimizada.

Ejemplo de tarea CRON:

0 3 * * * /usr/bin/mysqlcheck -u usuario -pcontraseña --optimize --all-databases

Esto optimizará todas las bases de datos a las 3:00 AM cada día.

[TIP] Cambia usuario y contraseña por los datos reales de tu base de datos. Nunca pongas la contraseña en texto plano en un CRON; mejor crea un archivo .my.cnf con permisos seguros.

7. Monitorea el rendimiento

Después de aplicar todos estos cambios, es importante verificar que todo funciona bien. En Syspanel puedes ver el uso de CPU, RAM y las consultas por segundo de MySQL.

Herramientas útiles:

  • phpMyAdmin: En la pestaña "Estado" verás estadísticas de rendimiento.
  • Syspanel: En "Estadísticas del servidor" puedes monitorear la carga.
  • PrestaShop: Instala un módulo de rendimiento como "PrestaShop Performance" para ver tiempos de carga.

Preguntas frecuentes (FAQ)

¿Cuánto tiempo se tarda en optimizar la base de datos?

Depende del tamaño. Para una tienda con 10,000 productos, el proceso completo (limpieza + ajustes) puede tomar entre 30 minutos y 1 hora.

¿Puedo dañar mi tienda si hago algo mal?

Si haces una copia de seguridad antes, no hay problema. Si algo falla, restaura la copia. Siempre ten un backup reciente.

¿Necesito reiniciar MySQL después de cada cambio?

Sí, los cambios en my.cnf requieren reinicio. Pero los cambios en tablas (como optimizar) no.

¿Qué hago si mi tienda sigue lenta después de optimizar?

Revisa otros factores: hosting compartido, plugins mal optimizados, imágenes pesadas o un tema mal programado. La base de datos es solo una parte del problema.

Conclusión

Optimizar tu base de datos MySQL para PrestaShop en Syspanel no es complicado si sigues estos pasos. Empieza por limpiar datos innecesarios, ajusta la configuración de MySQL, indexa correctamente y activa la caché. Con un mantenimiento periódico (programado con CRON), tu tienda volverá a ser rápida y tus clientes no se irán por la lentitud.

Recuerda que el rendimiento de PrestaShop no solo depende de la base de datos, pero es el primer lugar donde debes mirar. Si tienes dudas, Syspanel ofrece soporte técnico y documentación adicional. ¡Manos a la obra y a disfrutar de una tienda más rápida!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel