redis 安装 配置解析

本文详细介绍了Redis的安装步骤、配置文件各项参数的意义及推荐设置,包括守护进程启动、安全配置、持久化策略等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[size=large][size=medium][b]一、 下载安装[/b]

Wget http://redis.googlecode.com/files/redis-2.2.7.tar.gz

[b]二、.安装部署[/b]

tar zxvf
redis-2.2.7.tar.gz
cd redis-2.2.7.tar.gz
make


可以将redis.conf 复制到 /etc/下

cp redis.conf /etc/
cp src/redis-server src/redis-cli src/redis-benchmark /usr/local/redis

启动redis

/usr/local/redis/redis-server redis.conf

[color=red]可以将启动命令加到/etc/rc.local 文件里,[/color]

[b]三、 配置文件[/b]

vim /etc/redis.conf

[b]1.redis 的配置文件单位比较有意思,对1k 和1kb 这样的单位做了明确的区分,不过感觉意义不是很大。[/b]
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
而且,单位不区分大小写,1M = 1m

[b]2.daemonize no[/b]

[color=red][b]默认下,redis启动不以守护进程的方式启动,生产环境下建议将配置改为yes[/b][/color]

3.pidfile /var/run/redis.pid,pid文件,没啥好说的
4.port 6379,配置redis端口,默认6379。可以将port配置为0,此时不监听tcp协议,有些怪怪的。
[color=red][b]5.bind 127.0.0.1,绑定ip。默认绑定所有本机ip,一般用在服务器多ip下,可以只监听内网服务器ip,保证服务安全。[/b][/color]
6.unixsocket /tmp/redis.sock。sock文件
7.timeout 300。客户端超时时间,单位秒
8.loglevel verbose
log级别,支持四个级别,debug,notice,verbose,warning
9.logfile log文件路径
logfile stdout,log输出到标准设备,logs不写文件,输出到空设备,/deb/null
[b]10.SNAPSHOTTING 快照,持久化相关[/b]
[color=red]save <seconds> <changes>
save 900 1
保存快照的频率,表示:在多长时间内执行一定数量的写操作时,保存快照的频率,可以设置多个条件。如果都注释掉,则不做内存数据持久化。本环境就是把redis只用作cache,不开启持久化功能。[/color]
rdbcompression:是否使用压缩
dbfilename:快照数据库名称
dir:#数据库存放路径

[b]11. REPLICATION 主从配置(配置从服务器)[/b]
slaveof <masterip> <masterport>: 主库ip 端口
masterauth <master-password>:主库服务器口令,如果主服务器未打开requirepass,怎不需要此项
slave-serve-stale-data yes:在master服务器挂掉或者同步失败时,从服务器是否继续提供服务。
[b]12.########## SECURITY ########
安全相关[/b]
[color=red]requirepass foobared:设置redis服务密码,如果开启,则客户端连接时需要 -a 指定密码,否则操作会提示无权限[/color]

redis> set dd dd
(error) ERR operation not permitted

rename-command : 命令改名,相当于linux alias
可以用改功能屏蔽一些危险命令
如rename-command CONFIG ""。别名为空就可。

[b]13.LIMITS[/b]

[color=red]maxclients 128:最大连接数;0 表示不限制[/color]

[color=blue][b]maxmemory <bytes> : 最大使用内存,推荐生产环境下做相应调整,我们用的是只用来做高速缓存,限制2G。默认情况下,redis会占用可用的所有内存。[/b][/color]

maxmemory-policy volatile-lru: 过期策略,提供六种策略
[b][color=red]volatile-lru:删除过期和lru 的key(默认值)[/color][/b]
allkeys-lru : 删除lru算法的key
volatile-random:随机删除即将过期key
allkeys->random:随机删除(这个真傻)
volatile-ttl : 删除即将过期的
noeviction : 永不过期,返回错误(也比较傻)


maxmemory-samples 3: 不是很明白,说是校验 lru ttl 算法准确性的。


[b]14.APPEND ONLY MODE[/b]
appendonly:#是否开启appendonlylog,开启的话每次写操作会记一条log。相当于mysql的binlog;不同的是,每次redis启动都会读此文件构建完整数据。[b]即使删除rdb文件,数据也是安全的。[/b]

appendfilename appendonly.aof:日志文件的名称,默认appendonly.aof
appendfsync:异步写append file 的策略。类似mysql事物log写方式。三种
appendfsync always:同步,每次写都要flush到磁盘,安全,速度慢。
appendfsync everysec :每秒写(默认值,推荐值)同mysql
appendfsync no:交给操作系统去做flush的动作

no-appendfsync-on-rewrite no:不是很清楚,防止linux阻止长耗时io问题的?

[b]15 VIRTUAL MEMORY ,虚拟内存设置[/b]

vm-enabled no : 虚拟内存开关
vm-swap-file /tmp/redis.swap: swap文件,不同redis swap文件不能共享。而且生产环境下,不建议放在tmp目录。
vm-max-memory 0: vm大小限制。0:不限制,建议60-80% 可用内存大小。
vm-page-size 32 : 根据缓存内容大小调整,默认32字节。
vm-pages 134217728 : page数。每 8 page,会占用1字节内存。
vm-page-size * vm-pages 等于 swap 文件大小
vm-max-threads 4 : vm 最大io线程数。注意: 0 标志禁止使用vm(开关真多)

[b]16.ADVANCED CONFIG ,高级配置[/b]

hash-max-zipmap-entries 512
hash-max-zipmap-value 64

list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
activerehashing yes

[/size][/size]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值