安卓误删短信恢复

Sept. 18, 2017 · Andriod
家人的安卓手机短信息因操作失误被全部删除,因为里面有非常重要的短信,问我能不能找回来。环境:三星S6 Edge+安卓6.01. 安卓的短信息数据库安卓的短信息是用SQLite数据库存储在/data/data/com.android.telephony/databases/mmssms.db中。有兴趣的可以打开看看,需要稍微懂点数据库。安卓:RE管理器就自带SQLite查看器PC:SQLite Database Browser存放短信的表(sms表),存放彩信的表(pdu表,part表)。2. 删除(重命名)WAL文件WAL(预写日志)模式,当事务对数据库进行修改时,将修改后的页面存入WAL文件中,而不写回原数据库。所有连接数据的操作都必须使用WAL,然后在在数据库文件夹下生成一个后缀为-wal的文件保存操作日志。短信息数据库的WAL文件就在/data/data/com.android.telephony/databases/mmssms.db-wal,我们要做的就是重命名(代替删除,如果该方法不适合你还可以重命名回来)为000mmssms.db-wal,2.1. 重命名方法有ROOT权

MySQL中的Emoji表情

Sept. 15, 2017 · Mysql Emoji
在向MySQL中直接插入Emoji后,查询出来的数据全部变成了问号,网上查了下大致原因是MySQL使用的utf8编码是三位的,但是一个Emoji表情需要四位,解决方法就是更改MySQL编码为utf8mb4。需要MySQL版本>= 5.5.3,低版本不支持这个字符集。1. 修改已存在数据库的编码如果你的项目已经上线并不推荐直接修改已存在的数据库编码,有可能导致乱码问题,可以使用转码的方式存储。ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;2. 新建数据库时指定编码PS:新建数据库时最好显式的指出数据库编码,不要依赖数据库默认配置。CREATE DATABASE `database` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;3. 修改MySQL默认字符集我的配置文件在/etc/my.cnf这里的修改只对以后建立的数据库有效。[mysqld]character-set-server=utf8mb4

Nginx+uWSGI+Mysql+Django+Virtualenv环境部署

Sept. 11, 2017 · Django Nginx Python Mysql
环境:ubuntupython31. 安装软件包sudo apt-get install mysql-server python3 python-dev python3-pip virtualenv uwsgi uwsgi-plugin-python32. 配置Virtualenv及Python环境首先,这个Virtualenv并不是必须的,他的作用就是创建一个“隔离”的Python运行环境。我想大家都碰到过在一台电脑上同时开发多个应用程序,如果应用A需要Python 2.7,而应用B需要Python 2.6怎么办?有时还会碰到不只是Python版本的不一致,比如Django等软件包版本。这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。2.1. 新建独立运行环境,命名为pyblog_envvirtualenv pyblog_env --python=python3.5 --no-site-packages--python指定Python版本--no-site-packages不复制系统已安装Python包2.2. 进入pyblog_env环境source pyb