Redis缓存数据库安装配置

1.yum安装Redis

  ①、先安装扩展,执行yum install epel-release -y

  ②、安装Redis 执行yum install redis

  补充:ssh下直接拖拽文件到ssh窗口无法上传到linux主机是因为没有安装yum install lrzsz -y

  yum安装查看安装文件路径:rpm -ql redis

  ③、yum安装完以后,默认会将redis-cli加入环境变量,直接执行redis-cli即可登陆

2.手动安装Redis

  安装之前先使用yum安装gcc等依赖包:

    yum -y install gcc automake autoconf libtool make

    yum install gcc-c++

  提示:未安装gcc编译环境可能导致make安装redis报错,重新安装gcc后需要使用make clean清除之前的残留文件再使用make安装

  ①、下载安装包wget http://download.redis.io/releases/redis-3.2.6.tar.gz

  ②、解压 tar xzvf redis-3.2.6.tar.gz到要存放的目录,如创建/data/redis-3.2.6

  ③、切换到安装目录cd redis-3.2.6

  ④、make编译

  ⑤、安装完以后,在安装目录下单独创建一个目录如Redis6380,拷贝

  cp ./src/redis-server ./redis6380/

  cp ./redis.conf ./redis6380/

  过滤配置文件信息:grep '^[^$|#;]' redis.conf >redis.conf2

  将原配置文件重命名备份,将过滤后的配置文件重命名为redis.conf

  修改redis配置文件端口号如:port 6380  (默认只有一个redis的情况不需要修改端口号,修改端口号一般用于多实例安装)

  开启运行运行守护进程,使之后台运行:daemonize yes

  ⑤、运行./redis-server ./redis.conf

  ⑥、登陆cd src,执行redis-cli

  ⑦、多实例的情况下,直接执行redis-cli进入的是6379端口对应的实例,可以使用redis-cli -p 6380登陆6380端口对应的实例,其他多实例同理

  ⑧、可通过redis-cli --help查询命令使用帮助

  127.0.0.1:6380> keys *          //查看redis所有键
  1) "lisi"
  2) "foo"
  3) "zhangsan"

  

3.redis数据库操作命令,请参考redisdoc.com4.Redis配置文件redis.conf重要参数

  bind 127.0.0.0     //监听ip,以便设置为服务器内网ip

  daemonize no  -> yes  //后台运行

  port 6379       //端口 

  appendonly no  -> yes  //日志开关

  logfile stdout  -> ./logs/redis.log  //日志文件

  dbfilename dump.rdb    //持久化数据文件,相当于数据库的数据文件,可修改为指定路径

5.关闭Redis数据库     
[root@localhost redis6380]# redis-cli
127.0.0.1:6379> SHUTDOWN
not connected> EXIT

6.Redis 3.2新特性

解决访问安全

Bind 指定IP进行监听 bind 192.168.47.xxx ip2 ip3

禁止protected-mode

protected-mode yes/no    //yes是开启

增加requirepass {password} 

requirepass 123456    //设置保护模式的密码

在redis-cli中使用时输入auth {password}进行认证

[root@localhost redis6380]# redis-cli -p 6380
127.0.0.1:6380> get foo
(error) NOAUTH Authentication required.
127.0.0.1:6380> auth root
OK
127.0.0.1:6380> set foo zhangsan
OK
127.0.0.1:6380> get foo
"zhangsan"
7.获取当前redis配置信息

CONFIG GET *

8.变更运行配置

CONGFIG SET loglevel "notice"

127.0.0.1:6380> config set loglevel "notice"
OK
127.0.0.1:6380> config get loglevel
1) "loglevel"
2) "notice"

9.Redis数据存储

10.持久化

RDB持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。

AOF持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。AOF文件中的命令全部已Redis协议的格式来保持,新命令会被追加到文件的末尾。redis还可以在后台对AOF文件进行重写(rewrite),使得AOF文件的体积不会超出保存数据集状态所需的实际大小。

Redis还可以同时使用AOF持久化和RDB持久化。在这种情况下,当redis重启时,它会优先使用AOF文件来还原数据集,因为AOF文件保存的数据集通常比RDB文件所保存的数据集更完整。

你甚至可以关闭持久化功能,让数据只在服务器运行时存在。

持久化策略:

日志文件 appendonly yes/no

save 900 1    //表示900s(15分钟)内有1个更改,即将数据写入硬盘

save 300 10   //表示300s(5分钟)内有10个更改,即将数据写入硬盘

save 60 10000  //表示60s(1分钟)内有10000个更改,即将数据写入硬盘

11.同步

appendfsync everysec

no 表示等操作系统进行数据缓存同步到磁盘。linux约30秒(快)

always 表示每次更新操作后调用fsync()将数据写到磁盘(慢,安全)

everysec 表示每秒同步一次(折中,默认值)

猜你喜欢

转载自www.cnblogs.com/Simplelearning/p/12416897.html