今天我们来介绍一下如何在centos上面,安装redis和基本的使用,redis是一个高性能的数据库,下面我们来介绍一下吧
1:打开官网http://www.redis.cn/,点击下载,找到下载安装的地址,使用源码安装(可以安装指定版本)
1.下载redis源码
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解压缩tar -zxf redis-4.0.10.tar.gz
3.切换redis源码目录cd redis-4.0.10.tar.gz
4.编译源文件make
5.编译好后,src/目录下有编译好的redis指令
6.make install 安装到指定目录,默认在/usr/local/bin
2:但是这里我们使用另外一种更加方便快捷的方式,就是yum安装
[root@localhost opt]# yum install redis -y
#安装好,启动redis
[root@localhost opt]# systemctl start redis
我这里已经安装好了,可以直接使用了
#去掉注释输入配置文件到bak文件中
[root@localhost opt]# grep -v "^#" /etc/redis.conf | grep -v '^$' > /etc/redis.conf.bak
注意为了安全可以修改以下几个参数哦,包括bind、port、portected-mode
绑定ip,如需要远程访问,需要填写服务器ip
bind 127.0.0.1
端口,redis启动端口
port
守护进程方式运行
daemonize yes ###后台一直守护运行哦
rdb数据文件
dbfilename dump.rdb
数据文件存放路径
dir /var/lib/redis/
日志文件
logfile /var/log/redis/redis-server.log
主从复制
slaveof
ps:可以指定配置文件启动哦,命令如下
redis-server /etc/redis.conf
redis中常用命令如下
keys * #列出所有的key
flushdb #清空所有数据key
set name dong #设置name为dong
get name #获取值
ps:如果服务器重启,进程重启,redis没有配置持久化,那么是所有数据都会丢失的哦,那么如何配置了,请看如下
Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失。
RDB持久化
redis提供了RDB持久化的功能,这个功能可以将redis在内存中的的状态保存到硬盘中,它可以手动执行。
也可以再redis.conf中配置,定期执行。
RDB持久化产生的RDB文件是一个经过压缩的二进制文件,这个文件被保存在硬盘中,redis可以通过这个文件还原数据库当时的状态。
1:建立一个测试文件redis.conf.chijiuhua01用来存储持久化的基本命令
vim /etc/redis.conf.chijiuhua01
#写入如下内容哦
daemonize yes
port 6379
logfile /data/6379/redis.log
dir /data/6379 #定义持久化文件存储位置
dbfilename dbmp.rdb #rdb持久化文件
bind 10.0.0.10 127.0.0.1 #redis绑定地址
requirepass redhat #redis登录密码
save 900 1 #rdb机制 每900秒 有1个修改记录
save 300 10 #每300秒 10个修改记录
save 60 10000 #每60秒内 10000修改记录
2:创建持久化文件夹用来存储产生的文件
mkdir -p /data/6379
3:指定配置文件启动哦
server-server /etc/redis.conf.chijiuhua01
4:可以通过编写脚本,让redis手动执行save命令,触发持久化,在redis命令行中,直接输入save即可触发持久化
[root@localhost 6379]# redis-cli
127.0.0.1:6379> set name "test chijiuhua"
OK
127.0.0.1:6379> set name2 'hello redis'
OK
127.0.0.1:6379> set name3 'good study'
OK
127.0.0.1:6379> save
OK
127.0.0.1:6379>
这个时候会发现已经自动创建了redis.log日志文件
具体操作请看图片
下面介绍第二种方式
AOF(append-only log file)
记录服务器执行的所有变更操作命令(例如set del等),并在服务器启动时,通过重新执行这些命令来还原数据集
AOF 文件中的命令全部以redis协议的格式保存,新命令追加到文件末尾。
优点:最大程序保证数据不丢
缺点:日志记录非常大
1:创建如下配置文件
vim /etc/redis.conf.chijiuhua02
2:加入如下内容,配置参数,
daemonize yes
port 6379
logfile /data/6379aof/redis.log
dir /data/6379aof/
appendonly yes #开启aof功能
appendfsync everysec #每秒钟持久化一次
3:创建aof的数据文件夹
mkdir -p /data/6379aof/
4:启动redis的数据库
[root@localhost etc]# redis-server /etc/redis.conf.chijiuhua02
参数说明
#AOF持久化配置,两条参数
appendonly yes
appendfsync always 总是修改类的操作
everysec 每秒做一次持久化
no 依赖于系统自带的缓存大小机制
5.redis的aof持久化机制,是在重启的时候,redis重新执行一遍aof文件中的命令,实现数据复现
6.如果该aof日志文件被删除,数据也就无法恢复了
大功告成~~~