经常要关注一下服务器架构一些软件的最新动态,下载最新稳定版本测试,网址过多做个记录说明方面自己查询。
今天上论坛发现新发表的帖子无法正常显示(论坛数据库采用Mysql主从复制进行读写分离方案),马上想到可能主从复制同步上出现问题,同一时间收到同事消息说数据库的主复制出现故障重启了,这时找到事故原因主数据库重启了会导致从数据库数据复制同步上延后,过一段时间SSH到从数据库上show slave status\G;查看状态显示
Slave_IO_Running: NO
Slave_SQL_Running: Yes
…
Last_Errno: 0
Last_Error:
…
Seconds_Behind_Master: NULL
从状态信息来看数据同步没有延后也没有报任何的错误,但Slave_IO_Running: NO显示同步IO进程失败。根据以往经验会先重启一下Slave后在show slave status\G;看一下是否会恢复正常,Slave_IO_Running: NO问题还是没有解决于是查看一下Mysql的错误日志发现
090605 9:13:20 [Note] Slave SQL thread initialized, starting replication in log ‘mysql-bin.000102′ at position 1029244974, relay log ‘./xxx-relay-bin.000634′ position: 98
090605 9:13:20 [Note] Slave I/O thread: connected to master ’slave163@192.168.0.131:3306′, replication started [...]
location / {
#rewrite ^/(\d+)/(.+)/ /$2?id=$1 last;
rewrite ^/uchome/(space|network)\-(.+)\.html$ /uchome/$1.php?rewrite=$2 last;
rewrite ^/uchome/(space|network)\.html$ /uchome/$1.php last;
rewrite ^/uchome/([0-9]+)$ /uchome/space.php?uid=$1 last;
}
以上Rewrite规则在nginx/0.7.30上测试通过,规则中UCenter Home安装在/uchome目录中可根据目录不同做更改。
参考文章:
http://blog.c1gstudio.com/archives/434
今天测试了一下amoeba-mysql-0.32在Windows 2003的搭建过程,用MySQL-5.1.30-Win32做好了主从复制并在amoeba中做好了读写分离的配置,将已经安装好的Discuz论坛改为连接amoeba服务器(192.168.0.10:8066)的时候页面显示全为乱码。在网上找到http://hi.baidu.com/hlxwell/blog/item/ea0d445913af102d2834f0d5.html这里说需要将Discuz改为 set names gbk,因为Discuz不是用的set names来解决MySQL字符集的问题,加了之后果然能正常显示。
分析了amoeba的日志和源代码了解到amoeba初始化连接到MySQL的时候是“set client charset=utf8”采用utf-8的字符串,当然客户端连接到amoeba的时候会根据客户端的字符集重新设置连接MySQL的字符集。比如我本地环境php-5.2.6-Win32连接amoeba的时候判断MySQL client的字符集为latin1,amoeba就会执行“ set names latin1”中文无法正常显示估计和libmysql.dll这个文件有关。
在FreeBSD 7.x的PHP运行环境测试Discuz论坛则一切正常我记得我记得编译PHP的时候先得安装MySQL做为PHP的MySQL client,编译MySQL默认使用了GBK字符集,现在明白全用–with-charset=gbk –with-collation=gbk_chinese_ci参数这里所指定的字符集将决定你的PHP的MySQL client的字符集,之前说过amoeba会根据客户端的字符集重新设置连接MySQL的字符集。
google了一下了解到CVSup升级有两种:
一个是 /usr/ports/net/cvsup/
另一个是(无图版)/usr/ports/net/cvsup-without-gui
这里我只说cvsup-without-gui的安装与配置使用
由于我的yum升级速度一直不太理想,今天发现163提供了centos的开源镜像,在此首先感谢163对国内开源事业的贡献。
代码:
#cd /etc/yum.repos.d/
#cp -a CentOS-Base.repo CentOS-Base.repo.bak
#vim CentOS-Base.repo
CentOS-Base.repo内容如下
代码:
# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this [...]
Nginx负载均衡服务器的相关配置教程
ref:http://code.google.com/p/scriptz/wiki/NginxServer
转载一篇说明Nginx与Apache虚拟主机的配置
ref: http://efiquest.org/2007-09-28/5/
这段时间一直在学习大型网站服务器构架方面的东西,找到关于Berkeley DB与PHP相关的一些文章,特收藏。
转自:http://blog.sina.com.cn/s/blog_538171a3010009ve.html
Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得对这个出色的开源软件更深入的了解,并可以根据我们的需要对其进行更进一步的优化。末了将通过对BSM_Memcache扩展的分析,加深对memcached的使用方式理解。
本文的部分内容可能需要比较好的数学基础作为辅助。

Recent Comments