[Q] WhatsApp: How to merge databases - General Questions and Answers

Heya.
I have 2 whatsapp chat backup files in the format msgstore.db.crypt7 / 5.
If I install whatsapp with one of the files in the databases folder, it will ask if I want to import them and does it successfully.
But if I have 2 files in there, it just chooses one.
I can decrypt one of them since its the current one I am using and my phone is rooted, but the other one is old and from before the phone was rooted.
So the first one I can open with SQLite viewer, the second one I can't - so can't merge sqlite files.
I tried using WhatsApp Xtract but it seems its old and doesn't support crypt5/7 formats.
How can I accomplish this?
Thanks!

Related

[Q] How to extract SMS from ROM backups?

Hi all,
well, the heading says it all - I need to extract the text messages stored in my several ROM backups and maybe integrate them with my current ROM if possible. The backups were done with 4EXTrecovery
So far I found the info that these text messages are stored in /data/data/com.android.providers.telephony/databases/mmssms.db - but how do I get to those inside the backups? Anyone here know a way to combine several of these files into one?
Any help greatly appreciated
i'm interresting too wait for any anwsers !
This question has been asked and answered many times, you can do a search to find many possible solutions.
If you have root and are comfortable playing around with the files, the file you listed is a simple sqlite database. You can extract it and merge it on a PC using an sqlite manager application. (Be sure not to duplicate any repeated messages!) Copy the merged file back to /data/data/com.android.providers.telephony/databases/ and you're done!
superatrain said:
This question has been asked and answered many times, you can do a search to find many possible solutions.
If you have root and are comfortable playing around with the files, the file you listed is a simple sqlite database. You can extract it and merge it on a PC using an sqlite manager application. (Be sure not to duplicate any repeated messages!) Copy the merged file back to /data/data/com.android.providers.telephony/databases/ and you're done!
Click to expand...
Click to collapse
I'm glad I found this reply, but I got stuck at the stage where sqlitemanager asks me for a password as the data.yaffs2.img file is encrypted. My backup was performed using CWM backup and I figured that I'll find the "com.android.providers.telephony/databases/" under there but as I already said, I can't open the data.yaffs2.img to access "com.android.providers.telephony/databases/".
Please help
I too was wondering the same thing, that's awesome! I will give it a try...
Sent from my Galaxy Nexus using xda premium

[Q] Help in restoring whatsapp Database folder

I have recently switched to a new Custom ROM and in the process of doing it have lost the whatsapp DB folder and hence i cannot restore my old messages from whatsapp. Unfortunately i did not make a backup of the folders, have tried few of the data recovery folders but they were only able to restore images and docs but not the db file.
Could someone let me know if there is anyway we could recover the Whatsapp DB folder after it has been deleted.
Currently using
ROM: cyanogenMod 10.1

How to open backed up Whatsapp chat DB.crypt8

I accidentally deleted some important conversations from my Whatsapp on my Galaxy note 4 and iam trying to find out if its possible to restore them. I went to my root folder to whatsapp/databases and inside there are encrypted files, each one of several kb,of my conversations for example: msgstore.db.crypt8. I even sent these files to my email to have them available in the future. So my question is if its possible to open there files somehow? Thanks.
bobesko said:
I accidentally deleted some important conversations from my Whatsapp on my Galaxy note 4 and iam trying to find out if its possible to restore them. I went to my root folder to whatsapp/databases and inside there are encrypted files, each one of several kb,of my conversations for example: msgstore.db.crypt8. I even sent these files to my email to have them available in the future. So my question is if its possible to open there files somehow? Thanks.
Click to expand...
Click to collapse
Yes, but you first need to extract the key. See: WhatsApp Key/DB Extractor
Hi, can we decrypt a db.crypt8 file without a key?

[GUIDE] Merge Multiple Whatsapp Backup File Into One (No Root Required)

I am not sure if I post at the right place but I would like to share this to everyone as I understand how hard it is to find a solution that works. With this guide, you will get to keep the original WhatsApp message information (such as thumbnail, link, emoticon, etc.) and work like it is a restore file that backup from itself.
There will be three main phase you need to perform. You can get all required file in the attachment. Make sure you backup your end result before jump into the next phase.
Phase A: Decrypt and obtain msgstore.db file
This is the easiest method I can find and NO ROOT is required to perform this. All you need is to follow the instruction below.
INSTRUCTIONS:
Extract "WhatsAppKeyExtract.zip" (from attachment) on your computer maintaining the directory structure.
Browse to the extracted folder and click on "WhatsAppKeyExtract.bat".
Enable USB Debugging on your device.
Connect your device via USB**, unlock your screen and wait for "Full backup" to appear.
Leave the password field blank and tap on "Back up my data".
The "extracted" folder will now contain your "whatsapp.key", "msgstore.db" and "wa.db".
**If you have never used USB Debugging before, you may also need to verify the fingerprint.
(Credited to TripCode for providing this application! Here is the link to original thread.)
For my case, I have three backup files that named msgstore.db.crypt, msgstore.db.crypt7 and msgstore.db.crypt8. Although I know there might be other easier method to achieve this, I choose to restore each file (by uninstall and install WhatsApp) and run the above method to get my decrypted file. Hence I can be sure that all decrypted file will come in the same structure (I will show you what this mean later) and prevent any error that may cause by that.
Phase B: Edit and prepare database for merge
This will be a bit tricky. But in general, you MUST make sure that you have no overlapping message history between your files.
INSTRUCTION:
Download SQLite Database Browser and install on your computer.
Open the database you want to edit.
Click on [Browse Data] tab.
In Table drop down menu, click on [messages] (You will see all your WhatsApp message here).
Use it like you are using Excel, select any row that is overlapping (EXCEPT the row with many [-1] value) and click on [Delete Record], then click on [Write Changes] (this means you have save the change to the database).
Keep doing this for your remaining file and close all windows of SQLite Database Browser when you are done.
(Thanks ztedd for posting his own method where I get inspired from. This is the link to his original post.)
For my case, the number of column of all my file when display in "messages" table is different (newer WhatsApp database file have more data type). This is the reason I restore and run backup again to make sure all my file have the same structure. Also, a quick tips to figure out which row is overlapping or duplicate is export the messages table to CSV file and open it with Excel. You will need to copy the first few column of each database and paste them together, then use the feature that come with Excel such as Filter and Remove Duplicate to identify which row number you need to remove from actual database file.
IMPORTANT - Never edit your database on excel and import it back to your original database. This will remove all thumbnail, link, emoticon and etc. and show you some weird message when you restore back to your device.
Phase C: Merge database file
This method only can merge two file at once. You may need to do this several time depending how many database you want to merge. I suggest you start from the oldest to newest.
INSTRUCTION:
Rename the older file to old.db.
Rename the newer file to new.db
Create a new folder called Merge and copy the file old.db, new.db and merjapp.jar into it.
Run Command Prompt on your computer (or click on Start Menu and search for cmd)
In Command Prompt, type each of the following separately and press Enter:
Code:
cd desktop
cd merge
You now should see [C:\Users\<UserName>\Desktop\Merge>] in cmd window.
Now type the following and press Enter:
Code:
java.exe -jar merjapp.jar -old old.db -new new.db
You should see a "Done!" is displayed and a new file named output.db will be created in the Merge folder.
If you have other database to merge, repeat the steps above by rename the output.db to old.db.
Once you are done, rename the output.db to msgstore.db and it is ready to restore into WhatsApp.
(Credited to namnoops for this merge application! This is the link to original thread.)
For my case, I have to run this steps twice to merge 3 databases. I get error the first time I run this because some messages is overlapping and this is the reason for Phase B to edit my database. Once I got my merged database, I renamed it to msgstore.db (without encrypt again) and have no problem restore back to my device. I also copy and paste all my backed up WhatsApp folder to my device (except the file in Database folder) for the picture in WhatsApp to work.
Disclaimer: I do not know any coding behind all these so if you have any questions I will try to answer but the best bet is to go back to the original thread.
Below is some other method that I found online but can't figure out how to do it. You may try it at your own risk.
Additional Method:
sch3m4's wforensic Method
Alternate sch3m4's wforensic Method
Reserve for later use.
Reserve for later use, again.
How could i restore the merged database file ?
Xperia000sola said:
How could i restore the merged database file ?
Click to expand...
Click to collapse
I think you should overwrite new merged DB uninstall whatsapp then reinstall it
Thank you! I' ve tried the method in the thread of the merge tool, but your procedure did the trick for me =)
i cannot use it
help us with video please
big fail after attemped retrieve msgstore.db
when tested edit under sqlitebrowser, save change then exit. copy backup the "msgstore.db" file to my device original place and set permission as before. run whatsapp then all my message on list has been gone. no idea wut happen. even though i copy back my original msgstore.db to same place. so **** and make me down becoz i forgot to backup the list b4 make this test.
i use whatsapp ver 2.12.367. and dun add or del row under sqlitebrowser, only retrieve some text on same row, but why i copy back the original msgstore.db also fail? lost all message
While it might not be a lot of fun, it's quite easy to merge those databases using this method
I have used the Android WhatCrypt-app to decrypt my databases on the smartphone, copied both unencrypted ones to my PC and then trimmed the newer one down.
After merging, the only problem was getting Whatsapp to accept my database - the first attempt resulted in Whatsapp deleting all my messages.
My solution was to "Clear Data" on Whatsapp and simply drop the newly created database in Whatsapp's folder inside /data.
It accepted the new file and created the missing files by itself.
Now I have finally got all those messages in my Whatsapp
Thank you very much!
Hey,
I have a problem : everytime I try to do the last step e.g. merge the old.db and new.db via cmd - i get the error message " -E- Database old.db cannot be found! " . I renamed the old database to "old.db" still it doesnt work? What I am doing wrong?
Is my old.db file corrupted? I can read it with Whatsapp Viewer tool.. So it seems to work.
And there shouldnt be any overlapping messages - I have an old database and a fresh new one without any old backups.
(my old phone broke and i just jused the new one for the incoming messages)
Help
Hi,
I just wanted to ask, I have the msgsstore.db.crypt8 File from my old whatsapp back on older device but I am unable to copy it to the database folder in my new device.
Help Please
Guys I have 2 backups, 1 crypt9 and 1 crypt12. I decrypted and merged both succesfully but when I try to restore my messages through Whatsapp it tells me "Cannor restore your messagges......." . What can be the problem? Whatsappviewer open without problems outout.db, so I think it is not corrupted. There may be some overlapping msgs? How can I notice them? I whatched the table column received_timestamp and I didn't see any equal row. However the column timestamp has multiple equal column, can be this my problem?
Thank in advance
Now I'm on phase B, and with the DB Browser for SQLite, I opened (tab Browse Data) the msgstore file in the "extracted" folder and then selected messages In Table drop down menu.
I didn't not understand what to do next.
DLz88 said:
Now I'm on phase B, and with the DB Browser for SQLite, I opened (tab Browse Data) the msgstore file in the "extracted" folder and then selected messages In Table drop down menu.
I didn't not understand what to do next.
Click to expand...
Click to collapse
You would need to delete the records you do not want and then save the changes. In any case, what is the end result you are trying to achieve? Do you wish to import the merged database back to WhatsApp? Are the databases from separate accounts? If you intend to write back msgstore.db to /data/data/com.whatsapp/databases? How are you going to do that without root? If you do intend to use your merged database with WhatsApp then you may run into difficulties. Things have changed a lot since this guide was written.
I have previous crypted (crypt8) backup files from whatsapp database (same account) and I want to merge those old messages with others whatsapp messages I have on my LG G5. Basically my galaxy s4 died, I managed to rescue the whatsapp database and now I want those messages in my new LG G5 (no backup on whatsapp servers because it was setted off by mistake). The folder is inside the main storage/WhatsApp/Database Also, I want all the records and excel told me that there are not any duplicates values.
Don't work on Nexus 5X, show message like strong AES encryption. :'(
Guys, I have FINALLY found a way to merge two differten WhatsApp backup files. I'll post the guide asap (have to translate it). Is different from the one on the first page for the first two parts.
How to merge two different WhatsApp backup files:
We have two different WhatsApp backup file (doesn't matter if encrypted by different methods, for example, I had a crypt9 file and one crypt8) and we want to combine them into one so we can read them with WhatsApp.
Requirements: OS: Windows Vista, Windows 7 or Windows 8
Programs you need:
1) WhatsApp Xtract: http://forum.xda-developers.com/showthread.php?t=2770982
2) SQLite Database Browser: https://github.com/sqlitebrowser/sql....2.0-win32.exe
3) merjapp (merjapp.jar) https://github.com/namnoops/merjapp/releases
4) JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
5) Java: https://www.java.com/en/download/
6) ADB (Android Debug Bridge) Drivers - If not installed: http://developer.android.com/sdk/index.html
Enable USB Debugg: Settings \ Developer options \ USB debugging (to activate them go to Settings-> About phone-> Software Information-> click many times on the Build number).
Before proceeding further, I suggest to temporarily remove all security protocols such as pin, lock screen with a sequence or other method and scanning fingerprints. In order to avoid the forced backup password.
I also suggest to make the extension of the files, visible (on windows, go to Tools-> Folder Options-> View-> uncheck "Hide extensions for known files").
First phase: decrypt
Extract the "WhatsAppKeyExtract.zip" program in a PC folder, making sure to maintain the folder structure.
a) Start "WhatsAppKeyExtract.bat"
b) Once started, connect your phone via USB, unlock the screen.
c) Wait until the screen that tells you to back up your data appears.
d) Leave the password field blank and click "Back up my data".
e) When finished, inside the "extracted" folder (located inside the WhatsAppKeyExtractor folder) you will find the files "whatsapp.key", "msgstore.db" and "wa.db". (That's if the latest versions of whatsapp).
At this point I recommend to save these files in a folder, calling it "new backup."
Now we must do the same process with the old backup, then:
Uninstall Whatsapp.
Remove all backups from the folder Whatsapp\databases (inside the phone).
Put back in the old backup file ( "msgstore").
Reinstall whatsapp, and let it reopen old messages (restore backup). When done, remove the connection data from the phone (both wifi, and UMTS).
Redo the same procedure as before, from point a) to e).
Save these new files "msgstore.db" and "wa.db" in a folder, this time calling it "old backup."
The first part is finished.
Second phase: organizing the chat
Before you start, create backup copies of previously decrypted file (you never know).
Open SQLiteBrowsers, position yourself in BrowseData tab and select Open Database. Choose the old backup file msgstore.db (that previously we have decrypted).
Click the lower Tab, select "messages".
With the scroll menu, go down to the last message. Here, count the "_id" number of the last message, for example "65422"
Open the new backup file (the new msgstore.db we had decrypted) always with the SQLite Database Browser program. By the same process: open the inferior tab and select messages. Highlight entirely the first line that has the fields, for the most part, containing the value "-1", and delete the line with the Delete Record command.
Make a note now of the number of the first message, under "_id" for example "12"
Now go in the tab "Execute SQL" and write the following string: UPDATE messages Set_id = (65422 + 1 + _id - 12) (put the numbers that you had marked earlier, in this case 65422 and 12). Click ExecuteSQL ( "Play" button)
Close SQLiteBrowers.
End of the second phase.
Third phase: merge
Create a new folder on your desktop called "merge".
Rename the old backup file (the msgstore.db file that is inside the "old backup" folder) that we had decrypted, in old (so we have the file old.db).
Rename the new backup file (the msgstore.db file that is inside the "new backup" folder) that we had decrypted and on which we had executed the SQLiteBrowser string, in new (so we have the file new.db).
Copy and paste the two files in the directory "merge".
Copy merjapp (merjapp.jar) in the "merge" folder.
Now run the command prompt as an administrator.
Enter the following commands:
cd C: \ Users \ [username] (press "ENTER")
cd desktop (press "ENTER")
cd merge (press "ENTER")
java.exe -jar merjapp.jar-old old.db -new new.db (press "ENTER")
It must appear "Done!"
At this point in the "merge" folder there must be a file called output (output.db file)
Copy it in desktop and rename it msgstore (so we have the msgstore.db file).
Open the phone's internal memory, go into WhatsApp \ Database folder, and delete all the files that are in there.
Copy "msgstore" (the msgstore.db file that was named output) in the folder Whatsapp \ Database.
Uninstall and reinstall WhatsApp (obviously choosing to restore backups).
END
DLz88 said:
Guys, I have FINALLY found a way to merge two differten WhatsApp backup files. I'll post the guide asap (have to translate it). Is different from the one on the first page for the first two parts.
Click to expand...
Click to collapse
Many thanks for finding the time to post your updated working method. I'm sure your contribution will come in handy for many users.
Hi. With this tutorial can I merge 2 backups from different numbers? Basically I would like to move the conversations from my second number to the first number I have.
Thanks.
foxmolder1985 said:
Hi. With this tutorial can I merge 2 backups from different numbers? Basically I would like to move the conversations from my second number to the first number I have.
Thanks.
Click to expand...
Click to collapse
I don't know if my guide can works with backups from two different numbers. You can always try it and let us know

Whatsapp db file decrypt and encrypt : msgstore.db to msgstore.db.crypt12

Hello everybody.
I need your help in a matter regarding Whatsapp database decryptions. I am currently trying to decrypt, modify and then encrypt again an msgstore.db.crypt12 file. I use Link2SD to freeze Whatsapp, and then I am using WhatCrypt for the decryption (Decrypt WhatsApp Database - path set to the db.crypt12 file - Decrypt Database). It creates a msgstore.db file which I open with aSQLiteManager and edit it (practically editing a phone number and a few messages). Afterwards, I go back to WhatCrypt and hit Encrypt WhatsApp Database - set path to the now modified decrypted msgstore.db - Encrypt Database. The thing is that now it creates a msgstore.db.crypt file, not a crypt12. Can someone please tell me what am I doing wrong? How can I get it to create a file with the crypt12 extension, which I can use to replace the original one? Sorry for the noob question, but I am really stuck here and I could really use your help. Thank you in advance !

Categories

Resources