目录
一、安装
1.1 查看
[root@iZ2ze30dygwd6yh7gu6lskZ ~]# dnf list redis
CentOS-8 - AppStream 834 kB/s | 4.3 kB 00:00
CentOS-8 - Base 697 kB/s | 3.9 kB 00:00
CentOS-8 - Extras 306 kB/s | 1.5 kB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 140 kB/s | 4.7 kB 00:00
Available Packages
redis.x86_64 5.0.3-2.module_el8.2.0+318+3d7e67ea AppStream
1.2 安装
[root@iZ2ze30dygwd6yh7gu6lskZ ~]# dnf install redis
Last metadata expiration check: 0:04:40 ago on Sat 20 Feb 2021 05:45:17 PM CST.
Dependencies resolved.
========================================================================================================================================
Package Architecture Version Repository Size
========================================================================================================================================
Installing:
redis x86_64 5.0.3-2.module_el8.2.0+318+3d7e67ea AppStream 925 k
Enabling module streams:
redis 5
Transaction Summary
========================================================================================================================================
Install 1 Package
Total download size: 925 k
Installed size: 3.2 M
Is this ok [y/N]: y
Downloading Packages:
redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64.rpm 6.3 MB/s | 925 kB 00:00
----------------------------------------------------------------------------------------------------------------------------------------
Total 6.3 MB/s | 925 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64 1/1
Installing : redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64 1/1
Running scriptlet: redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64 1/1
Verifying : redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64 1/1
Installed:
redis-5.0.3-2.module_el8.2.0+318+3d7e67ea.x86_64
Complete!
二、配置
2.1 打开conf
vim /etc/redis.conf
2.2 绑定IP
默认是绑定了本机IP,只允许本机连接。
而我们需要远程连接,则要把这个注释掉。
默认:
bind 127.0.0.1
改成:
# bind 127.0.0.1
2.3 关闭保护模式
保护模式是一层安全保护,以避免Redis实例在internet上被访问和利用。
默认情况下,启用保护模式。
只有当您确定希望来自其他主机的客户端连接到Redis时才应该禁用它。
默认:
protected-mode yes
改成:
protected mode no
2.4 设置密码
要求Redis客户端操作前都需要auth登录。
注意:由于Redis速度非常快,外部用户可以每秒尝试多达150k个密码。这意味着你应该使用一个较为复杂的密码,否则它将很容易被暴力破解。
默认:
#requirepass foobared
改成:
requirepass your_strong_password
2.5 最大占用内存
Redis默认不做限制。则理论上有可能用光机器的物理内存,从而影响其他程序的使用。
所以官方建议给Redis设置一个最大占用内存,一般是机器物理内存的四分之三。
当Redis使用的内存达到上限,则根据最大内存策略,对Redis的内容进行有选择的删除。
默认:
# maxmemory <bytes>
改成:
maxmemory 5890422
2.6 最大内存策略
最大内存策略主要作用是:当Redis使用的内存达到预设的最大占用内存,该如何选择去删除的内容?
LRU means Least Recently Used -> 最近最少使用
LFU means Least Frequently Used -> 最不经常使用
主要有以下5个策略:
- volatile-lru -> 在设置了过期时间的key中,根据最近最少使用算法删除
- allkeys-lru -> 在所有key中,根据最近最少使用算法删除
- volatile-lfu -> 在设置了过期时间的key中,根据最不经常使用算法删除
- allkeys-lfu -> 在所有key中,根据最近最不经常使用算法删除
- volatile-random -> 在设置了过期时间的key中,随机删除
- allkeys-random -> 在所有key中,随机删除
- volatile-ttl -> 在设置了过期时间的key中,选择过期时间最早的删除
- noeviction -> 不做任何删除操作,在写入的时候返回error
默认:
# maxmemory-policy noeviction
改成:
maxmemory-policy volatile-lru
三、systemctl
3.1 启动服务
systemctl start redis.service #启动redis服务
systemctl stop redis.service #停止redis服务
systemctl restart redis.service #重新启动服务
3.2 开启自启动
systemctl enable redis.service #设置开机自启动
systemctl disable redis.service #停止开机自启动
3.3 查看状态
systemctl status redis.service #查看服务当前状态
[root@iZ2ze30dygwd6yh7gu6lskZ etc]# systemctl status redis.service
● redis.service - Redis persistent key-value database
Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
└─limit.conf
Active: active (running) since Mon 2021-02-22 22:27:54 CST; 22s ago
Main PID: 4726 (redis-server)
Tasks: 4 (limit: 26213)
Memory: 6.6M
CGroup: /system.slice/redis.service
└─4726 /usr/bin/redis-server *:6379
Feb 22 22:27:54 iZ2ze30dygwd6yh7gu6lskZ systemd[1]: Starting Redis persistent key-value database...
Feb 22 22:27:54 iZ2ze30dygwd6yh7gu6lskZ systemd[1]: Started Redis persistent key-value database.
四、QuickRedis
使用QuickRedis工具连接刚刚部署的Redis服务
- 选择直连Direct
- 修改IP或域名
- 修改密码
- 双击Direct,建立连接
4.1 选择Direct
4.2 修改连接
4.3 建立连接
双击Direct
五、redis-cli
5.1 AUTH
[root@iZ2ze30dygwd6yh7gu6lskZ ~]# redis-cli
127.0.0.1:6379> info
NOAUTH Authentication required.
127.0.0.1:6379> AUTH your_strong_password
OK
5.2 INFO
127.0.0.1:6379> INFO
# Server
redis_version:5.0.3
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:28849dbea6f07cc8
redis_mode:standalone
os:Linux 4.18.0-147.5.1.el8_1.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:8.3.1
process_id:4726
run_id:a387a7bdc51f196a031e84f749a3315ddc88f550
tcp_port:6379
uptime_in_seconds:57345
uptime_in_days:0
hz:10
configured_hz:10
lru_clock:3448683
executable:/usr/bin/redis-server
config_file:/etc/redis.conf
# Clients
connected_clients:1
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:0
# Memory
used_memory:853896
used_memory_human:833.88K
used_memory_rss:10338304
used_memory_rss_human:9.86M
used_memory_peak:853896
used_memory_peak_human:833.88K
used_memory_peak_perc:100.00%
used_memory_overhead:841718
used_memory_startup:792024
used_memory_dataset:12178
used_memory_dataset_perc:19.68%
allocator_allocated:845208
allocator_active:1011712
allocator_resident:3878912
total_system_memory:8042389504
total_system_memory_human:7.49G
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:5890422
maxmemory_human:5.62M
maxmemory_policy:volatile-lru
allocator_frag_ratio:1.20
allocator_frag_bytes:166504
allocator_rss_ratio:3.83
allocator_rss_bytes:2867200
rss_overhead_ratio:2.67
rss_overhead_bytes:6459392
mem_fragmentation_ratio:12.73
mem_fragmentation_bytes:9526400
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:49694
mem_aof_buffer:0
mem_allocator:jemalloc-5.1.0
active_defrag_running:0
lazyfree_pending_objects:0
# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1614004074
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
# Stats
total_connections_received:9
total_commands_processed:10
instantaneous_ops_per_sec:0
total_net_input_bytes:379
total_net_output_bytes:10242
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
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec: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
# Replication
role:master
connected_slaves:0
master_replid:6abf121834dcc7e52f4bfc95be7769d5d2a408ad
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:10.569958
used_cpu_user:14.270185
used_cpu_sys_children:0.000000
used_cpu_user_children:0.000000
# Cluster
cluster_enabled:0
# Keyspace
127.0.0.1:6379>
觉得好,就一键三连呗(点赞+收藏+关注)