Linux 安装redis
1 新建文件夹
mkdir -p /export/servers/ mkdir -p /export/software/ mkdir -p /export/data/ mkdir -p /export/logs
2 把文件放到服务器上的software文件夹内 然后解压到servers文件夹内
cd /export/software //进入software文件夹 //直接联网下载安装文件也可以 //wget http://download.redis.io/releases/redis-4.0.2.tar.gz tar -zxvf redis-4.0.2.tar.gz -C /export/servers/ //解压 mv redis-4.0.2 redis-src
3 安装依赖环境
yum -y install gcc gcc-c++ libstdc++-devel tcl -y
4 编译redis
cd /export/servers/redis-src/ make MALLOC=libc make PREFIX=/export/servers/redis install
5 准备配置文件
mkdir -p /export/servers/redis/conf cd /export/servers/redis/conf vi redis_6379.conf
bind 这个属性配置redis的绑定的ip地址,一般不设置为127.0.0.1, 将其录入的配置文件中, 保存退出即可
bind 192.168.44.32 protected-mode yes port 6379 tcp-backlog 511 timeout 0 tcp-keepalive 300 daemonize yes supervised no pidfile /export/data/redis/6379/redis_6379.pid loglevel notice logfile "/export/data/redis/6379/log.log" databases 16 always-show-logo yes save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir /export/data/redis/6379/ slave-serve-stale-data yes slave-read-only yes repl-diskless-sync no repl-diskless-sync-delay 5 repl-disable-tcp-nodelay no slave-priority 100 lazyfree-lazy-eviction no lazyfree-lazy-expire no lazyfree-lazy-server-del no slave-lazy-flush no appendonly yes appendfilename "appendonly.aof" appendfsync everysec no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb aof-load-truncated yes aof-use-rdb-preamble no lua-time-limit 5000 slowlog-log-slower-than 10000 slowlog-max-len 128 latency-monitor-threshold 0 notify-keyspace-events "" hash-max-ziplist-entries 512 hash-max-ziplist-value 64 list-max-ziplist-size -2 list-compress-depth 0 set-max-intset-entries 512 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 hll-sparse-max-bytes 3000 activerehashing yes client-output-buffer-limit normal 0 0 0 client-output-buffer-limit slave 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 hz 10 aof-rewrite-incremental-fsync yes
6 启动服务
mkdir -p /export/data/redis/6379/ cd /export/servers/redis/bin/ ./redis-server ../conf/redis_6379.conf //查看命令 ps -ef|grep redis
7 redis客户端连接
./redis-cli -h 192.168.44.32
//输入ping 返回pang 表示成功
8 客户端退出
quit
Ctrl+c
PS:redis的持久化
-
RDB:类似于vmware中对linux的快照机制,将快照文件存储到本地磁盘中,RDB默认打开的
-
优点: 快照文件非常小, 易于灾难恢复
-
缺点: 存在数据丢失的风险
-
-
RDB的保存机制
save 900 1 : 在900秒之内,如果有一个数据进行修改,就会执行一下保存
save 300 10 : 在300秒之内, 如果有10个以上的数据被修改, 就会执行一下保存
save 60 10000 : 在60秒之内, 如果有10000个以上的数据被修改. 就会执行一下保存
-
RDB的这个风险如果服务器内存比较大的话,基本应该不会出什么问题
-
AOF:类似于日志文件的方式, 会将用户输入的修改数据库中的命令全部的记录下来,存储在一个文件当中
-
优点: 数据丢失的风险很低(只会丢掉极少的一部分)
-
缺点: 文件的大小很大,不适合灾难恢复
-
-
AOF设置:
appendonly yes //默认此项是no,没有启动AOF机制
appendfsync everysec //always everysec no
-
always: 用户输入的每一条记录都会立即保存的本地磁盘 (会极大的影响redis的效率)
-
everysec: 一秒执行一次保存操作
-
no: 不执行任何操作,依赖系统进行保存(30分钟会执行一次清理内存的)
开发中:
服务器多,内存大建议使用RDB;反之一般用AOF