diff --git a/配置项/配置项.md b/配置项/配置项.md new file mode 100644 index 0000000..e538798 --- /dev/null +++ b/配置项/配置项.md @@ -0,0 +1,127 @@ +http://c.biancheng.net/redis/config-summary.html + +# 基本配置 + + port 6379 # 监听端口号,默认为6379,如果你设为 0 ,redis 将不在 socket 上监听任何客户端连接。 + daemonize no #指定redis是否以守护线程的方式启动 + databases 16 #创建database的数量,默认为0库 + + save 900 1 #刷新快照到硬盘中。必须满足下列三个要求之一才会触发,即900秒内至少有1个key发生变化。 + save 300 10 #在300秒内至少10个key发生变化。 + save 60 10000 #在60秒之内至少有10000个可以发生变化。 + + stop-writes-on-bgsave-error yes #后台存储错误并停止写入命令。 + rdbcompression yes #使用LZF方式压缩rdb文件。如果你想节省一些CPU可设置成'no' + rdbchecksum yes #在存储、加载rdb文件时进行校验。 + dbfilename dump.rdb #设置rdb文件名。 + dir ./ #设置工作目录,rdb文件会自动存放在该目录。 + + # 主从服务配置 + + slaveof #将本机设为某台机器的从服务器 + masterauth #连接主服务器的密码 + slave-serve-stale-data yes # 当主机和从机断开时或这正处于在复制过程中,是否让从服务器是应答请求 + slave-read-only yes #设置从服务器为只读模式 + repl-diskless-sync no #是否同时向多个从服务器节点同时发数据 + repl-diskless-sync-delay 5 #发送数据的延迟时间 + repl-ping-slave-period 10 #主节点默认每隔 10 秒对从节点发送 ping 命令 + repl-timeout 60 #主从服务器超时时间(超时认为断线了),要比period设置的时间大 + + #如果master不能再正常工作,那么会在多个slave中,选择优先值最小的一个slave提升为master, + #优先值为0表示不能提升为master,一般在哨兵sentinel环境中使用。 + slave-priority 100 + + #在slave和master同步后,后续的同步是否设置成TCP_NODELAY,设置成no,则redis master会立即发送同步数据,没有延迟 + repl-disable-tcp-nodelay no + min-slaves-to-write 3 #主节点仅允许当能够通信的从节点数量大于等于此处的值时,才允许接受写操作; + min-slaves-max-lag 10 #从节点延迟时长超出此处指定的时间时,主节点会拒绝写入操作; + + +# 安全配置 + + requirepass foobared # 用来配置密码 + rename-command CONFIG b84 #在公共环境下重命名部分敏感命令 如config、flushall等 + + + +# 限制配置 + + maxclients 10000 #最大连接数 + maxmemory #最大使用内存 + maxmemory-policy volatile-lru #内存到极限后的处理策略 + + #内存处理策略,用于在超出内存限制时,删除一些key + volatile-lru # LRU算法删除过期key + allkeys-lru # LRU算法删除key(不区分过不过期) + volatile-random # 随机删除过期key + allkeys-random # 随机删除key(不区分过不过期) + volatile-ttl # 删除快过期的key + noeviction # 禁止删除key,这如果内存不足,会直接返回错误。默认配置 + + #用于提高LRU/TTL算法的精准度,在自动清理内存时,指定的数字越大,CPU消耗就越多,默认为5。 + maxmemory-samples 5 + + +# aof日志模式 + + appendonly no #是否启用日志模式 + appendfsync no # 有系统决定何时写,统一写,速度快 + appendfsync always # 系统不缓冲,一直写,但是慢,这种方式几乎不丢失数据 + appendfsync everysec #每秒写1次 + + no-appendfsync-on-rewrite no #相当于将appendfsync设置为no,不存在磁盘操作,只是将数据写入了缓冲区,写入速度非常快 + auto-AOF-rewrite-percentage 100 #触发aof重写操作,要求本次文件大小比上次重写时要增加1(100%)倍 + auto-AOF-rewrite-min-size 64mb #触发aof重写操作,至少要达到的aof文件大小 + + +# 慢查询配置 + + slowlog-log-slower-than 10000 #记录响应时间大于10000微秒的慢查询 + slowlog-max-len 128 # 最多记录128条 + +# 服务端命令 + time #返回时间戳+微秒 + dbsize #返回key的数量 + bgrewriteaof #重写aof + bgsave #后台开启子进程来执行数据持久化 + save #以阻塞的方式对数据进行持久化 + lastsave #返回最近一次 Redis 成功将数据保存到磁盘上的时间,以 UNIX 时间戳格式表示。 + + slaveof host port #设置为host:port的从服务器(数据清空,复制新的主服务器内容) + slaveof no one #变成主服务器(原数据不丢失,一般用于主服失败后) + + flushdb 清空当前数据库的所有数据 + flushall 清空所有数据库的所有数据 + + shutdown [save/nosave] 关闭服务器,保存数据,修改AOF + + slowlog get 获取慢查询日志 + slowlog len 获取慢查询日志条数 + slowlog reset 清空慢查询 + + +# 客户端命令 + + #以易于理解和阅读的方式返回Redis服务器的各种信息、统计数值 + info [server|clients|memory|stats|] + config get [配置项] #获取配置文件选项 + config set [配置项] [参数值] #重新设置配置文件选项和对应参数 + config rewrite #对启动Redis服务器时所指定的配置文件进行改写 + config resetstat #重置info命令中的某些统计信息 + + debug object key #调试选项,看一个key的情况 + debug segfault #该命令能够让服务器崩溃 + object key (refcount|encoding|idletime) + monitor #调试用,打开控制台,观察命令 + client list #列出所有连接 + client kill #杀死某个连接 CLIENT KILL 127.0.0.1:6379 + client getname #获取连接的名称 默认nil + client setname #设置连接名称,便于调试 + +# 连接命令 + + auth 密码 #验证登录密码(如果设置了密码) + ping #测试服务器是否可用 + echo "hello www.biancheng.net" #测试服务器是否正常交互 + select 0/1/2/3/4... #选择数据库0-15 + quit #退出连接 \ No newline at end of file