美国虚拟主机Hostease

Mediawiki中文技术论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5990|回复: 0

在MediaWiki中启用主从两个MySQL服务器

[复制链接]
发表于 2011-6-28 09:41:23 | 显示全部楼层 |阅读模式
RAKsmart美国服务器
在使用MediaWiki的网站中,为了保证访问性能,MySQL使用的大都是单独的服务器,从系统负载来看也很小,Linux中TOP查看负责基本都在1以下,但始终存在一个现象,就是偶尔有CPU占用达到100%的情况,这时网站无法访问,持续3-5分钟左右后CPU占用率恢复正常,这样的情况每天都有3-5次,算下来每天大约有20分钟左右网站访问很慢或者几乎无法访问。

  当这样的问题持续很长时间没有改善的时候,可以进行日志检查、数据收集,如果发现有一些MySQL指令不合理,但仍然没有找到对应的具体页面或者网站操作,但要修改程序也是一个很困难的事情,就可以考虑决定使用MediaWiki支持的主从式MySQL服务来尝试解决,算是一种分布式的负载均衡办法。

  办法比较简单,在另外一台服务器上安装MySQL服务并设置成Slave模式,以前的服务器上MySQL服务设置成Master模式,这样Slave就会自动读取Master上的数据进行复制同步,而MediaWiki写数据是到Master上,读数据是到Slave上。在LocalSettings.php中设置一个数组就可以了:
$wgDBservers = array(
         array(
                 'host' => "ip1",
                 'dbname' => "dbname1",
                 'user' => "user1",
                 'password' => "password1",
                 'type' => "mysql",
                 'load' => 0,
         ),
         array(
                 'host' => "ip2",
                 'dbname' => "dbname2",
                 'user' => "user2",
                 'password' => "password2",
                 'type' => "mysql",
                 'load' => 1,
         ),
);
如果网站访问量极大的话,还可以设置多台Slave来进行负载均衡。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

美国HostEase虚拟主机一年198元

Archiver|手机版|小黑屋|Mediawiki中文技术论坛

GMT+8, 2024-12-27 06:14 , Processed in 0.046314 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表