您好,登錄后才能下訂單哦!
這篇文章主要介紹了Redis中的Info指令有什么用,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
Redis提供了info指令,它會(huì)返回關(guān)于Redis服務(wù)器的各種信息和統(tǒng)計(jì)數(shù)值。在使用Redis時(shí),時(shí)常會(huì)遇到一些疑難雜癥需要我們?nèi)ヅ挪?,這個(gè)時(shí)候我們可以通過info指令來獲取Redis的運(yùn)行狀態(tài),然后進(jìn)行問題的排查。
通過給定可選的參數(shù) section ,可以讓命令只返回某一部分的信息:
server: Redis服務(wù)器的一般信息
clients: 客戶端的連接部分
memory: 內(nèi)存消耗相關(guān)信息
persistence: RDB和AOF相關(guān)信息
stats: 一般統(tǒng)計(jì)
replication: 主/從復(fù)制信息
cpu: 統(tǒng)計(jì)CPU的消耗
commandstats: Redis命令統(tǒng)計(jì)
cluster: Redis集群信息
keyspace: 數(shù)據(jù)庫(kù)的相關(guān)統(tǒng)計(jì)
它也可以采取以下值:
all: 返回所有信息
default: 值返回默認(rèn)設(shè)置的信息
如果沒有使用任何參數(shù)時(shí),默認(rèn)為default,返回所有的信息。
返回Redis服務(wù)所有的信息
# Server redis_version:6.2.4 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:fa652e749408dcfd redis_mode:standalone os:Linux 3.10.0-327.el7.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll atomicvar_api:c11-builtin gcc_version:9.3.1 process_id:4617 process_supervised:no run_id:9662797d01b55345cd6cabad38d102e27db19e66 tcp_port:6379 server_time_usec:1632494557942546 uptime_in_seconds:4 uptime_in_days:0 hz:10 configured_hz:10 lru_clock:5104605 executable:/usr/local/soft/redis-6.2.4/src/redis-server config_file:/usr/local/soft/redis-6.2.4/redis.conf io_threads_active:0 # Clients connected_clients:1 cluster_connections:0 maxclients:10000 client_recent_max_input_buffer:16 client_recent_max_output_buffer:0 blocked_clients:0 tracking_clients:0 clients_in_timeout_table:0 # Memory used_memory:874728 used_memory_human:854.23K used_memory_rss:10207232 used_memory_rss_human:9.73M used_memory_peak:932800 used_memory_peak_human:910.94K used_memory_peak_perc:93.77% used_memory_overhead:830808 used_memory_startup:810168 used_memory_dataset:43920 used_memory_dataset_perc:68.03% allocator_allocated:1036080 allocator_active:1380352 allocator_resident:3932160 total_system_memory:1913507840 total_system_memory_human:1.78G used_memory_lua:37888 used_memory_lua_human:37.00K used_memory_scripts:0 used_memory_scripts_human:0B number_of_cached_scripts:0 maxmemory:104857600 maxmemory_human:100.00M maxmemory_policy:volatile-lfu allocator_frag_ratio:1.33 allocator_frag_bytes:344272 allocator_rss_ratio:2.85 allocator_rss_bytes:2551808 rss_overhead_ratio:2.60 rss_overhead_bytes:6275072 mem_fragmentation_ratio:12.27 mem_fragmentation_bytes:9375272 mem_not_counted_for_evict:0 mem_replication_backlog:0 mem_clients_slaves:0 mem_clients_normal:20496 mem_aof_buffer:0 mem_allocator:jemalloc-5.1.0 active_defrag_running:0 lazyfree_pending_objects:0 lazyfreed_objects:0 # Persistence loading:0 current_cow_size:0 current_cow_size_age:0 current_fork_perc:0.00 current_save_keys_processed:0 current_save_keys_total:0 rdb_changes_since_last_save:0 rdb_bgsave_in_progress:0 rdb_last_save_time:1632494553 rdb_last_bgsave_status:ok rdb_last_bgsave_time_sec:-1 rdb_current_bgsave_time_sec:-1 rdb_last_cow_size:0 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 aof_last_cow_size:0 module_fork_in_progress:0 module_fork_last_cow_size:0 # Stats total_connections_received:1 total_commands_processed:1 instantaneous_ops_per_sec:0 total_net_input_bytes:31 total_net_output_bytes:20324 instantaneous_input_kbps:0.00 instantaneous_output_kbps:0.00 rejected_connections:0 sync_full:0 sync_partial_ok:0 sync_partial_err:0 expired_keys:0 expired_stale_perc:0.00 expired_time_cap_reached_count:0 expire_cycle_cpu_milliseconds:0 evicted_keys:0 keyspace_hits:0 keyspace_misses:0 pubsub_channels:0 pubsub_patterns:0 latest_fork_usec:0 total_forks:0 migrate_cached_sockets:0 slave_expires_tracked_keys:0 active_defrag_hits:0 active_defrag_misses:0 active_defrag_key_hits:0 active_defrag_key_misses:0 tracking_total_keys:0 tracking_total_items:0 tracking_total_prefixes:0 unexpected_error_replies:0 total_error_replies:0 dump_payload_sanitizations:0 total_reads_processed:2 total_writes_processed:1 io_threaded_reads_processed:0 io_threaded_writes_processed:0 # Replication role:master connected_slaves:0 master_failover_state:no-failover master_replid:5b43385d46f4a601c025cb2c4ce5706b0b77db86 master_replid2:0000000000000000000000000000000000000000 master_repl_offset:0 second_repl_offset:-1 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0 # CPU used_cpu_sys:0.030666 used_cpu_user:0.000000 used_cpu_sys_children:0.000000 used_cpu_user_children:0.000000 used_cpu_sys_main_thread:0.030570 used_cpu_user_main_thread:0.000000 # Modules # Errorstats # Cluster cluster_enabled:0 # Keyspace db0:keys=2,expires=0,avg_ttl=0
下面是所有 server 相關(guān)的信息
參數(shù)名 | 含義 |
---|---|
redis_version | Redis 服務(wù)器版本 |
redis_git_sha1 | Git SHA1 |
redis_git_dirty | Git dirty flag |
redis_build_id | 構(gòu)建ID |
redis_mode | 服務(wù)器模式(standalone,sentinel或者cluster) |
os | Redis 服務(wù)器的宿主操作系統(tǒng) |
arch_bits | 架構(gòu)(32 或 64 位) |
multiplexing_api | Redis 所使用的事件處理機(jī)制 |
atomicvar_api | Redis使用的Atomicvar API |
gcc_version | 編譯 Redis 時(shí)所使用的 GCC 版本 |
process_id | 服務(wù)器進(jìn)程的 PID |
run_id | Redis 服務(wù)器的隨機(jī)標(biāo)識(shí)符(用于 Sentinel 和集群) |
tcp_port | TCP/IP 監(jiān)聽端口 |
uptime_in_seconds | 自 Redis 服務(wù)器啟動(dòng)以來,經(jīng)過的秒數(shù) |
uptime_in_days | 自 Redis 服務(wù)器啟動(dòng)以來,經(jīng)過的天數(shù) |
hz | 服務(wù)器的頻率設(shè)置 |
lru_clock | 以分鐘為單位進(jìn)行自增的時(shí)鐘,用于 LRU 管理 |
executable | 服務(wù)器的可執(zhí)行文件路徑 |
config_file | 配置文件路徑 |
下面是所有 clients 相關(guān)的信息
參數(shù)名 | 含義 |
---|---|
connected_clients | 已連接客戶端的數(shù)量(不包括通過從屬服務(wù)器連接的客戶端) |
client_longest_output_list | 當(dāng)前連接的客戶端當(dāng)中,最長(zhǎng)的輸出列表 |
client_biggest_input_buf | 當(dāng)前連接的客戶端當(dāng)中,最大輸入緩存 |
blocked_clients | 正在等待阻塞命令(BLPOP、BRPOP、BRPOPLPUSH)的客戶端的數(shù)量 |
下面是所有 memory 相關(guān)的信息
參數(shù)名 | 含義 |
---|---|
used_memory | 由 Redis 分配器分配的內(nèi)存總量,以字節(jié)(byte)為單位 |
used_memory_human | 以人類可讀的格式返回 Redis 分配的內(nèi)存總量 |
used_memory_rss | 從操作系統(tǒng)的角度,返回 Redis 已分配的內(nèi)存總量(俗稱常駐集大?。?。這個(gè)值和 top 、 ps 等命令的輸出一致。 |
used_memory_peak | Redis 的內(nèi)存消耗峰值(以字節(jié)為單位) |
used_memory_peak_human | 以人類可讀的格式返回 Redis 的內(nèi)存消耗峰值 |
used_memory_peak_perc | 使用內(nèi)存占峰值內(nèi)存的百分比 |
used_memory_overhead | 服務(wù)器為管理其內(nèi)部數(shù)據(jù)結(jié)構(gòu)而分配的所有開銷的總和(以字節(jié)為單位) |
used_memory_startup | Redis在啟動(dòng)時(shí)消耗的初始內(nèi)存大?。ㄒ宰止?jié)為單位) |
used_memory_dataset | 以字節(jié)為單位的數(shù)據(jù)集大?。╱sed_memory減去used_memory_overhead) |
used_memory_dataset_perc | used_memory_dataset占凈內(nèi)存使用量的百分比(used_memory減去used_memory_startup) |
total_system_memory | Redis主機(jī)具有的內(nèi)存總量 |
total_system_memory_human | 以人類可讀的格式返回 Redis主機(jī)具有的內(nèi)存總量 |
used_memory_lua | Lua 引擎所使用的內(nèi)存大小(以字節(jié)為單位) |
used_memory_lua_human | 以人類可讀的格式返回 Lua 引擎所使用的內(nèi)存大小 |
maxmemory | maxmemory配置指令的值 |
maxmemory_human | 以人類可讀的格式返回 maxmemory配置指令的值 |
maxmemory_policy | maxmemory-policy配置指令的值 |
mem_fragmentation_ratio | used_memory_rss 和 used_memory 之間的比率 |
mem_allocator | 在編譯時(shí)指定的, Redis 所使用的內(nèi)存分配器??梢允?libc 、 jemalloc 或者 tcmalloc |
active_defrag_running | 指示活動(dòng)碎片整理是否處于活動(dòng)狀態(tài)的標(biāo)志 |
lazyfree_pending_objects | 等待釋放的對(duì)象數(shù)(由于使用ASYNC選項(xiàng)調(diào)用UNLINK或FLUSHDB和FLUSHALL) |
在理想情況下, used_memory_rss 的值應(yīng)該只比 used_memory 稍微高一點(diǎn)兒。當(dāng) rss > used ,且兩者的值相差較大時(shí),表示存在(內(nèi)部或外部的)內(nèi)存碎片。內(nèi)存碎片的比率可以通過mem_fragmentation_ratio 的值看出。當(dāng) used > rss 時(shí),表示 Redis 的部分內(nèi)存被操作系統(tǒng)換出到交換空間了,在這種情況下,操作可能會(huì)產(chǎn)生明顯的延遲。由于Redis無法控制其分配的內(nèi)存如何映射到內(nèi)存頁,因此常住內(nèi)存(used_memory_rss)很高通常是內(nèi)存使用量激增的結(jié)果。當(dāng) Redis 釋放內(nèi)存時(shí),內(nèi)存將返回給分配器,分配器可能會(huì),也可能不會(huì),將內(nèi)存返還給操作系統(tǒng)。如果 Redis 釋放了內(nèi)存,卻沒有將內(nèi)存返還給操作系統(tǒng),那么 used_memory 的值可能和操作系統(tǒng)顯示的 Redis 內(nèi)存占用并不一致。查看 used_memory_peak 的值可以驗(yàn)證這種情況是否發(fā)生。
下面是所有 persistence 相關(guān)的信息:
參數(shù)名 | 含義 |
---|---|
loading | 指示轉(zhuǎn)儲(chǔ)文件(dump)的加載是否正在進(jìn)行的標(biāo)志 |
rdb_changes_since_last_save | 自上次轉(zhuǎn)儲(chǔ)以來的更改次數(shù) |
rdb_bgsave_in_progress | 指示RDB文件是否正在保存的標(biāo)志 |
rdb_last_save_time | 上次成功保存RDB的基于紀(jì)年的時(shí)間戳 |
rdb_last_bgsave_status | 上次RDB保存操作的狀態(tài) |
rdb_last_bgsave_time_sec | 上次RDB保存操作的持續(xù)時(shí)間(以秒為單位) |
rdb_current_bgsave_time_sec | 正在進(jìn)行的RDB保存操作的持續(xù)時(shí)間(如果有) |
rdb_last_cow_size | 上次RDB保存操作期間copy-on-write分配的字節(jié)大小 |
aof_enabled | 表示AOF記錄已激活的標(biāo)志 |
aof_rewrite_in_progress | 表示AOF重寫操作正在進(jìn)行的標(biāo)志 |
aof_rewrite_scheduled | 表示一旦進(jìn)行中的RDB保存操作完成,就會(huì)安排進(jìn)行AOF重寫操作的標(biāo)志 |
aof_last_rewrite_time_sec | 上次AOF重寫操作的持續(xù)時(shí)間,以秒為單位 |
aof_current_rewrite_time_sec | 正在進(jìn)行的AOF重寫操作的持續(xù)時(shí)間(如果有) |
aof_last_bgrewrite_status | 上次AOF重寫操作的狀態(tài) |
aof_last_write_status | 上一次AOF寫入操作的狀態(tài) |
aof_last_cow_size | 上次AOF重寫操作期間copy-on-write分配的字節(jié)大小 |
changes_since_last_save指的是從上次調(diào)用SAVE或者BGSAVE以來,在數(shù)據(jù)集中產(chǎn)生某種變化的操作的數(shù)量。
如果啟用了AOF,則會(huì)添加以下這些額外的字段:
參數(shù)名 | 含義 |
---|---|
aof_current_size | 當(dāng)前的AOF文件大小 |
aof_base_size | 上次啟動(dòng)或重寫時(shí)的AOF文件大小 |
aof_pending_rewrite | 指示AOF重寫操作是否會(huì)在當(dāng)前RDB保存操作完成后立即執(zhí)行的標(biāo)志。 |
aof_buffer_length | AOF緩沖區(qū)大小 |
aof_rewrite_buffer_length | AOF重寫緩沖區(qū)大小 |
aof_pending_bio_fsync | 在后臺(tái)IO隊(duì)列中等待fsync處理的任務(wù)數(shù) |
aof_delayed_fsync | 延遲fsync計(jì)數(shù)器 |
如果正在執(zhí)行加載操作,將會(huì)添加這些額外的字段:
參數(shù)名 | 含義 |
---|---|
loading_start_time | 加載操作的開始時(shí)間(基于紀(jì)元的時(shí)間戳) |
loading_total_bytes | 文件總大小 |
loading_loaded_bytes | 已經(jīng)加載的字節(jié)數(shù) |
loading_loaded_perc | 已經(jīng)加載的百分比 |
loading_eta_seconds | 預(yù)計(jì)加載完成所需的剩余秒數(shù) |
下面是所有 stats 相關(guān)的信息:
參數(shù)名 | 含義 |
---|---|
total_connections_received | 服務(wù)器接受的連接總數(shù) |
total_commands_processed | 服務(wù)器處理的命令總數(shù) |
instantaneous_ops_per_sec | 每秒處理的命令數(shù) |
rejected_connections | 由于maxclients限制而拒絕的連接數(shù) |
expired_keys | key到期事件的總數(shù) |
evicted_keys | 由于maxmemory限制而導(dǎo)致被驅(qū)逐的key的數(shù)量 |
keyspace_hits | 在主字典中成功查找到key的次數(shù) |
keyspace_misses | 在主字典中查找key失敗的次數(shù) |
pubsub_channels | 擁有客戶端訂閱的全局pub/sub通道數(shù) |
pubsub_patterns | 擁有客戶端訂閱的全局pub/sub模式數(shù) |
latest_fork_usec | 最新fork操作的持續(xù)時(shí)間,以微秒為單位 |
下面是所有 replication 相關(guān)的信息:
參數(shù)名 | 含義 |
---|---|
role | 如果實(shí)例不是任何節(jié)點(diǎn)的從節(jié)點(diǎn),則值是”master”,如果實(shí)例從某個(gè)節(jié)點(diǎn)同步數(shù)據(jù),則是”slave”。 請(qǐng)注意,一個(gè)從節(jié)點(diǎn)可以是另一個(gè)從節(jié)點(diǎn)的主節(jié)點(diǎn)(菊花鏈) |
如果實(shí)例是從節(jié)點(diǎn),則會(huì)提供以下這些額外字段:
參數(shù)名 | 含義 |
---|---|
master_host | 主節(jié)點(diǎn)的Host名稱或IP地址 |
master_port | 主節(jié)點(diǎn)監(jiān)聽的TCP端口 |
master_link_status | 連接狀態(tài)(up或者down) |
master_last_io_seconds_ago | 自上次與主節(jié)點(diǎn)交互以來,經(jīng)過的秒數(shù) |
master_sync_in_progress | 指示主節(jié)點(diǎn)正在與從節(jié)點(diǎn)同步 |
如果SYNC操作正在進(jìn)行,則會(huì)提供以下這些字段:
參數(shù)名 | 含義 |
---|---|
master_sync_left_bytes | 同步完成前剩余的字節(jié)數(shù) |
master_sync_last_io_seconds_ago | 在SYNC操作期間自上次傳輸IO以來的秒數(shù) |
如果主從節(jié)點(diǎn)之間的連接斷開了,則會(huì)提供一個(gè)額外的字段:
參數(shù)名 | 含義 |
---|---|
master_link_down_since_seconds | 自連接斷開以來,經(jīng)過的秒數(shù) |
以下字段將始終提供:
參數(shù)名 | 含義 |
---|---|
connected_slaves | 已連接的從節(jié)點(diǎn)數(shù) |
對(duì)每個(gè)從節(jié)點(diǎn),將會(huì)添加以下行: slaveXXX id,地址,端口號(hào),狀態(tài)
下面是所有 cpu 相關(guān)的信息:
參數(shù)名 | 含義 |
---|---|
used_cpu_sys | 由Redis服務(wù)器消耗的系統(tǒng)CPU |
used_cpu_user | 由Redis服務(wù)器消耗的用戶CPU |
used_cpu_sys_children | 由后臺(tái)進(jìn)程消耗的系統(tǒng)CPU |
used_cpu_user_children | 由后臺(tái)進(jìn)程消耗的用戶CPU |
cluster部分當(dāng)前只包含一個(gè)唯一的字段:
參數(shù)名 | 含義 |
---|---|
cluster_enabled | 表示已啟用Redis集群 |
keyspace部分提供有關(guān)每個(gè)數(shù)據(jù)庫(kù)的主字典的統(tǒng)計(jì),統(tǒng)計(jì)信息是key的總數(shù)和過期的key的總數(shù),對(duì)于每個(gè)數(shù)據(jù)庫(kù),提供以下行:
參數(shù)名 | 含義 |
---|---|
keyspace | dbXXX keys=XXX,expires=XXX |
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Redis中的Info指令有什么用”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。