He estado ejecutando Wordpress durante muchos años y tengo alrededor de 26000 publicaciones.
En algún momento, mis identificadores de publicación superaron un número entero de 32 bits y ahora estoy bloqueado para usar Wordpress en un sistema de 64 bits.
Estoy viendo publicaciones con ID como 4863166253.
Me gustaría cambiar mi alojamiento a un servidor de baja potencia como un raspberry pi de 32 bits.
¿Hay alguna manera de restablecer las ID de publicación para que todas estén por debajo de los 2 mil millones?
Puedes leer mi informe de errores de Wordpress aquí
Gracias.
Respuestas:
Esta respuesta es la forma en que tomaría para resolver el problema si tuviera que enfrentarlo, significa que no es la respuesta sino una de las posibilidades.
Todas las operaciones que sugeriré deben ejecutarse en un servidor de desarrollo / local en una copia de seguridad de la base de datos y no en la producción ni en la base de datos original.
Si tiene 26,000 publicaciones pero la identificación de la publicación es como 4,863,166,253, hay millones de identificadores que no se usan.
Para resolver este problema necesita:
Paso 1
Hay complementos para el alcance, pero se puede hacer mediante consultas SQL sin formato simples.
Paso 2
Restablezca los identificadores de publicación cambiándolos para que comiencen desde 1. Esto se puede hacer usando una combinación de PHP + MySQL: si recupera la columna de identificación de publicación como una matriz (por ejemplo, vía
$wpdb->get_col()
), las claves de matriz (incrementadas en 1) serían nuevas identificaciones de publicaciones para publicaciones cuya identificación actual está en valores de matriz.Tenga en cuenta que los ID de las publicaciones deben cambiarse en:
Le sugiero que ejecute esa rutina en subconjuntos de publicaciones utilizando resultados paginados y no en miles de filas en su conjunto.
Paso 3
Establezca el
AUTO_INCREMENT
índice en la tabla de publicaciones para contar + 1.Hecho
Al final de este proceso, su ID de publicación más alta debería estar fácilmente dentro del límite de 32 bits.
Prevenir el límite posterior se alcanza nuevamente
Deshabilite las revisiones de publicaciones o limítelas en número (consulte el Codex ).
Mueva las publicaciones antiguas (¿2 años? ¿5?) A un blog separado en un entorno multisitio, por ejemplo,
site1-archive.example.com
para publicaciones ensite1.example.com
.Esto se puede hacer usando el exportador de WordPress con la opción de rango de fechas.
Si planea hacer esto, es mucho mejor si se hace antes de restablecer los identificadores de publicación (paso # 2 anterior), de esta manera ambos 2 blogs pueden tener una identificación de publicación más baja.
Por supuesto, después de eso, también debe establecer una forma de redirigir las URL de publicaciones archivadas a nuevas URL.
fuente