天天看點

若依RuoYi架構淺析 部署篇③——CentOS 8 配置Redis一、安裝二、配置三、systemctl四、QuickRedis五、redis-cli

目錄

  • 一、安裝
    • 1.1 檢視
    • 1.2 安裝
  • 二、配置
    • 2.1 打開conf
    • 2.2 綁定IP
    • 2.3 關閉保護模式
    • 2.4 設定密碼
    • 2.5 最大占用記憶體
    • 2.6 最大記憶體政策
  • 三、systemctl
    • 3.1 啟動服務
    • 3.2 開啟自啟動
    • 3.3 檢視狀态
  • 四、QuickRedis
    • 4.1 選擇Direct
    • 4.2 修改連接配接
    • 4.3 建立連接配接
  • 五、redis-cli
    • 5.1 AUTH
    • 5.2 INFO

一、安裝

1.1 檢視

[[email protected] ~]# 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 安裝

[[email protected] ~]# 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		#檢視服務目前狀态
           
[[email protected] 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

若依RuoYi架構淺析 部署篇③——CentOS 8 配置Redis一、安裝二、配置三、systemctl四、QuickRedis五、redis-cli

4.2 修改連接配接

若依RuoYi架構淺析 部署篇③——CentOS 8 配置Redis一、安裝二、配置三、systemctl四、QuickRedis五、redis-cli

4.3 建立連接配接

輕按兩下Direct

若依RuoYi架構淺析 部署篇③——CentOS 8 配置Redis一、安裝二、配置三、systemctl四、QuickRedis五、redis-cli

五、redis-cli

5.1 AUTH

[[email protected] ~]# 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> 
           

覺得好,就一鍵三連呗(點贊+收藏+關注)

繼續閱讀