Redis是一个简单高效的内存KV数据库,基本上下载源码make install,编译完成,然后进入src目录运行redis-server即可运行。就是因为这么简单往往有朋友直接运行,将没有密码的redis暴漏外网,最终数据被泄漏。鉴于这些血泪的教训,有必要来说一下redis的配置文件,当然这也比较简单,老鸟可以飘过。
默认的redis.conf存在于下载的源码的根目录下。下面是我配置的部分,没有列出来的就是我也没有动过的默认配置项。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
#引用其他配置文件
# include /path/to/local.conf
# include /path/to/other.conf
#是否daemon运行no,yes
daemonize no
#pid文件的位置
pidfile
/
tmp
/
redis.pid
#开放的端口号
port
6379
#listen队列的长度
tcp
-
backlog
511
#绑定ip地址,多个ip用空格分隔
bind
127.0
.
0.1
#我没有用到
# unixsocket /tmp/redis.sock
# unixsocketperm 755
#客户端空闲多少s后踢掉,0禁止
timeout
0
#检测挂掉的连接,单位s,0禁止
tcp
-
keepalive
0
#日志的等级,debug,verbose,notice,warning
loglevel notice
#log文件的路径,为空的话直接显示在终端
logfile ""
#是否使用系统logger,一直没有用过。
# syslog-enabled no/
# syslog-ident redis
# syslog-facility local0
#redis中有多少个数据库,默认即可
databases
16
#将redis内存数据序列化到磁盘的时间和频率
#900s有1个key改变就会序列化,其他的读者可以自己看下
save
900
1
save
300
10
save
60
10000
#序列化的时候是否停止写操作
stop
-
writes
-
on
-
bgsave
-
error yes
#序列化的数据是否压缩
rdbcompression yes
#序列化的数据是否校验其完整性
rdbchecksum yes
#序列化的文件名,只是文件不能带目录
dbfilename redis.rdb
#序列化文件的目录
dir
/
tmp
#以下是主从备份,我还没有使用到
# slaveof <masterip> <masterport>
# masterauth <master-password>
slave
-
serve
-
stale
-
data yes
slave
-
read
-
only yes
# repl-ping-slave-period 10
# repl-timeout 60
repl
-
disable
-
tcp
-
nodelay no
# repl-backlog-size 1mb
# repl-backlog-ttl 3600
slave
-
priority
100
# min-slaves-to-write 3
# min-slaves-max-lag 10
#客户端连接的密码
requirepass hello
# rename-command CONFIG ""
#限制客户端的数量
# maxclients 10000
#设置最大可用内存
# maxmemory <bytes>
#内存替换算法
# maxmemory-policy volatile-lru
# maxmemory-samples 3
|
使用:redis-server config-path
redis-cli –a 密码
示例配置文件下载(下载后请去掉后缀txt)redis.conf