0%

服务器配置 - Redis单机多实例配置

1. 拷贝配置文件

可以参考>>传送门 - Redis安装配置<<
Redis安装时会生成一份默认配置/etc/redis/redis.conf,几个常用配置项如下:

1
vim /etc/redis/redis.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 端口
port 6379

# pid文件路径
pidfile /var/run/redis/redis-server.pid

# 绑定ip
bind 139.xxx.xxx.xxx 127.0.0.1

# 登录需要密码
requirepass 123456

# log文件路径
logfile /var/log/redis/redis-server.log

# 持久化输出的数据库文件
dbfilename dump.rdb

# 只增文件的文件名称
appendfilename "appendonly.aof"

将配置文件拷贝一份,并修改下内容:

1
2
cp /etc/redis/redis.conf /etc/redis/redis-2.conf
vim /etc/redis/redis-2.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 端口
port 6789

# pid文件路径
pidfile /var/run/redis/redis-2.pid

# 绑定ip
bind 139.xxx.xxx.xxx 127.0.0.1

# 登录需要密码
requirepass 123456

# log文件路径
logfile /var/log/redis/redis-2.log

# 持久化输出的数据库文件
dbfilename dump-2.rdb

# 只增文件的文件名称
appendfilename "appendonly-2.aof"

2. 手动启动

从不同的配置文件启动Redis实例

1
2
redis-server  /etc/redis/redis.conf
redis-server /etc/redis/redis-2.conf

到这里两个实例都可以正常工作了。


*3. 主从配置

一些场景下需要配置Redis主从数据库,如读写分离。
Redis的主从配置还是很容易的,只要修改下从库的配置文件的slaveof项即可。

1
vim /etc/redis/redis-2.conf
1
2
# 从属关系,如果是在同一台机器上可以把ip设置为127.0.0.1
slaveof 139.xxx.xxx.xxx 6379

*4. 设置开机启动

默认情况下只有第一个实例会开机启动,其他的实例需要手动启动,下面将讲解如何让第二个实例也开机启动。

4.1 先拷贝一份原来的启动脚本

1
cp /etc/init.d/redis-server /etc/init.d/redis-server-2

4.2 修改新的启动脚本

1
vim /etc/init.d/redis-server-2

前几行需要修改的内容如下:

1
2
3
4
5
6
7
8
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/redis-server
DAEMON_ARGS=/etc/redis/redis-2.conf
NAME=redis-server-2
DESC=redis-server-2

RUNDIR=/var/run/redis
PIDFILE=$RUNDIR/redis-server-2.pid

*以后就可以使用下面的命令来启动/停止新的实例了

1
2
/etc/init.d/redis-server-2 start # 启动
/etc/init.d/redis-server-2 stop # 停止

4.3 将新脚本加入开机启动项

方法一:使用update-rc.d命令,20是想要指定的启动序号。

1
update-rc.d -f redis-server-2 defaults 20

方法二:手动添加开机启动项,可以参考这篇文章>>传送门 - Linux设置开机启动项<<,两个方法的结果是相同的。

配置完成,此时敲reboot重启机器就可以实现开机自动启动这两个实例了。

*4.4 取消开机启动

1
update-rc.d -f redis-server-2 remove