再谈MySQL数据库备份恢复和乱码问题

再谈MySQL数据库备份恢复和乱码问题

在我转到wordpress之后第一个考虑的是它的数据库备份恢复问题,因为写bloger都知道,自己的blog记录的都是自己需要的宝贵的资料和文字,如果因为各种未知因素导致数据库崩溃或者空间商出了问题,丢失了数据的话,无疑是一种非常巨大的痛苦和损失。

所以在我blog里面有好几篇资料文章或者自己心得文章来讨论mysql数据库备份恢复和乱码问题。

之前那些文章讨论结果已经暂时能满足我数据库备份和恢复问题了,但是始终有个让我不能完全安心的地方,那就是用PMA恢复的时候,使用的是上传机制,那么PHP默认是最大上传2M,如果我blog再写下去,写了几年,备份下来的数据超过2M,我该怎么办?

今天下午晒着太阳的时候又想到这个问题,但突然想起来备份的时候不是可以选择备份那个表嘛?呵呵,“大智若愚”,其实数据量大,我完全可以一个个表保存,然后一个个表恢复,这样相当于把一个压缩包分成几份,这样每份的体积就减少了。呵呵,心里又舒坦了些。但是问题又来了,wp的日志都是放在wp_posts表里面,就算其他的比如options、comments等表再大也只是一小部分,如果posts表数据超过2M了呢?

不知道我是不是杞人忧天,2M的gzip文件可以保存N多日志了。不过俗话说的好,居安思危,思则有备,有备无患!然后我再想,如过我不要保存为gzip格式,我就保存SQL语句的txt文件,然后我恢复的时候麻烦点,手动复制粘贴SQL代码,虽然比较麻烦点,但是恢复起来是没啥问题的。呵呵。想到这里又舒坦了点。至少已经有了可以完全不用担心数据库变大之后的备份恢复问题了。:0

其实我想如果我专心去研究,去写代码,完全可以自己写一个wp数据库备份恢复的程序,可惜的是,我用wp本身就是想偷懒,用它庞大的资源来给自己便利,因为工作太忙,如果在这上面花去时间开发的话,我想我工作方面就不能全身心投入了。。。

当然,除非是我blog写的时间太长了,数据量太大,而且都是宝贵的资料,我想再这种需求下面,我该会自己写个完善的wp数据库备份恢复的程序了。

最后补充一下mysql数据库乱码问题的解决方法,资料来自wp的一个qq群的一个网友:

终于解决了wordpress中文乱码问题

参考了很多人的方法,最后再确认了一下.总结如下:

1、Mysql处理

(1)配置文件处理

删除My.ini中的 default-character-set=latin1

(有的人喜欢改成 default-character-set=utf8,也行,我干脆删除了,只要注意下面2中的“整理”就ok啦!)

(2)PhpMyadmin处理

设置如下:

1: 语言设置为 chinese (zh-utf-8)

2: MySQL 字符集: UTF-8 Unicode(utf8)

3: MySQL 连接校对: utf8generalci

4: 新增数据库和数据表的时候,整理项选择 utf8generalci

2、Wordpress处理

在$this->dbh = @mysqlconnect($dbhost, $dbuser, $dbpassword);

下,增加一句

$this->query(”set names ‘utf8’”);

即如下(只有加了这句,发贴后,中文字才是正常的!):

$this->dbh = @mysqlconnect($dbhost, $dbuser, $dbpassword);

$this->query(”set names ‘utf8’”);