Cómo solucionar una clave primaria faltante en la tabla wp_options de WordPress

En ciertas circunstancias, wp_options (u otra tabla) puede perder su índice de clave primaria.

La razón exacta de este problema no está completamente clara. Parece que puede ocurrir si la base de datos ha sido migrada manualmente de una base de datos a otra, o mediante un Plugin o herramienta que no cubrió todas las situaciones, como el uso de diferentes versiones de MySQL o tipos como InnoDB o MyISAM.

Para dejarlo claro: WP STAGING no es la causa de este error. Solo te ayudamos a detectarlo mostrando una advertencia destacada en tu panel de administración cuando ocurre:

Lo hacemos porque este error es crítico y muy insidioso. No lo notarás hasta que sea demasiado tarde para solucionarlo rápidamente. Cuanto más esperes para corregirlo, más difícil será resolverlo.

Esto se debe a que tu sitio web funcionará casi igual que antes, pero con diferencias internas.

Veamos un ejemplo rápido de por qué esto importa para la tabla wp_options:

La tabla wp_options tiene una columna llamada option_id. Este ID suele ser único y solo se puede asignar una vez a cada fila. El ID se incrementa automáticamente para cada fila de esta manera:

option_id | option_name
1                     |  option1
2                     | option2
3                     | option3

Si falta la clave primaria, el option_id ya no se incrementa y todas las nuevas filas recibirán el número option_id 0, así:

option_id | option_name
1                     |  option1
2                     | option2
3                     | option3
0                     | option4
0                     | option5
0                     | option6

El problema aparece cuando intentas exportar e importar estas filas a otra base de datos. El option_id debe ser un número único, por lo que mostrará errores SQL como «No se puede insertar clave duplicada…» y detendrá la migración.

Como resultado, WP STAGING y cualquier otro Plugin de migración no pueden ejecutar la transferencia de datos de la base de datos a otra base de datos. Por ejemplo, el proceso de publicación del sitio de staging al sitio de producción fallará.

Esta captura muestra una tabla wp_options normal con la clave primaria establecida en la columna option_id:

Comprobar si falta el índice de clave primaria en la tabla wp_options de WordPress. Imagen con índice

Esta segunda captura muestra la tabla wp_options con la clave primaria faltante:

Comprobar si falta el índice de clave primaria en la tabla. Imagen con índice faltante

Nota: Necesitarás una herramienta de gestión de base de datos para este tutorial, por ejemplo «adminer» o phpMyAdmin.

Cambiar los option_id existentes

  1. Haz un Backup completo de tu base de datos y descárgalo.
  2. Modifica los valores de option_id para todos los IDs duplicados.
    Te sugerimos obtener el número más grande que tengas en la columna option_id e ir incrementándolo uno a uno. Este screencast muestra cómo hacerlo:

Añadir el índice de clave primaria y modificar la tabla

  1. Abre phpMyAdmin o adminer y navega a la tabla wp_options.
  2. Haz clic en «modificar índices» como en esta captura:
  3. Luego establece «option_id» como clave primaria:
  4. Si obtienes el error «Duplicate entry ‘0’ for key PRIMARY», significa que aún tienes IDs duplicados en la tabla y no has cambiado todos:
  5. En ese caso, localiza los restantes e incrementa sus valores para que no haya más duplicados en la tabla. Luego repite el proceso para añadir la CLAVE PRIMARIA a la tabla.

Después de corregir la clave primaria faltante, estás listo para publicar el sitio de staging en el sitio de producción. Sin embargo, se recomienda hacer un Backup de la base de datos antes.

Updated on mayo 22, 2026

Alaa Salama

Autor: Alaa Salama

Llevo más de una década trabajando en soporte porque realmente disfruto el lado humano de la tecnología. Ya sea resolviendo un problema complejo de WordPress o desarrollando plugins personalizados y fragmentos de código para simplificar flujos de trabajo, mi objetivo siempre es reducir la fricción y ayudar a las personas a trabajar de forma más inteligente. Para mí, no hay nada más gratificante que ver cómo una solución que he creado mejora el día de otra persona.

Cuando estoy desconectado, normalmente sigo estando “bajo el capó” de algo. Me apasionan la optimización de servidores y la electrónica DIY, y suelo dedicar mi tiempo libre a proyectos de hogar inteligente y reparaciones de hardware. Valoro especialmente el tiempo que paso en mi taller de casa con mis hijos. Juntos nos ocupamos de todo, desde arreglos domésticos hasta proyectos creativos, fomentando el gusto por construir cosas que perduren.