1、安卓版手机需要ROOT
2、手机上安装RE文件管理器( ROOT后需要给文件管理器授权),然后打开/data/data/com.tencent.mm文件夹,将 MicroMsg 文件夹复制到SD存储卡上。其中 32 位的文件夹为微信账号对应的主目录,目录下有 EnMicroMsg.db 文件,该文件为微信账号对应的聊天记录数据库。
3、下载sqlcipher2.1版本的可执行程序 sqlcipher.exe,然后打开上述的 EnMicroMsg.db 文件,会提示输入密码。密码为 IMEI+UIN 经过 MD5加密后生成的字符串的前7位。IMEI查询方式:手机拨号 *#06#,如果有多个IMEI,依次尝试,通常第一个即是。uin查询方式:在手机上用RE文件管理器打开 /data/data/com.tencent.mm/shared_prefs/ 下的system_config_prefs.xml 文件或者 auth_info_ket_prefs.xml文件,然后找到 default_uin 或者 _auth_uin 对应的 value。
密码正确的情况下即可看到数据库表结构,如下图所示:
sqlcipher2.1打开加密的EnMicroMsg.db文件
4、可选择 File–>Export–>Databases to SQLfile 将数据库导出,然后导入到mysql数据库中。
需要对导出的数据库文件做如下处理:

1.BLOB/TEXT 类型不能作为主键;可将 LONG PRIMARY KEY批量替换为 LONG
2.批量删掉 COLLATE NOCASE
3.原sqlite库里部分表的字段名为关键字,导入mysql里建表时会报错,比如 ‘key’'desc’等字段名,需要逐个修改
4.数据类型 BLOG、byte[] 替换成mysql中对应的数据类型

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐