Възстановяване на скайп на прилепи истории (), savepearlharbor

Възстановяване на скайп на прилепи истории (), savepearlharbor
Promuchavshis отново за възстановяване на pobivsheysya база, решили да очертае бърз справочник, аз бях в състояние да се възстанови почти цялата история на Skype съобщения. SQLite3 експерти са поканени да напишат по-добър начин, отколкото се чувствах на случаен принцип.

праистория

Преинсталира OS Win7, задайте скайп (6), рутинно копирали изцяло профил папка от старата:
% AppData% \ Roaming \ Skype \ moy_profil \
на ново място.

Инструменти и материали

ние анализираме база данни

Информация за администратори, програмисти и опитни потребители

2. Отворете main.db файла (около 150 мегабайта за мен).

3. База данни - Почтеност Проверка - Full Scan.

Проверка на целостта на базата данни с помощта на «PRAGMA integrity_check».
Резултат: успешна. За да видите тази грешка, следвайте оператор «PRAGMA integrity_check» в раздела "Run Query".

4. Изпълнява определена команда, получавате много ужасни буки:

"*** в основната база данни ***
На страница дърво 5482 клетка 13: ROWID 262638 от ред (макс голям от родител максимум от 255 232)
На страница дърво 22553 клетка 8: RowId 255233 извън строя (мин по-малко от родител мин на 262 638)
На страница дърво 5601 клетка 10: ROWID 270500 от ред (макс голям от родител максимум от 255 358)
На страница дърво 9610 клетка 10: RowId 255359 извън строя (мин по-малко от родител мин на 270 500)
На страница дърво 25320 клетка 145: 2-ри препратка към страница 5482
На дърво страница 25320 145 клетка: Дете дълбочина страница различава
На дърво страница 25320 146 клетка: Дете дълбочина страница различава
На страница дърво 25827 клетка 290: 2-ри препратка към страница 5601
На дърво страница 25827 290 клетка: Дете дълбочина страница различава
На дърво страница 25827 291 клетка: Дете дълбочина страница различава
На страница дърво 8955 клетъчна 0: 2-ри препратка към страница 28154
На страница дърво 27843 клетка 0: 2-ри препратка към страница 28136
Страница 5335 никога не се използва
Страница 5344 никога не се използва
Страница 5369 никога не се използва
... има много такива никога не се използва
Page 28 212 никога не се използва "
«Wrong # на записи в индекса IX_Messages_remote_id»
«Wrong # на записи в индекса IX_Messages_timestamp_convo_id_type»
«Wrong # на записи в индекса IX_Messages_timestamp_chatname»
«Wrong # на записи в индекса IX_Messages_call_guid»
«Wrong # на записи в индекса IX_Messages_convo_id_timestamp_consumption_status_sending_status»
«RowId 95101 липсва индекс IX_Contacts_buddystatus»
«RowId 103110 липсва индекс IX_Contacts_buddystatus»
«RowId 209626 липсва индекс IX_Contacts_buddystatus»

Тъй като не експерт SQLite и не съм нетърпелив да се научат всяка грешка, просто действа.

Google като SQLite изсере на база данни, се оказва по този начин:

1. Изтеглете sqlite3 команден ред за Windows или «ап-да инсталирате sqlite3» за * никс. За първи път експериментира под Windows, но по-късно трябваше да отиде на Linux конзолата, тъй като vindovyh не SQLite3 доста добре възпитани показа.

2. На Windows, копиране sqlite3.exe в папка с копие на базата данни (архива с предишния Windows, която не се развали Skype). Тогава тичам CMD (Start> Run).
За Linux - просто изпълнява:

CD път към папка до база-и-sqlite3.exe
sqlite3 main.db .dump >> myDumpSQLite.sql

(Това «main.db [празно] .dump, не се смесват)

Всеки, запознат SQL, знаете ли защо трябва да изтриете последния ред във файла, и вместо да го напиша:
COMMIT;

(Можете да и се откаже сделката, но след това ще бъде много дълъг, за да импортирате данни в нова база данни.)

4. Създаване на нова, чиста база от myDumpSQLite.sql файл (препоръчва се за Linux).

sqlite3 основната recovered.db

Възможно е да изпитате съобщения за грешки

Аз съм бил около това са:

Грешка: в близост до линията 329 619: първичен ключ трябва да е уникално Грешка: в близост до линията 329 620: първичен ключ трябва да е уникално Грешка: в близост до линията 329 621: първичен ключ трябва да е уникално Грешка: в близост до линията 329622: първичен ключ трябва да е уникално. няколко десетки такива съобщения

Поради факта, че ние направихме COMMIT в края на файла - грешката ще бъде игнориран. Теоретично, нещо се губи (някои единични съобщения, може би дори някои изчезват чат). Но това е нищо в сравнение със загубата на цялата база данни, която предлага на Microsoft.

Получената основната recovered.db файл трябва да тежи толкова, колкото и SQL-файл (имам 123Mb). Ако пропуснете стъпка 3 или нещо се обърка - вземете празен файл безполезни.

Имам само на Linux, така че ако Windows не работи, но Linux да не влизате - за правилните приятели изглежда). Vindovyh sqlite3 издаден:

Грешка: непълна SQL: INSERT INTO "Контакти" СТОЙНОСТИ (951 .......

5. Копирайте файла в папката% AppData% \ роуминг \ Skype \ moy_profil \ под main.db името, замяна на счупени (Skype трябва да се изключи).

6. Стартирайте Skype. Въведете потребителско име и парола (имам пистолет е отишъл).

7. печалба. Всички мнения се завръщат!

Може би там е по-компетентен начин за възстановяване на базата данни. Аз дори намери някои алчни полезност. но той не ми помогне (може би е необходимо да се даде парите?). Повече се опита SkypeHistoryReader, Слава Чат Търсене, SQLite Maestro и всеки по различен начин.