Accès Historique HS

Vous tourner en boucle de toute facon, tous les pbs d’accès à certaines pages, de sauvegarde sont « juste » du à la table jeedom.history absente
Vous indiquez l’avoir recréé hier …; et elle a de nouveau disparue ce matin
→ pb avec l’archivage qui a lieu à 5h et qui a pour but de copier les données de jeedom.history vers jeedom.history_arch en, fonction des critères de purge et de lissage

La première chose à faire me semble-t-il avant de tout perdre, c’est d’externaliser une save OK, donc soit un save antérieure au 13/11, soit recréer la table history, faire une save et l’externaliser …

Seulement ensuite, et avec la table history recrée, vous pouvez essayer de lancer manuellement un archivage via réglage >> systeme >> moteur de tache puis lancer la tache correspondant à la classe history, fonciton archive

Et regarder si la table history a de nouveau disparu

Norbert

Merci pour tous ces conseils. La seule sauvegarde dont je dispose est celle du 13/11 7h20 (c’est effectivement la seule sauvegarde que je retrouve dans le répertoire backup, mystère car ma rétention temporelle est de 30 jours, bref).
Comble de malchance (et par mégarde), je fais des sauvegardes sur mon Syno, sauf que j’ai changé de routeur il y a 2 mois et ai oublié de changer l’IP du syno dans les paramètres de sauvegarde Samba, donc pas de sauvegarde externe avant après le 03/09.
Je teste et je vous redis.

Tu peux mettre 2 siècles de rétention temporelle, si l’espace accordé aux sauvegardes n’est pas suffisant, il supprime pour mettre la dernière !

C’est donc une corrélation de 2 paramètres, la place et la rétention qui fait que.

Donc si tu n’as qu’une sauvegarde, c’est que la place allouée pour tes backups ne permet pas d’en avoir 2 !
Dans ce cas la rétention est comment dire, juste inutile !!

OK, merci.

Donc pour résumer, ce que l’on voit ici :

ce n’est pas la taille maximale d’UNE sauvegarde, mais la TOTALITE des fichiers de sauvegarde ?

Opération effectuée

Détail :

image

La table History est toujours OK

Et si tu lances une save maintenant ?

Echec au backup. Table History de nouveau absente.

Tu avais fait une save avant de relancer l’archivage ?

Non, j’avais récupéré en local la save du 13, histoire de ne pas tout perdre.
Le save après réparation de la table History, je l’avais déjà fait, et c’était un échec.

Donc c’ets la save qui supprime la table history …
Comme ca, je dirais que c’ets cette ligne dans le script de backup

mysqlcheck " . $str_db_connexion . ' --auto-repair --silent

qui abouti à la detection d’une table corrompue et à sa suppression

Checking  database...
jeedom.history
Warning  : InnoDB: Index unique is marked as corrupted
error    : Corrupt
jeedom.history

On avance !!

si tu fait ca avant et après la recreationd e la table history A lancer à parti rde l’adminsitration de la base de données ?

SELECT * FROM information_schema.TABLES WHERE TABLE_NAME = 'history'

AVANT :

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT MAX_INDEX_LENGTH TEMPORARY
def jeedom history BASE TABLE InnoDB 10 Dynamic 23057 46 1064960 0 1310720 4194304 null

Les données ont bien été conservées à priori. 23057 rows.

APRES :

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT MAX_INDEX_LENGTH TEMPORARY
def jeedom history BASE TABLE null null null null null null null null null null nu

Y a un truc sympa qu’on appelle la doc :wink: https://doc.jeedom.com/fr_FR/core/4.4/backup

Bon, ben y a effectivement un souci puisque tu n’as pas d’ENGINE !!

que donne :

SELECT * FROM history

et

SELECT cmd_id, count(*) FROM history group by cmd_id order by count(*) desc

Missed. J’ai mis en place ce backup à la création de mon système il y a bien 5 ans maintenant (pi4) et c’est un détail qui m’avait échappé. Merci pour l’info.

Commande : « SELECT * FROM history »
Temps d’éxécution : 0.001322031021118164s

Commande : « SELECT cmd_id, count() FROM history group by cmd_id order by count() desc »
Temps d’éxécution : 0.0004220008850097656s

Je ne vois en revanche pas les résultats de la requête, la seconde est intéressante, mais à part le temps d’exécution, je ne vois rien …

Refait la meme chose après une save (sans recréer la table) ?

SELECT * FROM information_schema.TABLES WHERE TABLE_NAME = 'history'
SELECT * FROM history
SELECT cmd_id, count(*) FROM history group by cmd_id order by count(*) desc
  • SELECT * FROM information_schema.TABLES WHERE TABLE_NAME = ‹ history ›
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT MAX_INDEX_LENGTH TEMPORARY
def jeedom history BASE TABLE null null null null null null null null null null null null null null null null Table ‹ jeedom.history › doesn’t exist in engine null null
  • SELECT * FROM history

[MySQL] Error code : 42S02 (1932). Table ‹ jeedom.history › doesn’t exist in engine : SELECT * FROM history

  • SELECT cmd_id, count() FROM history group by cmd_id order by count() desc

[MySQL] Error code : 42S02 (1932). Table ‹ jeedom.history › doesn’t exist in engine : SELECT cmd_id, count() FROM history group by cmd_id order by count() desc

et en recréant la table ?

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT MAX_INDEX_LENGTH TEMPORARY
def jeedom history BASE TABLE InnoDB 10 Dynamic 23057 46 1064960 0 1310720 4194304 null 2023-11-13 00:30:17 null null utf8_unicode_ci null 0 N

Commande : « SELECT * FROM history »
Temps d’éxécution : 0.0003981590270996094s

Commande : « SELECT cmd_id, count() FROM history group by cmd_id order by count() desc »
Temps d’éxécution : 0.00041985511779785156s

Pour info, après chaque réparation, je suis obligé de reboot.

le « SELECT * FROM history » ne te donne aucun contenu ?