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

Cómo cambiar el prefijo de las tablas de PrestaShop para mayor seguridad

Actualizado el 6 de febrero de 2026

¿Por qué deberías cambiar el prefijo de tus tablas en PrestaShop?

Cuando instalas PrestaShop por primera vez, el sistema crea automáticamente una serie de tablas en tu base de datos MySQL. Por defecto, todas ellas comienzan con el prefijo ps_, como ps_orders, ps_customers o ps_products. Esto es algo que millones de tiendas en todo el mundo comparten, y precisamente ahí radica el problema.

Si un atacante intenta vulnerar tu tienda, ya sabe que las tablas se llaman de una manera predecible. Es como dejar la puerta de casa con una cerradura estándar y la llave puesta. Cambiar el prefijo de las tablas de PrestaShop es una medida de seguridad básica pero muy efectiva, porque añade una capa extra de confusión: el intruso tendrá que adivinar el nuevo nombre de las tablas, lo que ralentiza o incluso detiene sus intentos de ataque.

En este artículo te voy a explicar, paso a paso y sin tecnicismos innecesarios, cómo realizar este cambio de forma segura, qué precauciones debes tomar y cómo verificar que todo ha ido bien. No necesitas ser un experto en bases de datos, solo seguir las instrucciones con calma.


¿Qué es exactamente el prefijo de una tabla?

Antes de meternos en faena, vamos a aclarar conceptos. Una base de datos es como un gran archivador lleno de carpetas. Cada carpeta es una tabla, y dentro de ella se guardan los datos de tu tienda: clientes, pedidos, productos, etc. El prefijo es simplemente el nombre que precede al de la tabla. Por ejemplo, en ps_customers, el prefijo es ps_.

PrestaShop permite que definas un prefijo personalizado durante la instalación, pero la mayoría de la gente deja el que viene por defecto. Si ya tienes tu tienda funcionando con ps_, no te preocupes: es posible cambiarlo después, y te voy a enseñar a hacerlo.


Antes de empezar: prepara tu tienda para el cambio

Cambiar el prefijo de las tablas no es una operación que debas tomar a la ligera. Un error podría dejarte la tienda inaccesible. Por eso, antes de tocar nada, sigue estos pasos preparatorios.

1. Haz una copia de seguridad completa

Esta es la regla de oro. Nunca modifiques tu base de datos sin tener una copia de seguridad reciente. Necesitas dos cosas:

  • Copia de los archivos de tu tienda (la carpeta donde está instalado PrestaShop).
  • Copia de la base de datos (un archivo .sql o un volcado completo).

Puedes hacerlo desde el panel de control de tu hosting o, si usas Syspanel (el panel de gestión de tu servidor, al que accedes por el puerto 2106), busca la sección de bases de datos y exporta la tuya. Asegúrate de que la copia se guarda en un lugar seguro, como tu ordenador o un servicio de almacenamiento en la nube.

2. Pon tu tienda en modo mantenimiento

Mientras haces el cambio, es recomendable que los clientes no puedan acceder a la tienda. Ve a Parámetros avanzados > Mantenimiento en el panel de administración de PrestaShop y activa el modo mantenimiento. Así evitarás que se registren pedidos o se modifiquen datos mientras trabajas en la base de datos.

3. Anota tu prefijo actual

Accede a tu base de datos (normalmente a través de phpMyAdmin, que encontrarás en tu panel de hosting o en Syspanel) y mira cómo se llaman las tablas. El prefijo actual será la parte que se repite en todas ellas, como ps_. Anótalo, lo necesitarás más adelante.


Método 1: Cambiar el prefijo con una consulta SQL (recomendado)

Este es el método más fiable y el que menos margen de error tiene. Vamos a usar phpMyAdmin, que es la herramienta estándar para gestionar bases de datos MySQL.

Paso 1: Accede a phpMyAdmin

Entra en tu panel de control (Syspanel, puerto 2106) y busca el acceso a phpMyAdmin. Selecciona la base de datos de tu PrestaShop. Verás la lista de todas las tablas con su prefijo actual.

Paso 2: Genera y ejecuta el comando SQL

Aquí viene la parte interesante. Necesitamos renombrar todas las tablas de ps_ a tu nuevo prefijo. Por ejemplo, si quieres usar prestashop_, el comando sería:

RENAME TABLE ps_address TO prestashop_address;

Pero hacerlo tabla por tabla sería un infierno. Existe un truco mucho más rápido: generar automáticamente todas las instrucciones con una consulta SQL. Copia y pega lo siguiente en la pestaña SQL de phpMyAdmin:

SELECT CONCAT('RENAME TABLE ', table_name, ' TO ', REPLACE(table_name, 'ps_', 'tu_prefijo_'), ';')
FROM information_schema.tables
WHERE table_schema = 'nombre_de_tu_base_de_datos'
AND table_name LIKE 'ps_%';

Sustituye tu_prefijo_ por el prefijo que quieras usar (por ejemplo, mipresta_) y nombre_de_tu_base_de_datos por el nombre real de tu base de datos, que verás en la parte izquierda de phpMyAdmin.

Al ejecutar esta consulta, no se renombra nada: solo se genera una lista de comandos RENAME TABLE listos para usar. Copia el resultado.

Paso 3: Ejecuta los comandos generados

Pega el resultado que has copiado en una nueva consulta SQL y ejecútala. Verás que todas las tablas se renombran a la vez. Si no aparece ningún error, ¡enhorabuena! Has cambiado el prefijo de todas las tablas.

Paso 4: Actualiza el archivo de configuración

PrestaShop guarda el prefijo en un archivo llamado parameters.php, que está en la carpeta app/config/. Ábrelo con un editor de texto (puedes usar el administrador de archivos de tu hosting o Syspanel) y busca una línea que diga algo así:

'database_prefix' => 'ps_',

Cambia ps_ por tu nuevo prefijo y guarda el archivo. Asegúrate de que la sintaxis sigue siendo válida (con comillas y coma al final).

Paso 5: Verifica que todo funciona

Vuelve a cargar tu tienda. Si has puesto el modo mantenimiento, desactívalo y comprueba que la página principal funciona correctamente. Entra en el panel de administración y navega por algunas secciones (clientes, pedidos, productos) para asegurarte de que no hay errores.


Método 2: Usar un módulo o script automático

Si no te sientes cómodo con SQL, existen módulos en el marketplace de PrestaShop que hacen este cambio por ti. Busca "cambiar prefijo prestashop" en el addons oficial. Estos módulos suelen hacer una copia de seguridad automática y realizar el cambio sin que tengas que tocar código.

Otra opción es usar un script PHP que hagas tú mismo, pero no lo recomiendo a menos que sepas lo que haces. Un error en el script podría dañar tu base de datos. Si decides ir por esta vía, asegúrate de probarlo primero en un entorno de desarrollo.


Errores comunes y cómo solucionarlos

Error: "Table 'ps_customer' doesn't exist"

Esto significa que el prefijo no se ha actualizado correctamente en el archivo de configuración. Vuelve a revisar parameters.php y asegúrate de que has escrito el nuevo prefijo exactamente igual que como renombraste las tablas.

Error: "Access denied" al ejecutar la consulta SQL

Puede que tu usuario de base de datos no tenga permisos para renombrar tablas. Contacta con tu proveedor de hosting o revisa los permisos en Syspanel. Normalmente, el usuario administrador tiene todos los permisos.

Error: La tienda carga pero no muestra productos

Esto suele pasar si hay caché. Ve a Parámetros avanzados > Rendimiento y limpia la caché. También puedes borrar manualmente la carpeta var/cache de tu instalación de PrestaShop (excepto el archivo .htaccess).


Consejos adicionales para proteger tu base de datos

Cambiar el prefijo es un gran paso, pero no es la única medida que debes tomar para proteger tu base de datos. Aquí tienes algunas recomendaciones extra:

  • Usa contraseñas fuertes para el acceso a la base de datos. Nada de "123456" o "admin".
  • Limita los usuarios de la base de datos: crea un usuario específico para PrestaShop y dale solo los permisos necesarios (SELECT, INSERT, UPDATE, DELETE). No uses el usuario root.
  • Mantén PrestaShop actualizado: cada versión corrige vulnerabilidades de seguridad. Es la medida más eficaz.
  • Activa el firewall de tu servidor y restringe el acceso a phpMyAdmin por IP si es posible.
  • Realiza copias de seguridad periódicas automáticas. En Syspanel puedes programarlas fácilmente.

Preguntas frecuentes (FAQ)

¿Puedo cambiar el prefijo de las tablas sin tocar la base de datos?

No, es imprescindible renombrar las tablas en la base de datos. Lo que sí puedes hacer es usar un módulo que automatice el proceso, pero el cambio físico en las tablas siempre es necesario.

¿Qué prefijo debería usar?

Elige algo único y difícil de adivinar. Evita palabras comunes como "tienda", "shop" o "store". Una buena opción es combinar letras y números, por ejemplo m1pr3st4_. No hace falta que sea imposible de recordar, solo poco predecible.

¿Pierdo datos al cambiar el prefijo?

No, el cambio solo renombra las tablas. Los datos permanecen intactos. Lo único que cambia es el nombre de las tablas.

¿Cuánto tiempo tarda el proceso?

Depende del tamaño de tu base de datos. En una tienda pequeña, el proceso completo no debería llevarte más de 15-20 minutos, incluyendo la copia de seguridad.

Si uso Syspanel, ¿hay algún paso especial?

No, solo que el acceso a tu servidor se hace a través del puerto 2106. Una vez dentro, busca la sección de bases de datos y phpMyAdmin. Todo lo demás es igual.

¿Es obligatorio cambiar el prefijo?

No es obligatorio, pero es altamente recomendable. Es una capa extra de seguridad que no cuesta nada y puede disuadir a los atacantes más perezosos. Piensa en ello como una cerradura adicional en la puerta de tu tienda.


Conclusión: una medida sencilla que marca la diferencia

Cambiar el prefijo de las tablas de PrestaShop es una de esas tareas que parecen complicadas pero que, con las instrucciones adecuadas, están al alcance de cualquiera. Has visto que solo necesitas una copia de seguridad, una consulta SQL y un pequeño cambio en un archivo de configuración. El esfuerzo es mínimo, pero el beneficio en seguridad es notable.

Recuerda que la seguridad de tu tienda online no depende de una sola medida, sino de un conjunto de buenas prácticas. Cambiar el prefijo es un excelente punto de partida, pero no olvides mantener todo actualizado, usar contraseñas robustas y hacer copias de seguridad periódicas. Así, tu tienda estará mucho más protegida frente a posibles ataques.

Si has seguido todos los pasos correctamente, tu tienda seguirá funcionando igual que antes, pero con una barrera adicional que hará la vida un poco más difícil a los que intentan acceder sin permiso. Y eso, en el mundo del comercio electrónico, es oro puro.

¿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