Memcached实战之复制----基于repcached的主从
来源:互联网 发布:linux怎么设置用户密码 编辑:程序博客网 时间:2024/05/21 12:42
1
2
3
4
5
6
7
环境:
CentOS 6.5 x86_64位 采用最小化安装,系统经过了基本优化
selinux 为关闭状态,iptables 为无限制模式
主机名:nolinux
源码包存放位置:
/usr/local/src
libevent版本:2.0.21
memcached版本:1.4.20
1
[root@master ~]
# yum -y install gcc gcc-c++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@master ~]
#cd /usr/local/src
[root@master src]
# wget http://code.taobao.org/p/nolinux/src/memcached/src/libevent-2.0.21-stable.tar.gz?orig
[root@master src]
# tar zxvf libevent-2.0.21-stable.tar.gz
[root@master src]
# cd libevent-2.0.21-stable
[root@master libevent-2.0.21-stable]
# ./configure --prefix=/usr
[root@master libevent-2.0.21-stable]
# make
[root@master libevent-2.0.21-stable]
# make install
[root@master libevent-2.0.21-stable]
# ll /usr/lib/libevent* # libevent安装完后,会在/usr/lib目录下出现如下内容
lrwxrwxrwx 1 root root 21 Aug 11 13:49
/usr/lib/libevent-2
.0.so.5 -> libevent-2.0.so.5.1.9
-rwxr-xr-x 1 root root 968690 Aug 11 13:49
/usr/lib/libevent-2
.0.so.5.1.9
-rw-r--r-- 1 root root 1571802 Aug 11 13:49
/usr/lib/libevent
.a
lrwxrwxrwx 1 root root 26 Aug 11 13:49
/usr/lib/libevent_core-2
.0.so.5 -> libevent_core-2.0.so.5.1.9
-rwxr-xr-x 1 root root 585225 Aug 11 13:49
/usr/lib/libevent_core-2
.0.so.5.1.9
-rw-r--r-- 1 root root 978482 Aug 11 13:49
/usr/lib/libevent_core
.a
-rwxr-xr-x 1 root root 970 Aug 11 13:49
/usr/lib/libevent_core
.la
lrwxrwxrwx 1 root root 26 Aug 11 13:49
/usr/lib/libevent_core
.so -> libevent_core-2.0.so.5.1.9
lrwxrwxrwx 1 root root 27 Aug 11 13:49
/usr/lib/libevent_extra-2
.0.so.5 -> libevent_extra-2.0.so.5.1.9
-rwxr-xr-x 1 root root 404852 Aug 11 13:49
/usr/lib/libevent_extra-2
.0.so.5.1.9
-rw-r--r-- 1 root root 593392 Aug 11 13:49
/usr/lib/libevent_extra
.a
-rwxr-xr-x 1 root root 977 Aug 11 13:49
/usr/lib/libevent_extra
.la
lrwxrwxrwx 1 root root 27 Aug 11 13:49
/usr/lib/libevent_extra
.so -> libevent_extra-2.0.so.5.1.9
-rwxr-xr-x 1 root root 935 Aug 11 13:49
/usr/lib/libevent
.la
lrwxrwxrwx 1 root root 30 Aug 11 13:49
/usr/lib/libevent_pthreads-2
.0.so.5 -> libevent_pthreads-2.0.so.5.1.9
-rwxr-xr-x 1 root root 18430 Aug 11 13:49
/usr/lib/libevent_pthreads-2
.0.so.5.1.9
-rw-r--r-- 1 root root 18670 Aug 11 13:49
/usr/lib/libevent_pthreads
.a
-rwxr-xr-x 1 root root 998 Aug 11 13:49
/usr/lib/libevent_pthreads
.la
lrwxrwxrwx 1 root root 30 Aug 11 13:49
/usr/lib/libevent_pthreads
.so -> libevent_pthreads-2.0.so.5.1.9
lrwxrwxrwx 1 root root 21 Aug 11 13:49
/usr/lib/libevent
.so -> libevent-2.0.so.5.1.9
[root@master libevent-2.0.21-stable]
# cd ..
1
2
3
4
5
6
7
8
9
[root@master src]
# tar zxvf memcached-1.4.20.tar.gz
[root@master src]
# cd memcached-1.4.20
[root@master memcached-1.4.20]
# ./configure --with-libevent=/usr
[root@master memcached-1.4.20]
# wget http://code.taobao.org/p/nolinux/src/memcached/src/memcached-1.4.20.tar.gz?orig
[root@master memcached-1.4.20]
# make
[root@master memcached-1.4.20]
# make install
[root@master memcached-1.4.20]
# cd ..
[root@master src]
# ll /usr/local/bin/memcached # 安装完成后会把memcached 放到 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 341907 Aug 11 13:52
/usr/local/bin/memcached
1
2
3
[root@master src]
# wget http://downloads.sourceforge.net/repcached/memcached-1.2.8-repcached-2.2.tar.gz
[root@master src]
# tar zxf memcached-1.2.8-repcached-2.2.tar.gz
[root@master src]
# cd memcached-1.2.8-repcached-2.2
1
2
3
4
5
6
[root@master memcached-1.2.8-repcached-2.2]
# wget http://downloads.sourceforge.net/repcached/repcached-2.2-1.2.8.patch.gz
[root@master memcached-1.2.8-repcached-2.2]
# gzip -cd ../repcached-2.2-1.2.8.patch.gz | patch -p1
[root@master memcached-1.2.8-repcached-2.2]
# ./configure --enable-replication
[root@master memcached-1.2.8-repcached-2.2]
# make
[root@master memcached-1.2.8-repcached-2.2]
# make install
[root@master memcached-1.2.8-repcached-2.2]
# cd ..
1
2
3
4
[root@master ~]
# memcached -v -d -p 11211 -l 192.168.0.102 -u root -P /tmp/memcached1.pid
[root@master ~]
# replication: listen
[root@master ~]
# replication: accept
1
2
3
4
5
6
[root@slave src]
# memcached -v -d -p 11211 -l 192.168.0.103 -u root -x 192.168.0.102 -P /tmp/memcached1.pid
[root@slave src]
# replication: connect (peer=192.168.0.102:11212)
replication: marugoto copying
replication: start
[root@slave src]
#
1
[root@master ~]
# replication: accept # 启动正常后,master 将 accept
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
[root@master ~]
# telnet 192.168.0.102 11211 # 连接到我们主节点,添加一个记录
Trying 192.168.0.102...
Connected to 192.168.0.102.
Escape character is
'^]'
.
set
key 0 0 6
sunsky
STORED
quit
Connection closed by foreign host.
[root@master ~]
# telnet 192.168.0.103 11211 # 连接到我们的从节点,查看主节点的记录是否同步过来
Trying 192.168.0.103...
Connected to 192.168.0.103.
Escape character is
'^]'
.
get key
VALUE key 0 6
sunsky
END
quit
Connection closed by foreign host.
[root@master ~]
# pkill memcached # 现在,杀掉我们主节点的memcached进程
replication: cleanup start
replication: close
replication: cleanup complete
[root@slave src]
# replication: close # 备节点此时变为监听状态,即变成了主节点
replication: listen
[root@master ~]
# telnet 192.168.0.103 11211 # 查看从节点上面的数据是否还存在
Trying 192.168.0.103...
Connected to 192.168.0.103.
Escape character is
'^]'
.
get key
VALUE key 0 6
sunsky
END
quit
Connection closed by foreign host.
[root@master ~]
# memcached -v -d -p 11211 -l 192.168.0.102 -u root -x 192.168.0.103 -P /tmp/memcached.pid # 由于memcached的主/从没有抢占功能,因此主恢复之后,只能作为现有主节点的从节点[root@master ~]# replication: connect (peer=192.168.0.103:11212)
replication: marugoto copying
replication: start
[root@slave src]
# replication: accept # 在上面加入之后,下面之前的从节点就会蹦出如下输入,表示开启同步
replication: marugoto start
replication: marugoto 1
replication: marugoto owari
[root@master ~]
# telnet 192.168.0.102 11211 # 我们连接到刚刚恢复的节点,可以看到数据又回来了
Trying 192.168.0.102...
Connected to 192.168.0.102.
Escape character is
'^]'
.
get key
VALUE key 0 6
sunsky
END
quit
Connection closed by foreign host.
0 0
- Memcached实战之复制----基于repcached的主从
- Memcached单点问题——实战之复制----基于repcached的主从
- repcached实现memcached的复制功能
- 基于repcached的 memcache 主从配置实现
- 配置Memcache实现主从复制repcached功能
- 配置Memcache服务器并实现主从复制功能(repcached)
- 配置Memcache服务器并实现主从复制功能(repcached)
- memcached主从复制
- repcached实现memcached内存复制+keepalived主备模式
- MySQL优化之七--Mysql基于GTID的主从复制
- MySQL study之--MySQL基于GTID的主从复制
- 基于docker的 redis集群之主从复制
- Mysql之基于日志主从复制
- memcached repcached 同步
- Memcached repcached同步
- 【memcached】repcached工具
- repcached实现memcached主备
- mysql主从复制实战
- mysql数据库基础学习笔记
- Qt 5的git源码编译
- 黄聪:用python知道URL地址提取链接中的域名与端口
- Android小记:之ListView中 每一行显示不同的布局
- Excel最常用的使用技巧大全
- Memcached实战之复制----基于repcached的主从
- 搭建SQLite3嵌入式开发环境
- 黄聪:Python实现Discuz论坛的自动POST登录发贴回帖(转)
- 在Swift中应用Grand Central Dispatch(上)
- 命名保留的一些字符
- 最长公共子序列
- jar包和war包的区别
- jsonp和CORS跨域实现
- Problem 033——UVa 540 - Team Queue