免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8099 | 回复: 10
打印 上一主题 下一主题

关于使用google的mysql4.0.26的使用小结 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-05-11 15:16 |只看该作者 |倒序浏览
最近因为瞧见google推出了他们mysql数据库的,有几个特性很不错,mirror-binlogs和针对每个用户的
和每个表的查询,update统计,于是就开始试用。

http://code.google.com/p/google-mysql-tools/wiki/Mysql4Patches
照着说明把补丁打好
我偷了个懒,做了一个rpm包。这样只要一次编译,就能在3台测试机器上使用了。(做不做rpm包和本次
数据库安装并无多大关系,只是为了方便。)

弄好之后
找个测试环境
俺找了一台3台机器
分别为10.210.128.174 10.210.128.175 10.210.128.176
各自的角色分别为10.210.128.174为主master
10.210.128.175为relay-slave ,就是中继服务器,(PS:它是174的slave,却又是176的master)
10.210.128.176为175的slave。

我们以3318端口为数据库端口
照着mysql手册mysql replicate的安装,我们可以得到mysql,test 2个库(此处略去300字)
然后在174机器的/data2/msyql3318/my3318.cnf(新建)
[mysqld]
port                    = 3318
user                    = my3318
datadir                 = /data2/mysql3318
socket                  = /tmp/mysql3318.sock
server-id               = 1281743318
log-bin
long_query_time         = 1
log-slow-queries        = /data2/mysql3318/slow-queries.log


---------------------------------
然后然后通过/usr/local/bin/mysqld_safe --defaults-file=/data2/mysql3318/my3318.cnf &启动
并在174上进行对175,176的replica帐号的授权。(照着mysql官方手册的replica授权,此处略200字)
cd /data2/mysql3318
tar zcvf mysql3318.tar.gz mysql test  将mysql,test数据打包传给175,176


--------------
175上将174传过来的mysql3318.tar.gz解压缩到他自己的/data2/mysql3318目录下
然后自己编辑175的/data2/mysql3318/my3318.cnf(新建)
内容如下
[mysqld]
port                    = 3318
user                    = my3318
datadir                 = /data2/mysql3318
socket                  = /tmp/mysql3318.sock
skip-slave-start
rpl_mirror_binlog_enabled
rpl_mirror_binlog_no_replicate
log-bin-index=mama
log-slave-updates
server-id               = 1281753318
log-bin
long_query_time         = 1
log-slow-queries        = /data2/mysql3318/slow-queries.log
master-host             = 10.210.128.174
master-port             = 3318
master-user             = replica
master-password         = xxxxxxx
master-connect-retry    = 60

然后通过/usr/local/bin/mysqld_safe --defaults-file=/data2/mysql3318/my3318.cnf &启动
登录到mysql控制台
执行change master to 操作  (也是照mysql官方手册关于mysql replicate的一章有详细介绍)
见图 175showslavestatus   ,当然数据有些出入的,如binlog的pos,还有master_log_file
为了确认是否175真的连上了174,可以在174上用show processlist
见图174showprocesslist
----------------------------------------
接下去我们在176上进行配置
176上将174传过来的mysql3318.tar.gz解压缩到他自己的/data2/mysql3318目录下
然后自己编辑176的/data2/mysql3318/my3318.cnf(新建)

[mysqld]
port                    = 3318
user                    = my3318
datadir                 = /data2/mysql3318
socket                  = /tmp/mysql3318.sock
rpl_mirror_binlog_enabled
#rpl_mirror_binlog_no_replicate
log-bin-index=mama
server-id               = 1281763318
log-bin
master-host             = 10.210.128.175
master-port             = 3318
master-user             = replica
master-password         = xxxxxx
master-connect-retry    = 60

--------------------------------

然后通过/usr/local/bin/mysqld_safe --defaults-file=/data2/mysql3318/my3318.cnf &启动
登录到mysql控制台
执行change master to 操作  (也是照mysql官方手册关于mysql replicate的一章有详细介绍)
见图 176showslavestatus   ,当然数据有些出入的,如binlog的pos,还有master_log_file

都弄好之后
我们在master174上进行一个实验
use test;
create table zongwen (id int;

图174createtable
然后俺们瞧瞧
图175show2
图176show2
图176show3

175-showslavestatus.JPG (100.79 KB, 下载次数: 115)

175-showslavestatus.JPG

174-showprocesslist.JPG (82.03 KB, 下载次数: 125)

174-showprocesslist.JPG

论坛徽章:
0
2 [报告]
发表于 2007-05-11 15:17 |只看该作者

图来

发图

175-showslavestatus.JPG (100.79 KB, 下载次数: 114)

175-showslavestatus.JPG

174showtable_statistics.JPG (94.28 KB, 下载次数: 110)

174showtable_statistics.JPG

论坛徽章:
0
3 [报告]
发表于 2007-05-11 15:19 |只看该作者

发图

发图

176showslavestatus.JPG (100.91 KB, 下载次数: 170)

176showslavestatus.JPG

176show2.JPG (100.74 KB, 下载次数: 106)

176show2.JPG

论坛徽章:
0
4 [报告]
发表于 2007-05-11 15:21 |只看该作者

发图

发图

[ 本帖最后由 helbreathszw 于 2007-5-11 15:31 编辑 ]

176show3.JPG (84.83 KB, 下载次数: 111)

176show3.JPG

174createtable.JPG (93.29 KB, 下载次数: 117)

174createtable.JPG

论坛徽章:
0
5 [报告]
发表于 2007-05-11 15:24 |只看该作者
附上176的err文件记录
070511 14:23:07  mysqld started
070511 14:23:07 Read master - info: log_file_name: CentOS4-VM174-bin.002, pos: 867
070511 14:23:07 Replication status inside relay-log.info: relay-log['./CentOS4-VM176-relay-bin.003'(4)], master-log['CentOS4-VM174-bin.002'(867)]
/usr/local/sinasrv/bin/mysqld: ready for connections.
Version: '4.0.26-log'  socket: '/tmp/mysql3318.sock'  port: 3318  Sina.com Network&System Binary Distribution
070511 14:25:02 Slave SQL thread initialized, starting replication in log 'CentOS4-VM174-bin.002' at position 867, relay log './CentOS4-VM176-relay-bin.003' position: 4
070511 14:25:02 Slave I/O thread: connected to master 'replica@10.210.128.175:3318', asynchronous replication started in log 'CentOS4-VM174-bin.002' at position 867
070511 14:25:02 ReplicationMule: RELAY_MATCH_MULE (CentOS4-VM174-bin.002, 867)


附上174的err文件记录
070511 13:26:44  mysqld started
/usr/local/sinasrv/bin/mysqld: ready for connections.
Version: '4.0.26-log'  socket: '/tmp/mysql3318.sock'  port: 3318  Sina.com Network&System Binary Distribution
070511 13:49:52 Start mirror_binlog_client, asynchronous binlog_dump to slave_server(128175331, pos(CentOS4-VM174-bin.002, 4)

附上175的err记录
/usr/local/sinasrv/bin/mysqld: ready for connections.
Version: '4.0.26-log'  socket: '/tmp/mysql3318.sock'  port: 3318  Sina.com Network&System Binary Distribution
070511 13:44:48 Slave SQL thread initialized, starting replication in log 'CentOS4-VM174-bin.002' at position 867, relay log './CentOS4-VM175-relay-bin.001' position: 4
070511 13:44:49 Slave I/O thread: connected to master 'replica@10.210.128.174:3318', asynchronous replication started in log 'CentOS4-VM174-bin.002' at position 867
070511 13:44:49 Mule binlog(./CentOS4-VM175-bin.001) does not match new relay-binlog(CentOS4-VM174-bin.002)
070511 13:44:49 Slave I/O thread exiting, read up to log 'CentOS4-VM174-bin.002', position 867
070511 13:49:47 Error reading relay log event: slave SQL thread was killed
070511 13:49:52 Slave SQL thread initialized, starting replication in log 'CentOS4-VM174-bin.002' at position 867, relay log './CentOS4-VM175-relay-bin.001' position: 4
070511 13:49:52 Slave I/O thread: connected to master 'replica@10.210.128.174:3318', asynchronous replication started in log 'CentOS4-VM174-bin.002' at position 867
070511 13:49:52 ReplicationMule: MULE_BEHIND - new(CentOS4-VM174-bin.002, 4), old(CentOS4-VM174-bin.002, 867)
070511 13:49:52 ReplMule::writeEvent =f - new status(1), file(CentOS4-VM174-bin.002) master_log_pos(4), dump_pos(867), file_size(4)
070511 13:49:52 ReplMule::writeEvent =d - new status(2), file(CentOS4-VM174-bin.002) master_log_pos(867), dump_pos(867), file_size(4)
070511 14:09:56 Start mirror_binlog_client, asynchronous binlog_dump to slave_server(128176331, pos(CentOS4-VM174-bin.002, 4)
070511 14:25:02 End binlog_dump successfully: 1281763318
070511 14:25:02 Start mirror_binlog_client, asynchronous binlog_dump to slave_server(128176331, pos(CentOS4-VM174-bin.002, 867)

论坛徽章:
0
6 [报告]
发表于 2007-05-11 15:35 |只看该作者
mirrorbinlog可以解决各IDC直接relay-slave数据服务器出现故障之后,能够保证master的binlog pos不丢失。
最后感谢google的无私奉献

论坛徽章:
0
7 [报告]
发表于 2007-05-11 18:32 |只看该作者
其他版本可以吗?特别是4.1.x

[ 本帖最后由 zhangweibo 于 2007-5-11 18:33 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2007-05-11 18:55 |只看该作者
4.1 还不支持

http://code.google.com/p/google-mysql-tools/ 自己看就可以了

论坛徽章:
0
9 [报告]
发表于 2007-05-29 22:40 |只看该作者
up

论坛徽章:
0
10 [报告]
发表于 2007-05-30 23:36 |只看该作者
怎么个路子?没明白做啥?
是不是我梦寐以求的数据库集群啊?
而且是不均衡集群.就是你是我的主我是你的他的主,然后他又是你的备这样一个三角恋关系啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP