参考:https://baijiahao.baidu.com/s?id=1667197295239073048&wfr=spider&for=pc
本文在史上最详细的资料基础上搞了一套史上最最详细的资料,欢迎接龙
一、安装
1、访问redis.io,下载最新稳定版,或者:
直接下载连接:https://download.redis.io/releases/redis-6.0.9.tar.gz
2、使用wget下载gz包:
wget https://download.redis.io/releases/redis-6.0.9.tar.gz
3、下载完毕之后进行解压:
tar -zxvf redis-6.0.9.tar.gz
4、编译前准备工作
4.1、安装/升级gcc版本:yum install gcc
4.2、CentOS7默认安装的是gcc 4.8.5版本,而redis6.0只支持5.3以上版本,这里将gcc升级到9
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
4.3、如果报错“You need tcl 8.5 or newer in order to run the Redis test”,则需升级tcl,步骤如下:
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
ll -rth tcl8.6.1-src.tar.gz
-rw-r--r-- 1 root root 8.4M Sep 20 2013 tcl8.6.1-src.tar.gz
tar -zxvf tcl8.6.1-src.tar.gz
cd /usr/local/tcl8.6.1/unix/
./configure
make
make install
5、设置gcc永久有效:
gcc终于升级好了,这时千万别忘记要进行版本的切换,升级了新版本肯定是使用新版本喽
墙裂建议进行永久切换这样,别临时切换完成之后重新连接服务器gcc自己又降回去了,就很麻烦啊啊啊
临时切换:scl enable devtoolset-9 bash
永久切换:echo “source /opt/rh/devtoolset-9/enable” >> /etc/profile
切换完成之后重新连接服务器生效,查看gcc版本
gcc -v
6、进到解压后的redis目录中进行编译
make test
make install
二、安全配置
安装成功之后这里建议你进行端口的修改,redis默认端口容易受到黑客攻击,进行挖矿行动,so,为了服务器的安全,还是修改端口号吧(孔子:别问我为什么知道,默默跟着改就行,我是不会骗你的,孟子:孔子说的对,老子:也亲身经历过攻击,一定一定要改端口、加密码)
把redis.conf 下载到本地进行修改简单方便
1、更改默认端口
由port 6379 改为 你自己定义的端口,例如:60000
2、以后台进程方式启动
修改daemonize no 为daemonize yes
3、设置redis远程连接
3.1、注释掉bind 127.0.0.1
3.2、设置redis连接密码:在requirepass foobard改为requirepass mypassword mypassword为设置的密码,这个密码尽量设置复杂些
4、conf文件更新后,需要防火墙打开自定义的端口
4.1、firewall-cmd --zone=public --list-ports //罗列打开的端口(如果没装firewall需要安装一把: yum install firewalld firewalld-config)
4.2、firewall-cmd --zone=public --add-port=60000/tcp --permanent //新增放行端口
三、启停服务及使用
先用ps aux|grep redis 看一眼有没有已启动的redis,如果有就关闭之:redis-cli shutdown
或者用查找进程号方式(不推荐)杀死进程:
ps -aux|grep redis
kill -9 进程号
然后用配置好的密码和端口启动:
[root@localhost ~/redis-6.0.9/src]$ redis-server ../redis.conf //用自定义配置启动redis
[root@localhost ~/redis-6.0.9/src]$ ps aux|grep redis //查看进程是否创建
root 24779 0.0 0.4 162432 7824 ? Ssl 01:59 0:00 redis-server *:60000
root 24785 0.0 0.0 112828 984 pts/0 S+ 01:59 0:00 grep --color=auto redis
[root@localhost ~/redis-6.0.9/src]$ firewall-cmd --zone=public --list-ports //查看防火墙设置(需事先打开自定义端口)
60000/tcp
[root@localhost ~/redis-6.0.9/src]$ redis-cli -a mypassword -p 60000 //用自定义密码(mypassword)和端口启动客户端
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:60000> set id1 'aaa' //一些redis命令test-start
OK
127.0.0.1:60000> set id2 'bbb'
OK
127.0.0.1:60000> get id1
"aaa"
127.0.0.1:60000> get id2
"bbb"
127.0.0.1:60000> del id2
(integer) 1
127.0.0.1:60000> dump id1
"\x00\x03aaa\t\x00\x7f\x8aj\xf9\xe2\xee\xc6."
127.0.0.1:60000> rename id1 id2
OK
127.0.0.1:60000> get id2
"aaa" //一些redis命令test-end
127.0.0.1:60000> shutdown //关闭redis服务
not connected> exit //退出到命令行
[root@localhost ~/redis-6.0.9/src]$ ps aux|grep redis
root 24851 0.0 0.0 112828 984 pts/0 S+ 02:09 0:00 grep --color=auto redis