【Linux安装部署Redis超详细教程】
一、先检查是否安装:
## 检查是否安装了Redis
ps -ef | grep redis
如果存在就先删除:
sudo yum remove redis
二、安装TCL
1、先检查是否安装了tcl:
rpm -qa | grep tcl
2、进入data目录,创建redis目录并进入该目录
cd /data
mkdir redis
cd redis
cd /data/redis/
3、使用wget命令下载压缩包
wget http://downloads.sourceforge.net/tcl/tcl8.6.12-src.tar.gz
4、将tcl8.6.12-src.tar.gz这个源代码包解压到当前目录下(即:/data/redis)
sudo tar xzvf tcl8.6.12-src.tar.gz
5、进入到指定unix目录下
cd /data/redis/tcl8.6.12/unix/
6、运行当前目录下的configure脚本
sudo ./configure
7、编译源代码
sudo make
make
8、安装
sudo make install
三、安装Redis
1、下载安装包
中文官网:Redis中文官网
官网:官网
官网下载慢的话,直接去资源包下载
2、进入刚才创建的目录,解压上传的压缩包
## 进入文件夹
cd /data/redis
## 解压文件
tar -zxvf redis-6.2.6.tar.gz
3、进入安装目录,编译测试
cd /data/redis/redis-6.2.6/
``
## 输入命令make执行编译命令
make
## make test测试一下
make test
4、指定PREFIX安装目录为/data/redis,不添加该关键字Linux会将可执行文件存放在/data/redis/bin目录
make install PREFIX=/data/redis
四、配置Redis
1、设置软连接到环境变量
ln -s /data/redis/redis-6.2.6/redis.conf /etc/redis.conf
2、编辑配置文件内容
vi /etc/redis.conf
3、更改配置文件内容
①:按键盘的/进入查找模式,查找关键字daemonize no,按i键进入编辑模式,把no改成yes,设置为后台启动redis
②:查找关键字protected-mode,将yes改为no
③:查找关键字bind 127.0.0.1,由bind 127.0.0.1改为bind 0.0.0.0(一般可能不存在)
④:按Esc退出编辑模式,按:wq保存退出vim编辑器
五、启动Redis
1、进入到Redis的bin目录下
cd /data/redis/bin
2、启动Redis服务
./redis-server /etc/redis.conf
3、查看Redis是否启动成功
lsof -i:6379
4、连接本机Redis测试
./redis-cli -h 127.0.0.1 -p 6379
5、如果正常就关闭服务
./redis-cli shutdown
六、设置开机自启
1、进入etc目录
cd /etc
2、新建redis目录
mkdir redis
3、拷贝redis配置文件并命名为6379.conf
cp /data/redis/redis-6.2.6/redis.conf /etc/redis/6379.conf
4、将redis的启动脚本复制一份放到/etc/init.d目录下
cp /data/redis/redis-6.2.6/utils/redis_init_script /etc/init.d/redis
5、编辑拷贝的redis文件
vi /etc/init.d/redis
修改为自己的安装目录!
6、进入Linux存放自启动脚本的目录
cd /etc/init.d
7、设置可执行权限
chmod 777 /etc/init.d/redis
8、设置为开机自启
chkconfig redis on
9、查看服务列表`
chkconfig --list
10、启动Redis服务
## 启动服务
service redis start
11、查看是否启动成功
netstat -lntp | grep 6379
12、关闭服务
service redis stop
七、开启防火墙 放行端口
## 查看当前防火墙放行端口情况。
firewall-cmd --zone=public --list-ports
## 查看端口状态,比如redis 6379 no-表示关闭,yes-表示开启
firewall-cmd --zone=public --query-port=6379/tcp
## 放行端口
sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
## 防火墙重载
firewall-cmd --reload
## 再次查看端口状态
firewall-cmd --zone=public --query-port=6379/tcp
## 其他
## 检查防火墙状态
sudo systemctl status firewalld
## 开启防火墙
## 1、之前关闭,现在临时开启
sudo systemctl start firewalld
## 2、开机自启
sudo systemctl enable firewalld
## 关闭防火墙
## 1、临时关闭
sudo systemctl stop firewalld
## 永久关闭
sudo systemctl disable firewalld
八、其他
1.常用命令
redis-server /usr/local/redis/etc/redis.conf //启动redis
pkill redis //停止redis
卸载redis:
rm -rf /usr/local/redis //删除安装目录
rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹
2.启动redis:
两种方式:
redis-server &
加上`&`号使redis以后台程序方式运行
或者是
redis-server
3.检测后台进程是否存在
ps -ef |grep redis
4.检测6379端口是否在监听
netstat -lntp | grep 6379
有时候会报异常
原因: Redis已经启动
解决: 关掉Redis,重启即可
redis-cli shutdown
redis-server
然后你就能看到Redis愉快的运行了.
使用redis-cli客户端检测连接是否正常
redis-cli
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set key "hello world"
OK
127.0.0.1:6379> get key
"hello world"
停止redis:
使用客户端
redis-cli shutdown
因为Redis可以妥善处理SIGTERM信号,所以直接kill -9也是可以的
kill -9 PID
#启动redis服务端
$ src/redis-server
#启动redis客户端
$ src/redis-cli
安装redis时 提示执行make命令时提示 CC adlist.o /bin/sh: cc: 未找到命令
这是由于系统没有安装gcc环境,因此在进行编译时才会出现上面提示,当安装好gcc后再进行编译时,上面错误提示将消失
yum -y install gcc automake autoconf libtool make
yum install gcc-c++