Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Base de Données Plex Corrompue

Featured Replies

Bonjour à tous,

J'ai un problème persistant de corruption de ma base de données Plex sur mon serveur Unraid et j'ai épuisé toutes les méthodes de réparation sans perte documentées. Je cherche de l'aide pour comprendre pourquoi l'outil de réparation interne de Plex refuse de s'exécuter.

Ma Configuration

  • Système : Unraid

  • Conteneur Plex : plexinc/pms-docker (Image officielle de Plex, utilise l'UID/GID par défaut plex)

  • Problème : Base de données constamment marquée comme corrompue (alerte récurrente).

  • Objectif : Réparer le fichier DB actuel sans perte de données (historique de lecture, ajustements manuels, etc.).

Ce qui a été Tenté

J'ai suivi la procédure officielle de réparation, mais je rencontre deux blocages techniques incontournables :

  1. Échec de la Réparation avec les Outils Génériques (SQLite externe)

  • Tentatives : Utilisation de DB Browser for SQLite sur Windows et de l'outil sqlite3 générique sur l'hôte Unraid.

  • Commande : VACUUM;

  • Résultat : Échec systématique avec l'erreur no such collation sequence: icu_root.

  • Conclusion : La DB Plex utilise des extensions ICU spécifiques que seuls l'exécutable Plex SQLite fourni par Plex peut gérer.

2. Échec de la Réparation avec l'Outil Interne de Plex (Plex SQLite)

J'ai utilisé la commande find dans le conteneur pour identifier le chemin de l'exécutable : /usr/lib/plexmediaserver/Plex SQLite. J'ai ensuite tenté d'exécuter la réparation directement dans le conteneur.

  • Tentative d'exécution forcée :

    1. Je suis entré dans le conteneur (docker exec -it "Plex-Media-Server" /bin/bash).

    2. J'ai identifié le PID du processus Plex Media Server (PID : 261) et l'ai tué : kill -9 261. (Le verrou sur le fichier a été levé.)

    3. J'ai immédiatement exécuté la commande de réparation : Bash"/usr/lib/plexmediaserver/Plex SQLite" "/config/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db" "VACUUM;"

  • Résultat : La commande est revenue instantanément au prompt (root@Ronald:/#), indiquant qu'elle n'a pas été exécutée du tout (zéro seconde de traitement), même sans verrou et avec le chemin correct.

  • Conclusion : L'exécutable Plex SQLite est bloqué, probablement par un problème d'environnement, de variable non chargée, ou de permissions non évidentes, empêchant le lancement du programme en mode "standalone".

Ma Question

J"ai épuisé toutes les options pour forcer cet outil à fonctionner. Étant donné que la réparation sans perte est techniquement bloquée, et que je refuse de perdre mon historique :

Quelqu'un utilisant l'image officielle (plexinc/pms-docker) a-t-il réussi à exécuter le VACUUM; avec succès ? Si oui, quelle est la commande exacte, et avez-vous dû charger des variables d'environnement spécifiques avant de lancer l'exécutable Plex SQLite ?

Merci d'avance pour toute aide !

Une chose à préciser, le message d'erreur de la base de donné vient du téléphone, je n'ai jamais eu de message sur unraid ou l'interface web.

Edited by Mald3

Salut,

J'ai récupéré ma base avec ce soft il y a quelques temps : https://github.com/ChuckPa/DBRepair

Il fonctionne plutot bien, il suffit d'entrer dans le conteneur comme tu l'as déjà fait, et de se mettre au même niveau que le /config.

Un wget de l'URL du script sur le dépot github, ne pas oublier un chmod +x pour le rendre executable et de lancer le script.

Après depuis le script tu peut arrêter proprement PMS et faire des traitements sur la base (check/repair/...)

En tout cas pour moi ça m'a évité de faire une RAZ de la base.

Edited by hot22shot

  • Author
20 hours ago, hot22shot said:

Salut,

J'ai récupéré ma base avec ce soft il y a quelques temps : https://github.com/ChuckPa/DBRepair

Il fonctionne plutot bien, il suffit d'entrer dans le conteneur comme tu l'as déjà fait, et de se mettre au même niveau que le /config.

Un wget de l'URL du script sur le dépot github, ne pas oublier un chmod +x pour le rendre executable et de lancer le script.

Après depuis le script tu peut arrêter proprement PMS et faire des traitements sur la base (check/repair/...)

En tout cas pour moi ça m'a évité de faire une RAZ de la base.

Merci, je pense que ça a fonctionné... ou en tout cas je vais être vigilant aux alertes (souvent le matin...). J'ai encore des doutes parce que ça a pris littéralement 3 secondes pour vérifier la base de données, toi aussi ? Merci en tout cas. Ah oui, j'ai dû aussi refaire mon installation Plex (en gardant la config initiale, il ne voulait plusmarrer)

Salut,

Un peu tard, mais j'ai aussi du utiliser le script venant : https://github.com/ChuckPa/DBRepair

Car la BD mon Plex était en erreur et ca fait le travail.

  • Author
9 hours ago, Deen said:

Salut,

Un peu tard, mais j'ai aussi du utiliser le script venant : https://github.com/ChuckPa/DBRepair

Car la BD mon Plex était en erreur et ca fait le travail.


Est ce que tu as des souvenirs sur le temps que ça avait pris ?

J'ai une BD assez grosses

Me semble de mémoire quelques minutes

Ca pas été long, mais ca doit faire 1 ans de ca.

Pour ma part la vérif avait pris quelques secondes aussi, c'est les sauvegardes au début qui étaient le plus long.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.