smith88 发表于 2018-11-7 09:37:56

Redis实战(8)键值和服务器命令

  一、键值相关命令
  keys:
  返回满足给定 pattern 的所有 key

  用表达式*,代表取出所有的 key

  用表达式 mylist*,代表取出所有以 mylist 开头的 key
  exists:
  确认一个 key 是否存在

  del:
  删除一个 key

  expire:
  设置一个 key 的过期时间(单位:秒)

  在本例中,我们设置 age 这个 key 的过期时间是 10 秒,然后我们不断的用 ttl 来获取这个
  key 的有效时长.
ttl返回值:当key不存在时,返回-2。当key存在但没有设置剩余生存时间时,返回-1。否则,以秒为单位,返回key的剩余生存时间。  在 Redis 2.8 以前,当key不存在,或者key没有设置剩余生存时间时,命令都返回-1。
  move:
  将当前数据库中的 key 转移到其它数据库中

  在本例中,我先显式的选择了数据库 0,然后在这个库中设置一个 key,接下来我们将这个
  key 从数据库 0 移到数据库 1,之后我们确认在数据库 0 中无此 key 了, 但在数据库 1 中存在
  这个 key,说明我们转移成功了
  persist:
  移除给定 key 的过期时间

  在这个例子中,我们手动的将未到过期时间的 key,成功设置为过期
  randomkey:
  随机返回 key 空间的一个 key

  rename:
  重命名 key

  type:
  返回值的类型

  二、服务器命令
  ping:
  测试连接是否存活
127.0.0.1:6379> ping  
PONG
  
127.0.0.1:6379>
  这个说明时连接成功的。
  echo :
  在命令行打印一些内容
127.0.0.1:6379> echo 'hello world'  
"hello world"
  
127.0.0.1:6379>
  select:
  选择数据库。Redis 数据库编号从 0~15,我们可以选择任意一个数据库来进行数据的存取。

  当选择 16 时,报错,说明没有编号为 16 的这个数据库
  dbsize:
  返回当前数据库中 key 的数目。
127.0.0.1:6379> dbsize  
(integer) 8
  
127.0.0.1:6379>
  
结果说明此库中有 8 个 key
  info:
  获取服务器的信息和统计。
127.0.0.1:6379> info  
# Server
  
redis_version:2.8.2
  
redis_git_sha1:00000000
  
redis_git_dirty:0
  
redis_build_id:9f7a4dc70b6a0d35
  
redis_mode:standalone
  
os:Linux 3.2.0-55-generic x86_64
  
arch_bits:64
  
multiplexing_api:epoll
  
gcc_version:4.6.3
  
process_id:6756
  
run_id:d69ff05e10b7cae758fc13f950082d5aaec176f8
  
tcp_port:6379
  
uptime_in_seconds:2606
  
uptime_in_days:0
  
hz:10
  
lru_clock:246496
  
config_file:/home/jane/soft/redis-2.8.2/redis.conf
  
# Clients
  
connected_clients:1
  
client_longest_output_list:0
  
client_biggest_input_buf:0
  
blocked_clients:0
  
# Memory
  
used_memory:809384
  
used_memory_human:790.41K
  
used_memory_rss:2174976
  
used_memory_peak:809568
  
used_memory_peak_human:790.59K
  
used_memory_lua:33792
  
mem_fragmentation_ratio:2.69
  
mem_allocator:jemalloc-3.2.0
  
# Persistence
  
loading:0
  
rdb_changes_since_last_save:0
  
rdb_bgsave_in_progress:0
  
rdb_last_save_time:1386585111
  
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
  
# Stats
  
total_connections_received:2
  
total_commands_processed:81
  
instantaneous_ops_per_sec:0
  
rejected_connections:0
  
sync_full:0
  
sync_partial_ok:0
  
sync_partial_err:0
  
expired_keys:2
  
evicted_keys:0
  
keyspace_hits:23
  
keyspace_misses:10
  
pubsub_channels:0
  
pubsub_patterns:0
  
latest_fork_usec:180
  
# Replication
  
role:master
  
connected_slaves:0
  
master_repl_offset:0
  
repl_backlog_active:0
  
repl_backlog_size:1048576
  
repl_backlog_first_byte_offset:0
  
repl_backlog_histlen:0
  
# CPU
  
used_cpu_sys:0.18
  
used_cpu_user:0.39
  
used_cpu_sys_children:0.00
  
used_cpu_user_children:0.00
  
# Keyspace
  
db0:keys=8,expires=0,avg_ttl=0
  
db1:keys=1,expires=0,avg_ttl=0
  此结果用于说明服务器的基础信息,包括版本、启动时间等。
  monitor:
  实时转储收到的请求。
  在一个连接中,输入monitor,等待请求,再另一个连接中输入命令:

  config get:
  获取服务器配置信息。

  本例中我们获取了 dir 这个参数配置的值,如果想获取全部参数据的配置值也很简单,只需
  执行”config get *”即可将全部的值都显示出来。
  flushdb:
  删除当前选择数据库中的所有 key
  flushall:
  删除所有数据库中的所有 key。



页: [1]
查看完整版本: Redis实战(8)键值和服务器命令