PS: 记录一下CentOS7安装配置Redis过程
文章目录
1.Redis介绍
-
基于内存或持久化的日志型、key-value型的Nosql数据库
-
Redis六大特性
-
速度快
-
广泛的语言支持
-
持久化
-
多种数据结构
-
主从复制
-
高可用与分布式
-
-
Redis的优势
-
快
- Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执行81000次的读取/获取(GET)操作。
-
支持丰富的数据类型
- Redis支持开发人员常用的大多数数据类型,例如列表,集合,排序集和散列等等。
- 这使得Redis很容易被用来解决各种问题,因为我们知道哪些问题可以更好使用地哪些数据类型来处理解决。
-
操作的原子性:
- 所有Redis操作都是原子操作,这确保如果两个客户端并发访问,Redis服务器能接收更新的值。
-
很多使用工具:
- Redis是一个多实用工具,可用于多种用例,
- 如:缓存,消息队列(Redis本地支持发布/订阅),应用程序中的任何短期数据,
- 例如,web应用程序中的会话,网页命中计数等。
-
2.Redis部署
2.1下载
- 版本
- 6.2.11
2.1.1官网
-
地址
-
国外: www.redis.io
2.1.2命令行
cd /usr/local
wget https://mirrors.huaweicloud.com/redis/redis-6.2.11.tar.gz
2.2解压
-
tar命令主要参数解释
- -z参数:表示要解压或压缩的是tar.gz文件【如果是tar.bz2就是**-j**】
- -x参数:表示是执行解压缩操作而不是打包操作
- -v参数:表示列出解压时的详细消息
- -f参数:指定要解压的文件名,或者指定新建的打包文件的名字
-
tar命令解压时还可以指定解压的目标目录,也就是把压缩文件的内容解压到哪个文件夹内,这个参数是-C(大写的C)
-
例子
- 解压tar.gz文件
tar -zxv -f test.tar.gz -C /home/user/target
- 解压tar.bz2文件
tar -jxv -f test.tar.bz2 -C /home/user/target
-
tar -xzvf redis-6.2.11.tar.gz
- 删除压缩包
rm -rf redis-6.2.11.tar.gz
- 文件重命名
mv redis-6.2.11 redis
2.3编译
2.3.1安装gcc
-
redis 是c语言开发的
-
安装gcc编译器来编译代码
yum install gcc-c++ # 若已经安装过则需不用处理
2.3.2编译
- redis 包里面是源代码,需要编译
cd /usr/local/develop/redis
make
3.Redis配置文件修改
3.1进入目录
cd /usr/local/develop/redis
3.2修改配置
3.2.1编辑文件
vim redis.conf
3.2.2内容修改
未修改参数 | 修改后的参数 |
---|---|
daemonize no | daemonize yes |
bind 127.0.0.1 | bind 0.0.0.0 |
requirepass foobared | requirepass 740740 |
3.3配置环境变量
- 在任何位置下都可以启动redis
- 编辑配置文件
vim /etc/profile
- 添加路径信息
## 在文件末尾添加如下内容
export REDIS_HOME=/usr/local/develop/redis/src
export PATH=$PATH:$REDIS_HOME
source /etc/profile
- 查看配置是否生效
cd src
# 启动服务
redis-server /usr/local/develop/redis/redis.conf &
# 查看进程
ps aux | grep redis
或者
ps -ef | grep redis
# 连接客户端
./redis-cli
# 退出客户端
./redis-cli shutdown
exit
4.启动与关闭redis服务
- 进入 文件目录中,进入src目录
- redis-server
- 运行redis的命令
- redis-cli
- 命令行客户端
4.1启动
4.1.1运行带有配置文件 命令
- 命令是执行刚才上一步配置的命令
./src/redis-server /usr/local/develop/redis/redis.conf
4.1.2直接启动
- 运行默认执行的是默认的配置文件
./src/redis-server
4.1.3日志在后台进行运行
./redis-server &
4.2进入客户端
/usr/local/develop/redis/redis-cli
或者
./redis-cli -a password -h ip
4.3关闭
-
在启动界面直接Ctrl+c 退出启动界面,redis就会自动关闭,
-
如果要敲其他命令,另开一个窗口
# 进入redis后退出,执行执行如下命令
quit
4.3.1在客户端中停止redis
./redis-cli SHUTDOWN
4.3.2系统操作
ps -aux | grep redis
kill -9 xxxx
4.4设置开机自启动
- 编辑/etc/systemd/system/redis.service文件
vim /etc/systemd/system/redis.service
- 在文件末尾添加如下内容
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/develop/redis/src/redis-server /usr/local/develop/redis/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- 重载系统服务
systemctl daemon-reload
-
测试并加入开机自启
-
先关闭redis-server
systemctl stop redis.service
-
开启redis-server
systemctl start redis.service
-
将服务加入开机自启
systemctl enable redis.service
-
重启
reboot
-
查看服务运行状态
systemctl status redis.service
-
-
全部命令
#启动redis服务
systemctl start redis.service
#设置开机自启动
systemctl enable redis.service
#停止开机自启动
systemctl disable redis.service
#查看服务当前状态
systemctl status redis.service
#重新启动服务
systemctl restart redis.service
#查看所有已启动的服务
systemctl list-units --type=service
4.5远程客户端连接
- redis配置文件中只允许在本机中访问
- redis服务在哪台机器上启动就只能在哪台机器上访问
- 不允许远程连接
cd /usr/local/develop/redis
vim redis.conf
- 在vim状态下直接输入【/bind】
- 查找bind字符串,找到
bind 127.0.0.1 -::1
, - 将其修改为
bind 0.0.0.0
4.6开放防火墙端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent && firewall-cmd --reload
5.redis卸载
5.1删除生成文件
- 关闭redis服务后,删除make的时候生成的几个redisXXX的
- 删除/usr/local/develop/bin这个目录下所有以redis开头的文件
rm -f /usr/local/develop/bin/redis*
5.2删除掉解压的目录和文件
- 当前目录:/usr/local
cd /usr/local
rm -rf redis