-
官网http://redis.io/download下载xxx.tar.gz二进制压缩包,注意下载2.8+版本,2.8之前的版本之前从服务器不支持部分重复制,2.6之前的版本不支持setnx命令
-
解压安装
#解压 tar -zxvf xxx.tar.gz #进入目录 cd redisxxxx #编译安装到/usr/local/redis目录下 sudo make PREFIX=/usr/local/redis install #从安装包中找到redis的配置文件,拷贝到根目录下 sudo cp redis.conf /usr/local/redis #启动redis ./redis-server ../redis.conf
主从搭建(同一台机器上搭建伪主从)
思路
一台主服务器,使用默认配置即可,一台从服务器,配置要复制的主服务 SALVEOF host port,如果你熟悉redis配合的话,你会发现默认给的配置文件里一个大项一个大项的分好了
过程
-
按单机环境安装好redis,注意我这边由于本地环境问题,直接在redis/src目录下启动的
-
准备两份配置文件redis_6379.conf和redis_6380.conf,修改对应的端口号
redis_6379.conf配置如下
# 修改启动方式为后台启动,此处为学习可以暂不开启,这样可以直接看到启动日志,生产部署也建议调试好后再启动后台方式 daemonize no 修改为: daemonize yes (后台程序方式运行) # 修改pid文件名 pidfile /var/run/redis.pid 修改为: pidfile /var/run/redis_6379.pid # 如果有密码主从服务器都需要新增相关的auth的配置
redis_6380.conf配置如下
# 修改启动方式为后台启动,此处为学习可以暂不开启,这样可以直接看到启动日志,生产部署也建议调试好后再启动后台方式 daemonize no 修改为: daemonize yes (后台程序方式运行) # 修改pid文件名 pidfile /var/run/redis.pid 修改为: pidfile /var/run/redis_6380.pid # 从节点新增配置复制主机,增加这一行 slaveof 127.0.0.1 6379 # 如果有密码主从服务器都需要新增相关的auth的配置
-
启动,此处是mac环境通过brew安装,直接命令+指定conf方式启动
# 启动主机器 ./src/redis-server ../redis_6379.conf # 启动从服务器 ./src/redis-server ../redis_6380.conf
-
测试
#连接到主服务器 redis-cli -h localhost -p 6379 # 查看服务器信息 info # 测试主从数据是否同步,在主服务器set,在从服务器get
-
遇到的问题
*** FATAL CONFIG FILE ERROR *** Reading the configuration file, at line 194 'always-show-logo yes' Bad directive or wrong number of arguments
遇到这个问题的原因是,我本地的环境是mac,除了上面方式安装的redis 还有个homebrew安装的redis,通过brew info redis 命令可以看到是4.0.1版本的,我启动命令是运行的3.2.8,配置使用的4.0.1的,所以不匹配。
官方redis集群搭建