标签:服务 bind rod 运行时 debug space 格式 开发 操作
127.0.0.1:6379[1]> config get dir 1) "dir" 2) "/home/redis/data"
看一下现在的dump.rbd文件
[root@localhost data]# ls -ll total 4 -rw-r--r-- 1 root root 108 May 2 16:32 dump.rdb
看一下日期,执行bgsave并且查看dump.rbd文件:
127.0.0.1:6379[1]> bgsave Background saving started \[root@localhost data]# ls -ll total 4 -rw-r--r-- 1 root root 108 May 9 10:18 dump.rdb
看一下,备份时间已经修改为最新我们执行备份的时间了。
127.0.0.1:6379[1]> lastsave (integer) 1494296312
我们把时间戳转换以后就是1494296312=2017/5/9 10:18:32
3:关于CLIENT的几个系统命令
127.0.0.1:6379[1]> client getname (nil) 127.0.0.1:6379[1]> client setname mxqconnect1 OK 127.0.0.1:6379[1]> client getname "mxqconnect1" 127.0.0.1:6379[1]> client list id=2350 addr=172.16.16.34:13200 fd=7 name=sentinel-51fc16eb-cmd age=583234 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=publish id=2351 addr=172.16.16.34:13201 fd=9 name=sentinel-51fc16eb-pubsub age=583234 idle=0 flags=N db=0 sub=1 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=subscribe id=2352 addr=172.16.16.35:39670 fd=10 name= age=583233 idle=0 flags=S db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=replconf id=2362 addr=127.0.0.1:34498 fd=12 name=mxqconnect1 age=150 idle=0 flags=N db=1 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 events=r cmd=client id=2353 addr=172.16.16.35:39672 fd=6 name=sentinel-d7303108-pubsub age=583232 idle=0 flags=N db=0 sub=1 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=subscribe id=2354 addr=172.16.16.35:39671 fd=8 name=sentinel-d7303108-cmd age=583232 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=ping id=2355 addr=172.16.16.35:39687 fd=11 name= age=583223 idle=0 flags=S db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=replconf 127.0.0.1:6379[1]>
关闭自身的链接:
127.0.0.1:6379[1]> CLIENT KILL 127.0.0.1:34498 OK 127.0.0.1:6379[1]> 127.0.0.1:6379[1]> GET NAME (error) NOAUTH Authentication required.
我们知道Redis 使用单线程设计,所以当 Redis 正在执行命令的时候,不会有客户端被断开连接。我们断开本身的链接后,在执行下一次命令,就会出现一个错误,告知我们已经断开了连接。
下面看一下CLIENT LIST的各个域的含义,也是Redis官网给出的解释:
以下是域的含义: addr : 客户端的地址和端口 fd : 套接字所使用的文件描述符 age : 以秒计算的已连接时长 idle : 以秒计算的空闲时长 flags : 客户端 flag (见下文) db : 该客户端正在使用的数据库 ID sub : 已订阅频道的数量 psub : 已订阅模式的数量 multi : 在事务中被执行的命令数量 qbuf : 查询缓存的长度( 0 表示没有查询在等待) qbuf-free : 查询缓存的剩余空间( 0 表示没有剩余空间) obl : 输出缓存的长度 oll : 输出列表的长度(当输出缓存没有剩余空间时,回复被入队到这个队列里) omem : 输出缓存的内存占用量 events : 文件描述符事件(见下文) cmd : 最近一次执行的命令 客户端 flag 可以由以下部分组成: O : 客户端是 MONITOR 模式下的附属节点(slave) S : 客户端是一般模式下(normal)的附属节点 M : 客户端是主节点(master) x : 客户端正在执行事务 b : 客户端正在等待阻塞事件 i : 客户端正在等待 VM I/O 操作(已废弃) d : 一个受监视(watched)的键已被修改, EXEC 命令将失败 c : 在将回复完整地写出之后,关闭链接 u : 客户端未被阻塞(unblocked) A : 尽可能快地关闭连接 N : 未设置任何 flag 文件描述符事件可以是: r : 客户端套接字(在事件 loop 中)是可读的(readable) w : 客户端套接字(在事件 loop 中)是可写的(writeable)
4:CONFIG SET|GET|REWRITE
127.0.0.1:6379[1]> clinet get name (error) ERR unknown command ‘clinet‘ 127.0.0.1:6379[1]> client getname (error) NOAUTH Authentication required. 127.0.0.1:6379[1]> AUTH maxiangqianreids (error) ERR invalid password 127.0.0.1:6379[1]> AUTH maxiangqianredis OK 127.0.0.1:6379[1]> config get timeout 1) "timeout" 2) "300" 127.0.0.1:6379[1]> config set timeout 3000 OK 127.0.0.1:6379[1]> config get timeout 1) "timeout" 2) "3000"
我们执行config rewrite,然后查看配置文件
[root@localhost redis]# cat redis.conf #bind 127.0.0.1 # 绑定的主机地址 port 6379 timeout 3000
timeout已经被修改为3000了。
还有一个CONFIG 命令CONFIG RESETSTAT
5:DBSIZE
127.0.0.1:6379> DBSIZE (integer) 4 127.0.0.1:6379> INFO KEYSPACE # Keyspace db0:keys=4,expires=0,avg_ttl=0 db1:keys=1,expires=0,avg_ttl=0
6:DEBUG OBJECT key
DEBUG OBJECT 是一个调试命令,它不应被客户端所使用。
7:FLUSHALL:清空整个 Redis 服务器的数据(删除所有数据库的所有 key )。此命令从不失败。
8:INFO:系统相关信息,下面看一下相关的例子:
127.0.0.1:6379> INFO KEYSPACE # Keyspace db0:keys=4,expires=0,avg_ttl=0 db1:keys=1,expires=0,avg_ttl=0 127.0.0.1:6379> info replication # Replication role:master connected_slaves:2 slave0:ip=172.16.16.35,port=6380,state=online,offset=131088123,lag=0 slave1:ip=172.16.16.35,port=6379,state=online,offset=131088123,lag=1 master_repl_offset:131088123 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:130039548 repl_backlog_histlen:1048576 127.0.0.1:6379> info Persistence # Persistence loading:0 rdb_changes_since_last_save:2 rdb_bgsave_in_progress:0 rdb_last_save_time:1494299732 rdb_last_bgsave_status:ok rdb_last_bgsave_time_sec:0 rdb_current_bgsave_time_sec:-1 aof_enabled:0 aof_rewrite_in_progress:0 aof_rewrite_scheduled:0 aof_last_rewrite_time_sec:-1 aof_current_rewrite_time_sec:-1 aof_last_bgrewrite_status:ok aof_last_write_status:ok
我们可以通过INFO 后带域的信息查看相关复制,KEY值和相关的持久化信息。
9:MONITOR相关信息
127.0.0.1:6379> MONITOR OK 1494300607.699131 [0 172.16.16.34:13200] "PING" 1494300607.783224 [0 172.16.16.34:13200] "PUBLISH" "__sentinel__:hello" "172.16.16.34,26379,51fc16eb8e0bf950a3f3ada8c1eb9d70145c9ffb,2,localhost,172.16.16.34,6379,2" 1494300608.585669 [0 172.16.16.35:39671] "PING" 1494300608.676104 [0 172.16.16.35:39671] "PUBLISH" "__sentinel__:hello" "172.16.16.35,26379,d73031089231fd5f46bdda23d8a448cfe64ec8fd,2,localhost,172.16.16.34,6379,2" 1494300608.724879 [0 172.16.16.34:13200] "PING" 1494300609.640910 [0 172.16.16.35:39671] "PING" 1494300609.746056 [0 172.16.16.34:13200] "PING" 1494300609.836231 [0 172.16.16.34:13200] "PUBLISH" "__sentinel__:hello" "172.16.16.34,26379,51fc16eb8e0bf950a3f3ada8c1eb9d70145c9ffb,2,localhost,172.16.16.34,6379,2" 1494300610.713244 [0 172.16.16.35:39671] "PING" 1494300610.752325 [0 172.16.16.34:13200] "PING"
主要就是监控Redis的实时链接信息,这个功能感觉也是很好用。当大量新链接出问题时候我们可以看到连接的来源地址和主要作用。
10:SLAVEOF host port
11:SHUTDOWN 命令执行以下操作:
标签:服务 bind rod 运行时 debug space 格式 开发 操作
原文地址:http://www.cnblogs.com/shengdimaya/p/6829879.html