- 下载镜像:redis-6.0.9.tar.gz;
- 在home下新建redis文件夹,然后进入redis文件夹,新建文件夹命令:mkdir /usr/local/redis/
[root@localhost redis]# cd /home/redis/ [root@localhost redis]#
用winscp软件将软件拷贝到redis文件夹,【如果不知道怎么拷贝,可以参考:https://blog.csdn.net/xiaoxinla/article/details/110498259】:
-
也可以进入到redis/路径下,执行下载命令:
wget https://download.redis.io/releases/redis-6.0.9.tar.gz
-
使用命令解压镜像:tar xzf redis-6.0.9.tar.gz
-
第一次使用时需要安装编译环境,命令是:yum -y install make automake cmake gcc g++
-
进入redis-6.0.9文件夹,编译redis,命令是:
[root@localhost redis]# cd /usr/local/redis/redis-6.0.9 ####我是注释:在这个网站上https://www.cnblogs.com/sixiweb/p/11497927.html 执行下面的语句不行; ####[root@localhost redis-6.0.9]# make && make install ####得执行下面的语句 [root@localhost redis-6.0.9]# make install PREFIX=/usr/local/redis
参考文章:https://blog.csdn.net/weixin_41048363/article/details/80255890
-
也可以参考官网,使用官网的命令:
-
其实,上面的语句是执行不成功的,因为我不是在redis-6.0.9/src文件夹下执行,需要切换到src文件夹;
-
可能还会遇到一个问题,错误内容很多,这里我只是拷贝了最后几段:
server.c: 在函数‘allPersistenceDisabled’中: server.c:1484:1: 警告:在有返回值的函数中,控制流程到达函数尾 [-Wreturn-type] } ^ server.c: 在函数‘writeCommandsDeniedByDiskError’中: server.c:3934:1: 警告:在有返回值的函数中,控制流程到达函数尾 [-Wreturn-type] } ^ server.c: 在函数‘iAmMaster’中: server.c:5134:1: 警告:在有返回值的函数中,控制流程到达函数尾 [-Wreturn-type] } ^
原因是:gcc版本老问题,新版本的redis6.0以上,不兼容,需要升级gcc,参考网址:https://blog.csdn.net/weixin_45627031/article/details/107166867?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.edu_weight&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.edu_weight
- 执行make,安装成功:
Hint: It's a good idea to run 'make test' ;) make[1]: 离开目录“/usr/local/redis/redis-6.0.9/src” [root@localhost redis-6.0.9]#
- 在redis-6.0.9目录下执行:src/redis-server 熟悉的标志
make[1]: 离开目录“/usr/local/redis/redis-6.0.9/src” [root@localhost redis-6.0.9]# ^C [root@localhost redis-6.0.9]# src/redis-server 30485:C 04 Dec 2020 19:04:08.178 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 30485:C 04 Dec 2020 19:04:08.178 # Redis version=6.0.9, bits=64, commit=00000000, modified=0, pid=30485, just started 30485:C 04 Dec 2020 19:04:08.178 # Warning: no config file specified, using the default config. In order to specify a config file use src/redis-server /path/to/redis.conf 30485:M 04 Dec 2020 19:04:08.179 * Increased maximum number of open files to 10032 (it was originally set to 1024). _._ _.-``__ ''-._ _.-`` `. `_. ''-._ Redis 6.0.9 (00000000/0) 64 bit .-`` .-```. ```\/ _.,_ ''-._ ( ' , .-` | `, ) Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379 | `-._ `._ / _.-' | PID: 30485 `-._ `-._ `-./ _.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | http://redis.io `-._ `-._`-.__.-'_.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | `-._ `-._`-.__.-'_.-' _.-' `-._ `-.__.-' _.-' `-._ _.-' `-.__.-'
这种情况下,只要一输入东西redis就会关闭,因此还需要设置后台启动,开启外网访问,设置登录密码:
-
可以使用winscp软件设置,或者使用vi命令设置,如果使用vi命令设置,需要跳转到redis-6.0.9目录下;
-
在redis-6.0.9目录找到redis.conf文件,修改信息:
-
配置redis为后台启动【大约在224行】:daemonize no 修改为 daemonize yes
-
开启外网访问【大约在68行】:bind 自己的ip地址
-
设置访问密码【大约在790行】:# requirepass foobared 改成 requirepass 自己的密码
-
编写启动redis后台进程脚本start_redis.sh,技巧:在redis目录下新建start_redis.sh文件,编写启动命令reds-server,需要加上路径:redis文件夹/src/redis-server
[root@localhost ~]# cd /usr/local/redis/ [root@localhost redis]# vim start_redis.sh #!/bin/sh redis-6.0.9/src/redis-server /usr/local/redis/redis-6.0.9/redis.conf
修改启动权限,启动redis:
###修改权限 [root@localhost redis]#chmod +x start_redis.sh ###启动redis [root@localhost redis]#./start_redis.sh
-
检查redis进程和端口:
[root@localhost redis]# ps -ef|grep redis root 1630 1 0 20:02 ? 00:00:01 redis-6.0.9/src/redis-server 192.168.1.148:6379 root 2848 1873 0 20:21 pts/0 00:00:00 grep --color=auto redis [root@localhost redis]# ^C [root@localhost redis]# netstat -tunlep|grep 6379 tcp 0 0 192.168.1.148:6379 0.0.0.0:* LISTEN 0 1342355 1630/redis-6.0.9/sr [root@localhost redis]#
-
在windows客户端尝试连接redis服务器,检查服务可用性:使用redis Desktop Manager连接192.168.1.148,端口 6379,密码为配置的密码,连接成功
-
退出:在客户端的控制台输入:auth 密码,返回OK,然后再输入shutdown
-
再次执行:ps -ef|grep redis,查看redis服务,已经没有了;
[root@localhost redis]# ps -ef|grep redis root 3634 1873 0 20:30 pts/0 00:00:00 grep --color=auto redis [root@localhost redis]# netstat -tunlep|grep 6379 [root@localhost redis]#
参考文档:https://blog.csdn.net/dsl59741/article/details/106199868 https://www.cnblogs.com/sixiweb/p/11497927.html
centos7安装redis6.0.9,编译,安装,启动,停止,处理各种坑,各种bug
最新推荐文章于 2022-08-31 23:48:30 发布