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

Cambiar prefijo de tablas en PrestaShop

Actualizado el 20 de diciembre de 2025

¿Te has preguntado alguna vez por qué en muchos tutoriales de PrestaShop recomiendan cambiar el prefijo de las tablas de la base de datos? No es una simple moda, es una práctica de seguridad muy recomendada. Al instalar PrestaShop, por defecto se asigna el prefijo ps_ a todas las tablas. Esto es como ponerle una etiqueta a cada cajón de tu armario, pero con la misma etiqueta que usan millones de tiendas online. Si un atacante conoce esta estructura, le resultará más fácil intentar inyectar código malicioso o robar información.

En este artículo, te explicaré paso a paso cómo cambiar el prefijo de tablas en PrestaShop de forma segura, ya sea que tengas una tienda nueva o ya esté funcionando. Hablaremos de seguridad, de cómo usar herramientas como phpMyAdmin y de los cuidados que debes tener para no romper nada. Al final, tendrás una guía clara y práctica para blindar un poco más tu ecommerce.

¿Por qué cambiar el prefijo de tablas en PrestaShop?

La razón principal es la seguridad. Al usar un prefijo común (ps_), tu tienda es un objetivo más fácil para ataques automatizados, como inyecciones SQL. Los bots y scripts maliciosos suelen buscar bases de datos con estructuras conocidas. Si cambias el prefijo a algo único y difícil de adivinar, como m1t13nd4_ o ventas2024_, dificultas enormemente estos ataques.

Además, si alguna vez necesitas compartir una misma base de datos para varias instalaciones de PrestaShop (algo poco común pero posible), tener prefijos distintos evita conflictos entre tablas.

[INFO] Aunque cambiar el prefijo no te hace invulnerable, es una capa extra de protección muy sencilla de implementar. Combínalo con contraseñas fuertes y actualizaciones periódicas.

Requisitos antes de empezar

Antes de lanzarte a modificar la base de datos, asegúrate de tener lo siguiente:

  • Acceso a phpMyAdmin (o cualquier gestor de bases de datos como Adminer). Lo encontrarás normalmente en el panel de control de tu hosting (cPanel, Syspanel, Plesk, etc.).
  • Acceso FTP o al administrador de archivos de tu hosting para editar un archivo de configuración.
  • Copia de seguridad COMPLETA de tu base de datos y de los archivos de PrestaShop. Esto es obligatorio. Cualquier error puede dejar tu tienda inservible.
  • Conocimientos básicos de cómo usar phpMyAdmin y editar archivos de texto.

[WARNING] No omitas la copia de seguridad. Si algo sale mal, podrás restaurar todo en minutos. Hazla ahora, antes de seguir leyendo.

Método 1: Cambiar el prefijo en una tienda nueva (la forma más fácil)

Si todavía no has instalado PrestaShop, este es el momento ideal. Durante el proceso de instalación, en el paso de configuración de la base de datos, verás un campo llamado "Prefijo de tablas". Por defecto aparece ps_. Cámbialo por cualquier combinación de letras, números y guiones bajos. Por ejemplo: m1ti3nda_.

Eso es todo. Al finalizar la instalación, todas las tablas se crearán con ese nuevo prefijo. Sencillo, ¿verdad?

Método 2: Cambiar el prefijo en una tienda ya funcionando (paso a paso)

Aquí viene la parte interesante. Si tu tienda ya está en producción, el proceso requiere más cuidado, pero es totalmente factible. Vamos a dividirlo en dos fases: modificar la base de datos y actualizar la configuración de PrestaShop.

Fase 1: Modificar la base de datos con phpMyAdmin

  1. Accede a phpMyAdmin: Busca el enlace en el panel de control de tu hosting. Si usas Syspanel (el panel de control de HestiaCP), recuerda que el puerto de acceso es el 2106. Normalmente la URL sería algo como https://tudominio.com:2106 (consulta con tu proveedor si tienes dudas).

  2. Selecciona tu base de datos: En el panel izquierdo, haz clic en el nombre de la base de datos de tu PrestaShop.

  3. Genera el comando SQL: Vamos a usar una consulta SQL para renombrar todas las tablas. No te asustes, es más fácil de lo que parece. Primero, necesitas saber el nombre de tu prefijo actual (ej. ps_). Luego, elige tu nuevo prefijo (ej. nuevop_).

    En la pestaña "SQL" (o "Consultas"), pega el siguiente código, pero cambiando ps_ por tu prefijo actual y nuevop_ por el nuevo. Copia y pega exactamente, pero con tus datos:

    SELECT CONCAT('RENAME TABLE ', TABLE_NAME, ' TO ', REPLACE(TABLE_NAME, 'ps_', 'nuevop_'), ';')
    FROM information_schema.TABLES
    WHERE TABLE_SCHEMA = 'nombre_de_tu_base_de_datos' AND TABLE_NAME LIKE 'ps_%';
    

    IMPORTANTE: Reemplaza nombre_de_tu_base_de_datos por el nombre real de tu base de datos (lo ves en la parte superior de phpMyAdmin). Y cambia ps_ por tu prefijo actual y nuevop_ por el nuevo.

  4. Ejecuta la consulta: Haz clic en "Continuar" o el botón "Ejecutar". phpMyAdmin te devolverá una lista de comandos RENAME TABLE, uno por cada tabla.

  5. Copia los resultados y ejecútalos: Selecciona todo el texto que apareció en los resultados (normalmente en la parte inferior), cópialo y pégalo de nuevo en una nueva pestaña SQL. Luego, ejecuta esa nueva consulta. ¡Listo! Todas las tablas ahora tienen el nuevo prefijo.

    [TIP] Si tu base de datos tiene muchas tablas (más de 50), este proceso puede tardar unos segundos. No recargues la página.

Fase 2: Actualizar la configuración de PrestaShop

Ahora que la base de datos está actualizada, debes decirle a PrestaShop que el prefijo ha cambiado. Esto se hace en el archivo app/config/parameters.php.

  1. Conéctate por FTP o usa el administrador de archivos de tu hosting.

  2. Navega hasta la carpeta raíz de tu instalación de PrestaShop.

  3. Abre el archivo app/config/parameters.php con un editor de texto (como Notepad++ o el editor integrado del hosting).

  4. Busca la línea que contiene database_prefix. Se verá algo así:

    'database_prefix' => 'ps_',
    
  5. Cambia ps_ por tu nuevo prefijo (ej. 'nuevop_'). Guarda los cambios y cierra el archivo.

Fase 3: Verificar y limpiar la caché

  1. Accede a tu tienda y navega por algunas páginas (productos, categorías, carrito). Todo debería funcionar con normalidad.
  2. Limpia la caché de PrestaShop: Ve al back office (tu panel de administración) a Parámetros de la tienda > Rendimiento y haz clic en "Limpiar la caché" (tanto la de Symfony como la de Smarty).
  3. Prueba el proceso de compra para asegurarte de que los pedidos se procesan correctamente.

[WARNING] Si ves errores de base de datos (página en blanco, error 500, etc.), probablemente olvidaste cambiar el prefijo en el archivo parameters.php o la consulta SQL no se ejecutó correctamente. Restaura tu copia de seguridad y vuelve a intentarlo con más cuidado.

Solución de problemas comunes (FAQ)

Aquí tienes las dudas más frecuentes de otros usuarios que han realizado este cambio.

¿Puedo cambiar el prefijo si ya tengo productos y pedidos?

Sí, absolutamente. El proceso es el mismo. El cambio solo afecta al nombre de las tablas, no a los datos internos. Tus productos, clientes y pedidos permanecen intactos.

¿Afecta esto a los módulos o temas instalados?

En la mayoría de los casos, no. Los módulos y temas modernos de PrestaShop utilizan el prefijo definido en el archivo parameters.php, no un valor fijo. Sin embargo, si tienes algún módulo muy antiguo o personalizado que haga consultas SQL directas con el prefijo ps_ hardcodeado, podría dar problemas. En ese caso, deberías revisar el código de ese módulo.

¿Qué pasa si solo cambio el prefijo en la base de datos y no en el archivo?

Tu tienda dejará de funcionar. PrestaShop buscará tablas con el antiguo prefijo y no las encontrará, mostrando errores de conexión a la base de datos. Por eso es crítico actualizar ambos lados.

¿Es seguro usar phpMyAdmin para esto?

Sí, siempre que tengas cuidado. phpMyAdmin es una herramienta estándar y segura si la usas correctamente. Solo asegúrate de no borrar tablas accidentalmente y de ejecutar las consultas exactas.

¿Hay algún riesgo de perder datos?

El único riesgo es si no haces una copia de seguridad. Si sigues los pasos al pie de la letra, los datos no se pierden, solo se renombran las tablas.

Consejos adicionales para mejorar la seguridad de tu base de datos

Cambiar el prefijo es solo el comienzo. Aquí tienes otras buenas prácticas:

  • Usa contraseñas fuertes para el usuario de la base de datos.
  • Crea un usuario específico para PrestaShop con solo los permisos necesarios (SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX).
  • Actualiza PrestaShop y sus módulos regularmente.
  • Haz copias de seguridad automáticas de la base de datos (muchos hostings lo ofrecen).
  • No uses el usuario root de la base de datos para la tienda.
  • Si usas Syspanel (HestiaCP), recuerda que el acceso a la base de datos suele ser a través de phpMyAdmin en el puerto 2106. Consulta la documentación de tu hosting para más detalles.

Conclusión

Cambiar el prefijo de tablas en PrestaShop es un proceso sencillo que mejora significativamente la seguridad de tu tienda online. Ya sea que lo hagas durante la instalación o sobre una tienda ya funcionando, siguiendo estos pasos evitarás dolores de cabeza. Recuerda siempre hacer una copia de seguridad, usar herramientas como phpMyAdmin y actualizar el archivo de configuración. Con un poco de cuidado, tu tienda estará un paso más protegida contra ataques automatizados.

Ahora que sabes cómo hacerlo, ¿te animas a probarlo? Tu tienda te lo agradecerá.

¿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