Centos7离线安装redis
1.1 下载、上传、解压redis4.0.11
下载地址:http://download.redis.io/releases/redis-4.0.11.tar.gz
下载后上传到服务器上,并解压:
备注:这里是上传压缩包到/opt/redis目录下。
[root@CDH-143 redis]# tar -zxvf redis-4.0.11.tar.gz redis-4.0.11/ redis-4.0.11/.gitignore ...... redis-4.0.11/utils/whatisdoing.sh [root@CDH-143 redis]# ls redis-4.0.11 redis-4.0.11.tar.gz [root@CDH-143 redis]# cd redis-4.0.11/ [root@CDH-143 redis-4.0.11]# ls 00-RELEASENOTES CONTRIBUTING deps Makefile README.md runtest runtest-sentinel src utils BUGS COPYING INSTALL MANIFESTO redis.conf runtest-cluster sentinel.conf tests
1.2 安装gcc
1)如果执行gcc –version出现以下信息,表示已经安装过gcc,可以跳过该步骤:
[boco@CDH-143 spark_job_monitor]$ gcc --version gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4) Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [root@CDH-143 redis]#
2)否则,如果执行make命令报下面错误,说明系统上没有安装C语言环境,需要安装,在linux系统上的C环境是gcc,因此需要安装gcc。
make[3]: gcc: Command not found make[3]: *** [net.o] Error 127 make[3]: Leaving directory `/home/work/redis/deps/hiredis' make[2]: *** [hiredis] Error 2 make[2]: Leaving directory `/home/work/redis/deps' make[1]: [persist-settings] Error 2 (ignored) CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] Error 127 make[1]: Leaving directory `/home/work/redis/src' make: *** [all] Error 2
安装gcc,
方式1:从centos7的系统安装镜像中提取:解压镜像文件,进入"Packages"目录,取出如下图所示rpm包
方式2:访问镜像网站获取:http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/ ,然后将其上传
从里面packages找出来,这些是从网上整理出来的(15个文件不要漏掉!!)
解压gcc.zip,编译安装
[root@CDH-143 soft]# unzip gcc.zip [root@CDH-143 soft]# cd gcc [root@CDH-143 soft]# rpm -Uvh *.rpm --nodeps --force
查看gcc版本,出现以下信息,表示安装成功
[boco@CDH-143 spark_job_monitor]$ gcc --version gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4) Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [root@CDH-143 redis]#
1.3 编译安装redis
[root@CDH-143 redis-4.0.11]# make MALLOC=libc cd src && make all 。。。。。。。。 CC rax.o LINK redis-server INSTALL redis-sentinel CC redis-cli.o LINK redis-cli CC redis-benchmark.o LINK redis-benchmark INSTALL redis-check-rdb INSTALL redis-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory `/opt/redis/redis-4.0.11/src' [root@CDH-143 redis-4.0.11]# [root@CDH-143 redis-4.0.11]# cd src && make install CC Makefile.dep Hint: It's a good idea to run 'make test' ;) INSTALL install INSTALL install INSTALL install INSTALL install INSTALL install
编译安装成功。
1.4 启动redis
[root@CDH-143 src]# ./redis-server 24496:C 11 Mar 13:49:56.298 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 24496:C 11 Mar 13:49:56.298 # Redis version=4.0.11, bits=64, commit=00000000, modified=0, pid=24496, just started 24496:C 11 Mar 13:49:56.298 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf
_._ _.-``__ ''-._ _.-`` `. `_. ''-._ Redis 4.0.11 (00000000/0) 64 bit .-`` .-```. ```/ _.,_ ''-._ ( ' , .-` | `, ) Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379 | `-._ `._ / _.-' | PID: 18685 `-._ `-._ `-./ _.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | http://redis.io `-._ `-._`-.__.-'_.-' _.-' |`-._`-._ `-.__.-' _.-'_.-'| | `-._`-._ _.-'_.-' | `-._ `-._`-.__.-'_.-' _.-' `-._ `-.__.-' _.-' `-._ _.-' `-.__.-'
24496:M 11 Mar 13:49:56.302 # Server initialized 24496:M 11 Mar 13:49:56.303 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 24496:M 11 Mar 13:49:56.303 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 24496:M 11 Mar 13:49:56.303 * Ready to accept connections
启动成功。
以下为设置redis开机自启,并且添加到系统服务
1.4.1 复制redis配置文件
[root@CDH-143 src]# mkdir /etc/redis [root@CDH-143 src]# cd .. [root@CDH-143 redis-4.0.11]# ls 00-RELEASENOTES CONTRIBUTING deps Makefile README.md runtest runtest-sentinel src utils BUGS COPYING INSTALL MANIFESTO redis.conf runtest-cluster sentinel.conf tests [root@CDH-143 redis-4.0.11]# cp redis.conf /etc/redis/6379.conf
修改redis启动为后台启动:
[root@CDH-143 redis-4.0.11]# vi /etc/redis/6379.conf
配置说明
#设置端口号: port 6379 #允许远程连接: bind 0.0.0.0
#参数为yes时需要设置密码,no不需要
protected-mode no
#允许后台运行: daemonize yes #设置密码: #requirepass 密码
pidfile /var/run/redis_6379.pid
#指定本地数据库存放目录
dir /data/opt/redis_data
#指定本地数据库文件名
dbfilename redis-6379.rdb
1.4.2 将启动文件拷贝到init.d中
[root@CDH-143 redis-4.0.11]# cp utils/redis_init_script /etc/init.d/redisd
1.4.3 修改启动脚本参数
[root@CDH-143 redis-4.0.11]# vi /etc/init.d/redisd
添加以下代码,:wq保存退出
添加
# chkconfig: 2345 10 90 # description: Start and Stop redisd
修改:
EXEC=/opt/redis/redis-4.0.11/src/redis-server CLIEXEC=/opt/redis/redis-4.0.11/src/redis-cli PIDFILE=/opt/redis/redis-4.0.11/redis_${REDISPORT}.pid
1.4.4 增加脚本执行权限
[root@CDH-143 redis-4.0.11]# chmod +x /etc/init.d/redisd
1.4.5 增加系统服务
[root@CDH-143 redis-4.0.11]# chkconfig --add redisd [root@CDH-143 redis-4.0.11]# chkconfig --list redisd Note: This output shows SysV services only and does not include native systemd services. SysV configuration data might be overridden by native systemd configuration. If you want to list systemd services use 'systemctl list-unit-files'. To see services enabled on particular target use 'systemctl list-dependencies [target]'. redisd 0:off 1:off 2:on 3:on 4:on 5:on 6:off [root@CDH-143 redis-4.0.11]#
1.4.6 启动redis服务测试
[root@CDH-143 redis-4.0.11]# service redisd start Starting Redis server... 9084:C 11 Mar 15:23:36.469 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 9084:C 11 Mar 15:23:36.469 # Redis version=4.0.11, bits=64, commit=00000000, modified=0, pid=9084, just started 9084:C 11 Mar 15:23:36.469 # Configuration loaded [root@CDH-143 redis-4.0.11]# [root@CDH-143 redis-4.0.11]# ps -aux | grep redis root 3575 0.0 0.0 38260 2140 ? Ssl 15:09 0:00 /opt/redis/redis-4.0.11/src/redis-server 127.0.0.1:6379 root 8870 0.0 0.0 112660 956 pts/2 S+ 15:22 0:00 grep --color=auto redis
配置完毕,重启服务器,测试是否成功
防火墙添加端口
[root@data21 src]# firewall-cmd --zone=public --list-ports 3306/tcp [root@data21 src]# firewall-cmd --zone=public --add-port=6379/tcp --permanent success [root@data21 src]# firewall-cmd --zone=public --list-ports 3306/tcp [root@data21 src]# firewall-cmd --zone=public --list-ports 3306/tcp [root@data21 src]# systemctl restart firewalld [root@data21 src]# firewall-cmd --zone=public --list-ports 3306/tcp 6379/tcp [root@data21 src]# firewall-cmd --zone=public --list-ports 3306/tcp 6379/tcp
参考并修改自:https://www.cnblogs.com/yy3b2007com/p/10513752.html
redis集群安装
https://ld246.com/article/1533285549776