295 votes

Comment déverrouiller une base de données SQLite ?

sqlite> DELETE FROM mails WHERE (`id` = 71);
SQL error: database is locked

Comment puis-je déverrouiller la base de données pour que cela fonctionne ?

0 votes

Il se peut qu'un autre processus accède au fichier de la base de données - avez-vous vérifié lsof ?

0 votes

J'ai eu le même problème, le problème était dans l'antivirus quand je le désactive mon application fonctionne bien, mais quand je l'active je trouve l'erreur "la base de données est verrouillée", j'espère que cela va vous aider.

0voto

BertC Points 435

J'avais l'outil "DB Browser for SQLite" en cours d'exécution et j'y travaillais également. Évidemment, cet outil met aussi des verrous sur les choses. Après avoir cliqué sur "Write Changes" ou "Revert Changes", le verrou avait disparu et l'autre processus (A React-Native script) ne donnait plus cette erreur.

DB Browser for SQLite - Write Changes

0voto

J'ai rencontré cette erreur en consultant les mots de passe enregistrés dans Google Chrome.

# ~/.config/google-chrome/Default
$ sqlite3 Login\ Data
SQLite version 3.35.5 2021-04-19 18:32:05
sqlite> .tables
Error: database is locked

Si vous ne vous souciez pas particulièrement du processus parent ou si vous ne voulez pas arrêter le processus chrome actuel qui utilise la base de données, copiez simplement le fichier ailleurs.

$ cp Login\ Data ~/tmp/ld.sql
$ sqlite3 ~/tmp/ld.sql .tables
field_info              meta   sync_model_metadata   
insecure_credentials    stats                 
logins                  sync_entities_metadata

Cela vous permettra de lire le contenu de la base de données sans perturber ou arrêter le processus principal de chrome.

-2voto

Jake Points 15

La même chose m'est arrivée mais redémarrer l'ordinateur a fonctionné.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X