1、启动redis-server
# redis-server redis.conf
2、linux查看redis-server是否启动
# netstat -tunpl | grep 6376
3、redis-server在后台启动,编辑redis.conf
daemonize yes
3、安全性启动redis requirepass 密码验证,编辑redis.conf
requirepass [密码]
在开启密码验证后,使用reids命令的时需要先授权
# auth [密码]
php 连接授权代码
$redis = new Redis();
$redis->connect("localhost","6379");
$redis->auth('密码');
另一种是登录授权
# redis-server redis.conf -a [密码]
4、配置主从redis服务器,实现主从复制(配置完成自动执行复制)。
需要至少两台redis服务器,一台master主服务器,n台slave从服务器,将从服务器中的redis.conf中的slaveof打开,如果master服务器开启了requirepass,那么在slave服务器redis.conf中masterauth也要打开。
# slaveof <master服务器Ip地址> <master服务器redis端口号>
# masterauth <master服务器密码>
使用 info 命令查看当前服务器的 role,是 master 还是 slave。
redis采用的是异步复制,复制不会阻塞主服务器,也不会阻塞从服务器。
同时,从服务器也可以有从服务器,可以让从服务器主要负责数据读取功能,将写入功能放到主服务器中进行,必须要保证主服务器至少有N个从服务器连接。
通过复制功能可以让主服务器避免执行数据持久化操作,由从服务器执行数据持久化操作。
5、数据持久化:
1) AOF: 只进行追加操作的文件 append-only file,保存宕机前的操作,在redis重启后自动调用aof文件中的写命令,恢复宕机前的操作。编辑redis.conf
appendonly [yes|on] # 开启或关闭aof,默认关闭,性能最佳
appendonly always # 收到写命令就立即写入磁盘,效率最慢,但能保证完全的持久化
appendfsync everysec # 每秒进行一次磁盘写入,在性能和持久化做了折中
2) RDB(默认开启): 快照,以二进制文件形式保存数据,默认名称dump.rdb
save 900 1 # 900秒内,有1个key被修改执行一次备份
save 300 10
save 60 10000
6、虚拟内存(2.4后废弃):将不常用的数据从内存交换到磁盘上去
vm-enabled yes #开启vm功能
vm-swap-file /tmp/redis.wap #交换出来的value保存的文件路径
vm-max-memory 1000000 #redis使用的最大内存上限
vm-page-size 32 #每个页面的大小32字节
vm-pages 134217728 #最多使用多少页面
vm-max-threads 4 #用于执行value对象交换工作线程数