Su base de datos MySQL se ha corrompido y el campo auto incremental se ha desincronizado. Para solucionarlo, basta con actualizar el último valor del campo auto incremental con el que la tabla tiene problemas:
alter table xxxxx Auto_increment = 1234;
Donde “1234” es el valor más alto posible + 2. Usted puede obtener este valor, por ejemplo, con
select MAX(primary_key_field) FROM xxxxx;
En Pandora FMS la mayoría de corrupciones de tablas ocurren en tagente_datos
, tagent_access
, tagente_datos_string
o tevento
. Este podría ser un ejemplo sobre cómo resolver este tipo de problemas en la tabla tagente_datos_string
:
mysql> select max(id_tagente_datos_string) from tagente_datos_string; +------------------------------+ | max(id_tagente_datos_string) | +------------------------------+ | 1900270 | +------------------------------+
alter table tagente_datos_string Auto_increment = 1900272;
En los clúster MySQL estos problemas están relacionados con una mala sincronización entre nodos:
Si esto no solucione al problema,intente usar estos ajustes en el nodo SQL, editando el fichero my.cnf
:
ndb-autoincrement-prefetch-sz=1 auto_increment_increment=5 auto_increment_offset=5
Esto también puede suceder debido a que una tabla tiene una clave principal con un auto incremento que tiene un valor límite máximo muy pequeño.
Por ejemplo: tsesion
está definido por defecto como entero de 4 caracteres int(4) esto pudiera ser muy pequeño para sistemas grandes; para reparar esto modifique la el campo para alojar números más grandes:
alter table tsesion modify ID_sesion bigint(20) unsigned;