|
Восстановить поврежденный файл базы данных (сделать дамп запароленного файла базы данных)
|
|||
---|---|---|---|
#18+
Вообщем не понятно после чего перестал открываться файл базы данных с ошибкой - "database disk image is malformed". Нашел способ восстановления файла, путем создания дампа файла базы данных. Для этого нужно использовать SQLite command tool, и сделать следующее: sqlite3 metadata.db < .dump > dump.sql del metadata.db sqlite3 metadata.db < dump.sql Но на мой файл был установлен пароль, то есть зашифрован, как открыть файл базы данных через sqlite command tool указав пароль? Я делаю так: .open password databasefile.db Но это не работает... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2015, 21:51 |
|
Восстановить поврежденный файл базы данных (сделать дамп запароленного файла базы данных)
|
|||
---|---|---|---|
#18+
AleksyНо на мой файл был установлен пароль, то есть зашифрован,Поздравляю, у вас не SQLite. У вас какая-то другая база данных. В SQLite нету шифрования, и нет паролей. Есть конечно возможность взять более-менее стандартное дополнение http://www.hwaci.com/sw/sqlite/see.html и использовать его. А можно взять любую другую процедуру шифрования и подключать ее либо как расширение, либо запихнуть ее в ядро. В любом случае это уже не будет стандартным SQLite файлом. И не будет обрабатываться стандартной консолью. Так что бери много денег (или паяльник с утюгом) и иди к тем кто твою программу написал. Может они смогут восстановить данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2015, 04:21 |
|
Восстановить поврежденный файл базы данных (сделать дамп запароленного файла базы данных)
|
|||
---|---|---|---|
#18+
White OwlAleksyНо на мой файл был установлен пароль, то есть зашифрован,Поздравляю, у вас не SQLite. У вас какая-то другая база данных. В SQLite нету шифрования, и нет паролей. Есть конечно возможность взять более-менее стандартное дополнение http://www.hwaci.com/sw/sqlite/see.html и использовать его. А можно взять любую другую процедуру шифрования и подключать ее либо как расширение, либо запихнуть ее в ядро. В любом случае это уже не будет стандартным SQLite файлом. И не будет обрабатываться стандартной консолью. Так что бери много денег (или паяльник с утюгом) и иди к тем кто твою программу написал. Может они смогут восстановить данные. Эх, программу я сам писал... на c#, подозреваю что шифрование осуществил провайдер .Net библиотека System.Data.SQLite.dll. Пробовал программно удалить пароль, для этого можно использовать метод SQLiteConnection.ChangePassword(""); но он может вызываться только после метода SQLiteConnection.Open(); который и вызывает исключение "database disk image is malformed". Жалко очень, год пользовался базой и все было норм.... 2 вывода для себя сделал: 1) не использовать пароль 2) делать резервные копии постоянно. Если кто владеет .Net и знает какие-нибудь выходы из этой ситуации - буду очень благодарен... Как я понял нужно просто удалить пароль, после этого можно будет восстановаить данные с помощью стандартной консолью. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2015, 10:56 |
|
Восстановить поврежденный файл базы данных (сделать дамп запароленного файла базы данных)
|
|||
---|---|---|---|
#18+
Я не знаю деталей работы SQLite .Net провайдера, но предположу, что будучи стандартным он не использует шифрование. И если так, то тупо игнорирует пароль. Самое просто - создать новую БД хотя бы с одной таблицой, используя SQLite .Net провайдер и шифрование. Далее посмотреть на его содержимое, если там не видать create table и т.д., то видать шифрование все-таки работает, ну и тогда скорее всего конец основной БД - ее врядли восстановить. Если же видать, то шифрование не работает, и тогда БД реально порушилась. Что делать в этом случае - STFW. PS: защищаться нужно, вопрос от чего и по чем ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2015, 17:44 |
|
Восстановить поврежденный файл базы данных (сделать дамп запароленного файла базы данных)
|
|||
---|---|---|---|
#18+
Шифрование работает, в запароленном файле если открыть блокнотом китайские иероглифы... В не запароленном файле читабельные куски информации. Где-то вычитал что System.Data.SQLite использует CryptoApi шифрование (которое вроде встроенно в виндоус и его можно использовать с помощью WinApi), пароль известен... и если сначала расшифровать файл, то потом возможно он станет читабельным, то есть подлежащим востановлению. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2015, 20:23 |
|
|
start [/forum/topic.php?fid=54&msg=39044086&tid=2008655]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 262ms |
total: | 390ms |
0 / 0 |