redis 安装配置使用

redis 安装配置

redis-6.0.6.tar.gz

官网下载源码:http://www.redis.cn/
http://download.redis.io/releases/

安装依赖包

1.安装gcc套装:

yum install cpp

yum install binutils

yum install glibc

yum install glibc-kernheaders

yum install glibc-common

yum install glibc-devel

  • yum install gcc

yum install make

2.升级gcc

yum -y install centos-release-scl

yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

scl enable devtoolset-9 bash

3、设置永久升级:

echo “source /opt/rh/devtoolset-9/enable” >>/etc/profile

安装redis

下载

wget http://download.redis.io/releases/redis-6.0.6.tar.gz

解压 编译 安装

tar -zvxf redis-6.0.6.tar.gz
cd redis-4.0.10
make && make install

配置redis

配置redis配置文件 监听文件 启动文件

mkdir /etc/redis
cd redis-4.0.10/
cp redis.conf /etc/redis/6379.conf
cp sentinel.conf /etc/redis/63779.conf
cp utils/redis_init_script /etc/init.d/redis
chmod 755 /etc/init.d/redis

守护进程的方式启动服务 daemonize no 改为 daemonize yes

vi /etc/redis/6379.conf

修改redis 配置访问限制(否则只有本机可以访问)

# bind 127.0.0.1 改为 0.0.0.0
vi /etc/redis/6379.conf

开放端口

#查看想开的端口是否已开 提示no表示未开
firewall-cmd --query-port=6379/tcp 
#开永久端口号  提示 success 表示成功
firewall-cmd --add-port=6379/tcp --permanent
#重新载入防火墙配置
firewall-cmd --reload 

启动 redis

systemctl start redis

设置监听地址

vi /etc/redis/63779.conf

注:bind 参数若都注释掉,则会监听服务器上的所有 ip
可以指定一个或者多个,打开注释。
注意此配置项可能在 71 行左右。默认是 bind 127.0.0.1

示例1:开机启动(centos7 systemd )

touch /lib/systemd/system/redis.server
vi  /lib/systemd/system/redis.server

# vim /lib/systemd/system/redis.service
[Unit]
Description=Redis
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/redis-server /etc/redis/6379.conf  --daemonize no
ExecStop=/usr/local/bin/redis-cli -p 6379 shutdown

[Install]
WantedBy=multi-user.target

注:[Unit] 表示这是基础信息配置块
Description 是描述
After 开启自启动时候的顺序, 指定的服务必须先于次此服务启动,一般是网络服务启动后启动
[Service] 表示这里是服务信息配置块
Type 指定启动服务的类型, simple 是默认的方式
EnvironmentFile 指定服务启动时用到的配置文件
ExecStart 是启动服务的命令
ExecStop 是停止服务的指令
[Install] 表示这是是安装信息配置块
WantedBy 是以哪种方式启动:multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。

授权在主机启动的时候同时启动服务

systemctl enable redis.service

示例2:systemctl 使用普通用户启动

# 创建启动用户
useradd -s /sbin/nologin -r redis
vim /lib/systemd/system/redis.service
[Unit]
Description=Redis Server
After=network.target

[Service]
Type=simple
#PIDFile=/var/run/redis.pid
User=redis
#ExecStartPre=/bin/mkdir -p /var/lib/redis/logs
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
ExecStop=/bin/kill -15 $MAINPID
Restart=on-failure

[Install]
WantedBy=multi-user.target
## 刷新配置
systemctl daemon-reload
## 启动
systemctl start redis
#检查默认端口 6379 是否监听
[root@localhost system]# ss -antpd |grep 6379
#手动使用命令指定配置文件启动服务
/usr/local/bin/redis-server /etc/redis/6379.conf
 #客户端指定端口访问
redis-cli -p 6379     
#手动停止服务
redis-cli -p 6379 shutdown      
#手动启动服务就需手动关闭服务,再执行systemctl restart redis          

redis 开启密码验证

修改redis配置文件:redis.conf

cp redis.conf /usr/local/redis/redis.conf
vim /usr/local/redis/redis.conf
# requirepass foobared
requirepass 1234
#将foobared 修改为1234,1234 就是密码

登入验证:

# redis-cli
127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth 1234
OK
127.0.0.1:6379> keys *

redis 备份与恢复

redis默认将数据存放到dump.rdb文件中

配置文件修改数据存储位置

vim /usr/local/redis/redis.conf
# The filename where to dump the DB
dbfilename dump.rdb
# Note that you must specify a directory here, not a file name.
dir /usr/local/redis/

注:

dump.rdb 转储数据库的文件名,redis服务在关闭时会将数据保存到dump.rdb文件中,重新启动时会在读取dump.rdb 文件进行数据恢复
dir /usr/local/redis/ dump.rdb存放的位置

也可使用命令生成dump.rdb 文件

redis-cli save

开启aof存储

配置文件中打开下面选项,默认为no

appendonly yes

# The name of the append only file (default: "appendonly.aof")

appendfilename "appendonly.aof"

1.redis 关闭时会将数据写入到appendonly.aof 文件,重新启动时会读取appendonly.aof 恢复数据
2.aof 开启后重启redis不会加载dump.rdb文件
3.若服务redis没有开启aof存储,但数据有很重要不能丢失,可执行下面命令生成aof文件

# redis-cli
127.0.0.1:6379> BGREWRITEAOF

数据恢复

1.先停止redis服务

2.将appendonly.aof或dump.rdb文件拷贝到配置文件定义的数据目录下面(注意: 文件名应与配置文件中定义的文件名相一致)

3.重启redis服务

4.查看验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值