10一
归类于数据库技术
参与评论
数据库的备份至关重要,之前的几篇文章也讲解了如何备份MySQL,以及如何搭建MySQL的主从同步策略,同步和备份,我们会经常认为主从同步也可以作为MySQL的备份策略,因此,我们也在这里强调一点:
主从同步不能代替数据库备份
举例说明,如果我们在主数据库上误删了一个table,那么从数据库也会执行相应的操作,如果没有备份,这就会导致删掉的数据就无法找回。(即使回滚二进制日志也不一定能找回,因为二进制日志的保存是有时间限制的,并且回滚二进制日志非常复杂)。
因此数据库的完全备份、增量备份是至关重要的。
Continue reading “MySQL数据库备份策略与恢复” »
1,126 Views mysql, 主从
03十二
归类于数据库技术
6 条评论
关于Memcache和Redis的区别,本文不打算做过多的讨论。从理论上讲,如果Drupal的Redis模块写得够合理(没有细看源码,粗略估计一下),Redis对Drupal的性能提升肯定比Memcache要大,单就数据结构上的扩展,就省去了很多Memcache中复杂的操作,外加上Redis的持久化,可以做部分存储使用,因此可以代替部分数据库的功能,此外做过Memcache性能研究的用户更会发现使用Memcache的瓶颈并不在于速度,而是数据结构处理。所以,我们打算使用Redis来做Drupal的缓存。
安装Redis
我们使用yum或者apt安装,比较简单,具体略过。
安装完成之后,redis的配置文件位于:/etc/redis.conf,可以设置持久化策略、内存使用等,由于redis支持VM策略,因此内存的瓶颈应该不是什么大问题。(注意一下pid的路径,以后要用到)
Continue reading “给Drupal使用更强劲的缓存利器-Redis” »
2,078 Views drupal7, memcache, redis, 性能优化
01六
归类于数据库技术
参与评论
在LAMP架构中,我们一般使用MySQL作为数据库,而MySQL主从也是高性能网站架构中必要的环节(如Drupal、Wordpress等架构的网站)。本文大概讲解一下MySQL主从的复制以及出现的问题。
MySQL主从复制一般情况下我们会设置需要同步的数据库,使用参数配置选项,binlog-do-db,可以在master上指定需要同步的数据库,replicate-do-db在从数据看上指定需要同步的数据库。(一般只设定master上的binlog-do-db即可,不需要两个同时设定。以防万一,在slave也可以加上replicate-ignore-db)。
我们遇到的问题是,在master上面新增了一个数据库,这个时候如何把新加的这个数据库添加到MySQL的主从复制链里?(即不重新复制整个库的情况下,重新设置主从复制)。
Continue reading “如何添加新数据库到MySQL主从复制列表” »
5,185 Views mysql, 主从同步, 主从同步问题, 新增数据库到主从
17十二
归类于其他 | 数据库技术 | 服务器技术
参与评论
在以Drupal为框架的企业级或者商业网站的开发与部署中,不仅仅只是对Drupal的开发以及自定义模块和Drupal API的开发和应用,在整个企业级应用中,Drupal只是作为Web框架中的一个环节,其他方面,如数据库架构、负载、持续集成等都是必须考虑的环节,本文就Drupal商业级应用中必须的结构与部署方案做一个简单的探讨。
作为中小型商业网站,以Drupal为框架开发是一个较好的选择,除了Drupal开发本身,我们还必须掌握Drupal相关以及其他部署方面的环节,才能得以网站运营更加正常。
1. 服务器
起步阶段建议用VPS或者云主机,(Linode是不错的选择),正式上线之后,建议配置一台服务器,随着流量增大可以增加一台服务器,web和db分开。
访问量再次增加,我们可以增加到3台服务器。
Continue reading “漫谈企业级Drupal架构应用与部署” »
3,655 Views drupal企业应用, Drupal架构, 企业级应用, 架构
29九
归类于Drupal | 数据库技术
4 条评论
数据备份是非常重要的事情,一个站点如果没有及时备份数据,那么一旦服务器出现故障,造成的后果将是不可想象的。因此,作为生产站点,一定要及时的备份,以免出现不可挽回的损失。 笔者在这里共享一下Drupal小型站点的备份策略和大型站点MySQL的备份策略。
中小站点简单备份策略
基于Drupal的中小行网站,我们可以使用backup_migrate模块,该模块提供了定期备份的功能,备份的时间、保留多少个备份等等设置,设置好之后,定期执行cron即可备份成功。 一般的Drupal小站,我们只需使用svn即可,在服务器端,我们把备份好的数据提交到svn,就可以达到备份的目的。由于Drupal的备份模块可以设置备份保留的文件份数,因此不会造成太多的备份文件,从而导致svn很大。
下面是一个简单的备份脚本,放置到站点根目录,然后加到crontab每天执行即可。
Continue reading “Drupal数据库备份以及MySQL备份策略” »
1,561 Views backup, 备份