Redis持久化:

什么是Redis持久化:

Redis 持久化是指將 Redis 內存中的數據保存到硬盤等持久化存儲介質中,以便在 Redis 服務器重啟或出現故障時能夠恢復數據,保證數據的可靠性和持續性。Redis 提供了兩種主要的持久化方式:RDB(Redis Database)持久化和 AOF(Append Only File)持久化。

我們可以采取的方案有四個:

  1. RDB持久化
  2. AOF持久化
  3. RDB+AOF
  4. 不做任何持久化的操作

RDB持久化概念:

RDB 持久化是將 Redis 在某一時刻的內存數據快照保存到磁盤上的一種持久化方式,它生成的文件是一個緊湊的二進制文件,也被稱為 RDB 文件。

?RDB基礎配置:

?

redis可以通過命令:config get <String 字段名> 獲取配置文件中的值。

小編當前的Redis版本是:redis-6.2.7 版本

觸發機制

自動觸發

RDB 持久化可以根據配置文件中設置的自動保存條件觸發。自動保存條件通常是基于時間和數據變化量來設置的,例如 “save 900 1” 表示在 900 秒內如果至少有 1 個鍵發生了變化,就會觸發 RDB 快照。

版本區別:

在redis的6.2~7的版本我們的觸發機制出現了變化,在之前的版本中,我們的自動觸發時間有了變化。

在6.0.16及之前的版本中,默認時間是:

如果沒有手動配置 RDB 持久化的觸發時間,Redis 默認的觸發條件:

  • save 900 1:表示 900 秒(15 分鐘)內至少有 1 個鍵被更改時,觸發 RDB 快照。
  • save 300 10:即 300 秒(5 分鐘)內至少有 10 個鍵被更改時,執行 RDB 持久化操作。
  • save 60 10000:意味著 60 秒內至少有 10000 個鍵被更改,會觸發 RDB 快照。

在新版中,他的時間變為了

數據的恢復:

FLUSHALL?和?FLUSHDB?是 Redis 中用于清空數據的命令,如果我們執行這兩個數據時,也會產生dump.rdb文件,這個rdb文件就是空的了。是沒有意義的

我們使用shutdown命令關閉redis時,也會產生rdb文件,將當前快照保存。

SHUTDOWN?命令的主要作用是關閉 Redis 服務器。在關閉之前,它會先執行持久化操作,確保內存中的數據按照配置的持久化策略保存到磁盤,之后再正常關閉服務。

假設我們將一個時間的快照保存下來,將這個文件復制一份放置到別的文件夾下,之后用的時候按著這個文件回復當前快照的數據。

redis在啟動時,按著我們這個文件進行恢復。

在物理恢復時,我們要將redis服務器和備份文件分開各自存儲,放置生產機物理損壞之后備份文件掛到。(備份隔離)

?手動觸發:

RDB 持久化可以通過手動執行命令(如 SAVE 或 BGSAVE)來觸發。

SAVE:這是一個同步命令。當你在 Redis 客戶端輸入?SAVE?命令后,Redis 服務器會立即停止處理客戶端的其他請求,全身心投入到將內存中的數據寫入 RDB 文件的工作中。只有當數據全部寫入完成,生成 RDB 文件后,服務器才會繼續響應其他客戶端的請求。

BGSAVE(默認):這是一個異步命令。當執行?BGSAVE?命令時,Redis 服務器會 fork 出一個子進程。這個子進程負責將內存中的數據寫入 RDB 文件,而父進程(也就是主 Redis 進程)會繼續處理客戶端的請求,不會被阻塞。

生產上是bgsave,不能是save

通過lastsave 獲取最后一次成功執行的快照時間

Linux上轉化時間戳的命令:

[root@localhost bin]# date -d @15454545
1970年 06月 29日 星期一 04:55:45 CST

優缺點

  • 優點
    • 數據恢復快:RDB 文件是一個緊湊的二進制文件,在恢復數據時,Redis 可以快速地將 RDB 文件中的數據加載到內存中,相比其他一些持久化方式,恢復速度通常較快。
    • 適合大規模數據備份:RDB 文件可以方便地進行備份和傳輸,適合用于數據的遠程備份和歸檔,例如可以定期將 RDB 文件復制到其他存儲設備或遠程服務器上。
    • 對性能影響小:在生成 RDB 文件時,使用子進程進行數據寫入,對 Redis 主進程的性能影響相對較小,特別是在數據量較大時,這種方式的性能優勢更為明顯。
  • 缺點
    • 數據一致性問題:RDB 持久化是基于一定的時間間隔進行數據快照的,所以在兩次快照之間如果發生服務器故障,可能會丟失一部分數據。例如,如果設置了每 5 分鐘進行一次 RDB 快照,那么在這 5 分鐘內的數據變化在服務器故障時就可能會丟失。
    • 內存占用問題:在生成 RDB 文件時,需要 fork 子進程,而子進程會復制父進程的內存空間,這在內存占用上會有一定的開銷,特別是在內存數據量較大的情況下,可能會導致短暫的內存壓力。

RDB文件的修復

假設我們的rdb文件再寫入時出現了破損。該如何修復呢:

命令行:./redis-check-rdb dump.rdb

?那些情況會出現dump.rdb文件:

  1. 符合save后的觸發情況
  2. 手動的save,bgsave命令
  3. 執行flushadd,flushdb命令,但是文件是空的
  4. 執行shutdown,并且沒有開啟AOF持久化
  5. 主從復制時,主節點自動觸發

如何禁用快照:

執行命令,動態禁用:config set save ""

修改配置文件,添加??save ""? 就會禁用

優化配置項:

默認yes
如果配置成no,表示你不在乎數據不一致或者有其他的手段發現和控制這種不一致,那么在快照寫入失敗時,
也能確保redis繼續接受新的寫請求

默認yes
對于存儲到磁盤中的快照,可以設置是否進行壓縮存儲。如果是的話,redis會采用LZF算法進行壓縮。
如果你不想消耗CPU來進行壓縮的話,可以設置為關閉此功能


默認yes
在存儲快照后,還可以讓redis使用CRC64算法來進行數據校驗,但是這樣做會增加大約10%的性能消耗,如果希望獲取到最大的性能提升,可以關閉此功能

rdb-del-sync-files:在沒有持久性的情況下刪除復制中使用的RDB文件啟用。默認情況下no,此選項是禁用的。?

AOF持久化:

AOF 持久化是通過將 Redis 服務器接收到的每一條寫命令追加到一個以追加模式打開的文件中,來記錄數據庫的變化。當 Redis 服務器重啟時,它會重新執行 AOF 文件中的命令,以重建數據庫狀態,從而實現數據的恢復。

默認是不開啟的,需要配置我們的配置文件。講appendonly 設置為yes

aop寫入流程:

1
Client作為命令的來源,會有多個源頭以及源源不斷的請求命令。
2
在這些命令到達Redis Server 以后并不是直接寫入AOF文件,會將其這些命令先放入AOF緩存中進行保存。這里的AOF緩沖區實際上是內存中的一片區域,存在的目的是當這些命令達到一定量以后再寫入磁盤,避免頻繁的磁盤IO操作。
3
AOF緩沖會根據AOF緩沖區 同步文件的三種寫回策略將命令寫入磁盤上的AOF文件。
4
隨著寫入AOF內容的增加為避免文件膨脹,會根據規則進行命令的合并(又稱 AOF重寫),從而起到AOF文件壓縮的目的。
5
當Redis Server 服務器重啟的時候會從AOF文件載入數據。

三種寫回策略:

Always:同步回寫,每個寫命令執行之后立刻同步將日志寫回到磁盤(IO頻繁)

everysec:(默認):每秒寫回,每個寫命令執行完,只是先把日志寫道AOF文件的內存緩沖區中,每秒寫入到磁盤中,每秒寫一次

no:操作系統控制的寫回,每個寫命令執行完,只是先把日志寫道AOF文件的內存緩沖區中,有操作系統決定何時將數據寫入到磁盤。

AOF配置的設置:

?在redis配置文件中redis7中對于AOF上有很大的優化。下文中介紹6和7的配置文件講解。

打開AOF持久化機制:

設置寫回策略:

?在打開之后,我們只要就會發現在我們的路徑之下出現了一個文件appendonly.aof

設置AOF文件保存路徑:

在這里我們的redis有了變化:

在我們的redis6中,他的文件的位置和我們的的dump.rdb文件位置是一致的,都是通過config中的dir設置。

redis7中,我們dir下,RDB文件的位置不變,但是在這個位置會出現一個子文件夾,子文件夾的名字就是我們appenddirname鍵值對的值

設置AOF文件保存名稱:

redis6中,名字就是

在redis7中,不再是一個aof文件,變成了三個文件

官網的信息是:

aof文件的修復:

假設我們的aof文件出現問題時:例如我們當前的寫入數據大,一秒寫入時沒有寫完,但是在下一秒redis直接宕機,這是我們的redis在aof文件出現問題時,沒有辦法運行redis.需要進行文件修復。

檢查環境變量的命令是:echo $PATH

修復的命令是:redis-check-aof --fix? <String fileName>

AOF的優缺點:

優點

1. 數據安全性高
  • AOF 持久化以日志形式記錄寫操作,默認配置下,即使服務器發生故障,最多只會丟失 1 秒鐘內執行的寫命令。這是因為 Redis 可以配置為每秒將 AOF 緩沖區中的內容同步到磁盤,若使用always同步策略,每個寫命令都會立即同步到磁盤,最大程度減少數據丟失風險。
  • 相比 RDB(Redis Database)持久化在特定時間點生成快照,AOF 能更及時地記錄數據變更,在遇到服務器崩潰等異常情況時,能更好地保證數據完整性。
2. 日志文件可讀性強
  • AOF 文件是一個純文本文件,記錄的是 Redis 執行的寫命令,例如SET key valueINCR counter等。這使得管理員可以方便地查看和分析文件內容,排查問題。
  • 當需要恢復數據時,可以直接查看 AOF 文件,了解數據的變更歷史,必要時還能手動修改文件內容。
3. 易于實現數據恢復
  • 在 Redis 重啟時,會按照 AOF 文件中記錄的命令順序依次執行,將數據恢復到故障前的狀態。
  • 與 RDB 相比,AOF 在數據恢復過程中不需要像 RDB 那樣等待生成快照文件,恢復速度通常更快,尤其對于數據量較大的場景,優勢更明顯。
4. 支持追加式寫入
  • AOF 文件采用追加方式寫入,寫操作是順序的,避免了隨機磁盤 I/O,提高了寫入性能。
  • 隨著 Redis 服務器的運行,新的寫命令會不斷追加到 AOF 文件末尾,不會影響之前已記錄的內容。

缺點

1. AOF 文件體積較大
  • 由于 AOF 文件記錄了所有寫命令,隨著時間推移和服務器的持續運行,文件會不斷增大。
  • 對于頻繁執行寫操作的 Redis 實例,AOF 文件可能會變得非常龐大,占用大量磁盤空間,同時也會增加文件管理和傳輸的難度。
2. 恢復速度可能較慢
  • 雖然一般情況下 AOF 恢復速度比 RDB 快,但在 AOF 文件非常大時,Redis 在重啟時需要執行大量的命令來恢復數據,這會導致恢復時間變長。
  • 特別是在使用always同步策略時,由于每次寫命令都要同步到磁盤,會產生更多的 I/O 操作,進一步影響恢復速度。
3. 性能開銷較大
  • 與 RDB 持久化相比,AOF 持久化需要更多的磁盤 I/O 操作。尤其是在使用always同步策略時,每個寫命令都會立即同步到磁盤,會顯著降低 Redis 的寫性能。
  • 即使使用everysec(每秒同步一次)策略,在高并發寫操作場景下,頻繁的磁盤 I/O 也會成為性能瓶頸。
4. AOF 重寫帶來額外開銷
  • 為了解決 AOF 文件體積過大的問題,Redis 會定期或手動執行 AOF 重寫操作,將 AOF 文件中的冗余命令合并。
  • AOF 重寫過程需要消耗額外的 CPU 和內存資源,可能會對 Redis 服務器的性能產生一定影響。

AOF重寫機制:

自動觸發:

在我們的aof文件較大時(達到閾值時),就會觸發aof文件的重寫,重寫的文件會對指令進行壓縮,新的文件中只是保留可以恢復數據的最小指令集.

閾值大小是:

redis7配置文件:

redis6配置文件:

配置文件沒有變化,他的意思是文件大小變為以前的2倍,并且大于64mb機會觸發重寫.?

但是對于7和6的文件的寫的格式是不一樣的.

redis7:

在我們的incr文件達到閾值時,開始進行?重寫,這時我們的重寫結束后我們的文件名也會發生變化

手動觸發:

執行客戶端命令:

BGREWRITEAOF

整體上重寫的過程

這里需要考率的是如果在重寫時我們的數據還在繼續的寫入,這是整體的流程是什么:

1:在重寫開始前,redis會創建一個“重寫子進程”,這個子進程會讀取現有的AOF文件,并將其包含的指令進行分析壓縮并寫入到一個臨時文件中。(其實這里也是他的缺點,子進程加大內存開銷)

2:與此同時,主進程會將新接收到的寫指令一邊累積到內存緩沖區中,一邊繼續寫入到原有的AOF文件中,這樣做是保證原有的AOF文件的可用性,避免在重寫過程中出現意外。

3:當“重寫子進程”完成重寫工作后,它會給父進程發一個信號,父進程收到信號后就會將內存中緩存的寫指令追加到新AOF文件中

4:當追加結束后,redis就會用新AOF文件來代替舊AOF文件,之后再有新的寫指令,就都會追加到新的AOF文件中

5:重寫aof文件的操作,并沒有讀取舊的aof文件,而是將整個內存中的數據庫內容用命令的方式重寫了一個新的aof文件,這點和快照有點類似

RDB+AOF混合持久化:

如果使用這種方式持久化時,他們的優先級是:

redis配置文件
內容來源redis配置文件

在同時開啟時,優先加載的時aof文件.?

官網推薦使用兩種方式共存的形式進行數據持久化操作.

如何開啟混合模式:

開啟的配置:

這個配置的前置條件是必須開啟aof.

注意點:

在 Redis 中,aof-use-rdb-preamble?和?appendonly?是兩個不同的配置項,它們分別控制著 AOF(Append Only File)持久化相關的不同特性。下面來分析設置?aof-use-rdb-preamble?為?yes?時,若?appendonly?設置為?no?是否能達成預期目的。

配置項含義

  • aof-use-rdb-preamble:這個配置項用于控制 AOF 重寫時的文件格式。當設置為?yes?時,AOF 重寫后的文件開頭會包含一個 RDB 格式的快照,之后才是 AOF 格式的增量命令。這種方式能讓 AOF 文件在恢復數據時,先利用 RDB 快照快速加載大部分數據,再通過執行 AOF 中的增量命令來恢復最新的數據,提升恢復速度。
  • appendonly:此配置項用于開啟或關閉 AOF 持久化功能。當設置為?yes?時,Redis 會開啟 AOF 持久化,將寫命令追加到 AOF 文件中;當設置為?no?時,Redis 會關閉 AOF 持久化,僅使用 RDB 持久化(如果開啟了 RDB 持久化的話)。

分析設置結果

當?aof-use-rdb-preamble?設置為?yes,而?appendonly?設置為?no?時,無法達成使用?aof-use-rdb-preamble?特性的目的。原因如下:

?
  • aof-use-rdb-preamble?特性是基于 AOF 持久化的,它主要影響 AOF 重寫后的文件格式。若?appendonly?設置為?no,AOF 持久化功能被關閉,Redis 不會生成 AOF 文件,也就不存在 AOF 重寫操作,那么?aof-use-rdb-preamble?的配置就沒有實際意義。

示例配置說明

假設你有如下配置需求:

?

plaintext

aof-use-rdb-preamble yes
appendonly no
?

在這種配置下,由于?appendonly?為?no,Redis 不會開啟 AOF 持久化,即使?aof-use-rdb-preamble?設置為?yes,也不會有包含 RDB 預 amble 的 AOF 文件生成。

?

若你想使用?aof-use-rdb-preamble?特性來優化 AOF 文件恢復速度,需要將?appendonly?設置為?yes,示例配置如下:

?

plaintext

aof-use-rdb-preamble yes
appendonly yes
?

這樣配置后,Redis 會開啟 AOF 持久化,并且在 AOF 重寫時會采用包含 RDB 預 amble 的文件格式。

?

綜上所述,設置?aof-use-rdb-preamble?為?yes?時,若?appendonly?設置為?no,無法達成使用該特性的目的,需要將?appendonly?設置為?yes?才能生效。

純緩存模式:

同時關閉RDB和AOF

關閉RDB:save ""? 關閉AOF:appendonly no? ?

即使是關閉之后依舊可以使用save,bgsave生成RDB文件,使用bgrewriteaof生成aof文件。

這是redis就只是一個緩存的作用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/81610.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/81610.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/81610.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VBA 64位API聲明語句第009講

跟我學VBA&#xff0c;我這里專注VBA, 授人以漁。我98年開始&#xff0c;從源碼接觸VBA已經20余年了&#xff0c;隨著年齡的增長&#xff0c;越來越覺得有必要把這項技能傳遞給需要這項技術的職場人員。希望職場和數據打交道的朋友&#xff0c;都來學習VBA,利用VBA,起碼可以提高…

在pycharm profession 2020.3將.py程序使用pyinstaller打包成exe

一、安裝pyinstaller 在pycharm的項目的Terminal中運行pip3 install pyinstaller即可。 安裝后在Terminal中輸入pip3 list看一下是否成功 二、務必在在項目的Terminal中輸入命令打包&#xff0c;命令如下&#xff1a; python3 -m PyInstaller --noconsole --onefile xxx.py …

Unity SpriteRenderer(精靈渲染器)

&#x1f3c6; 個人愚見&#xff0c;沒事寫寫筆記 &#x1f3c6;《博客內容》&#xff1a;Unity3D開發內容 &#x1f3c6;&#x1f389;歡迎 &#x1f44d;點贊?評論?收藏 &#x1f50e;SpriteRenderer:精靈渲染器 &#x1f4a1;Sprite Renderer是精靈渲染器&#xff0c;所有…

2.LED燈的控制和按鍵檢測

目錄 STM32F103的GPIO口 GPIO口的作用 GPIO口的工作模式 input輸入檢測 -- 向內檢測 output控制輸出 -- 向外輸出 寄存器 寄存器地址的確定 配置GPIO口的工作模式 時鐘的開啟和關閉 軟件編程驅動 LED 燈 硬件 軟件 軟件編程驅動 KEY 按鍵 硬件 軟件 按鍵消抖 代碼 STM32F…

Flink 的狀態機制

在實時流處理領域&#xff0c;狀態管理是構建復雜業務邏輯的核心能力。Apache Flink 通過統一的狀態抽象和高效的容錯機制&#xff0c;為開發者提供了從毫秒級窗口聚合到 TB 級歷史數據關聯的全場景支持。本文將深入剖析 Flink 狀態機制的底層原理&#xff0c;結合實際案例展示…

【查看.ipynp 文件】

目錄 如何打開 .ipynb 文件&#xff1f; 如果確實是 .ipynp 文件&#xff1a; .ipynp 并不是常見的 Jupyter Notebook 文件格式。通常&#xff0c;Jupyter Notebook 文件的擴展名是 .ipynb&#xff08;即 Interactive Python Notebook&#xff09;。如果你遇到的是 .ipynb 文…

Runnable組件重試機制降低程序錯誤率

一、LangChain 重試機制深度解析 當構建生產級AI應用時&#xff0c;with_retry() 機制可有效提升系統容錯性&#xff0c;典型應用場景包括&#xff1a; API調用頻率限制時的自動恢復模型服務臨時不可用的故障轉移網絡波動導致的瞬時異常處理 參數詳解與配置策略 1. 參數配置…

k8s筆記——kubebuilder工作流程

kubebuilder工作流程 Kubebuilder 工作流程詳解 Kubebuilder 是 Kubernetes 官方推薦的 Operator 開發框架&#xff0c;用于構建基于 Custom Resource Definitions (CRD) 的控制器。以下是其核心工作流程的完整說明&#xff1a; 1. 初始化項目 # 創建項目目錄 mkdir my-opera…

Java框架“若依RuoYi”前后端分離部署

運行環境 Eclipse IDE for Enterprise Java and Web Developers 下載Eclipse解壓Eclipse到文件夾 Maven 下載Maven解壓Maven到文件夾配置環境變量MAVEN_HOME為Maven安裝位置配置環境變量path為%MAVEN_HOME%\bin Redis 下載Redis解壓Redis到文件夾配置環境變量path為Redis安裝位…

游戲引擎學習第249天:清理調試宏

歡迎大家&#xff0c;讓我們直接進入調試代碼的改進工作 接下來&#xff0c;我們來看一下上次停留的位置。如果我沒記錯的話&#xff0c;上一場直播的結尾我有提到一些我想做的事情&#xff0c;并且在代碼中留下了一個待辦事項。所以也許我們今天首先做的就是解決這個問題。但…

二極管反向恢復的定義和原理

二極管的反向恢復定義 二極管的反向恢復是指二極管從正向導通狀態切換到反向阻斷狀態時&#xff0c;電流從正向變為負向并最終回到零所需的時間。具體過程如下&#xff1a; 正向導通&#xff1a;當二極管正向偏置時&#xff0c;電流可以順利通過&#xff0c;此時二極管處于導…

音視頻開發技術總結報告

音視頻開發技術總結報告 一、音視頻開發基礎 1、音頻基礎 聲音原理 聲波特性&#xff1a;頻率、振幅、波長人耳聽覺范圍&#xff1a;20Hz-20kHz聲音三要素&#xff1a;音調、音量、音色 數字音頻基礎 采樣率&#xff1a;常見44.1kHz、48kHz、96kHz量化位數&#xff1a;8bit、…

中間件和組件

文章目錄 1. 前言2. 中間件介紹3. 組件介紹4. 區別對比5. 簡單類比6. 總結 中間件和組件 1. 前言 中間件和組件是軟件開發中兩個重要的概念&#xff0c;但它們的定位和作用完全不同。中間件解決的事通信、跨系統、安全等問題&#xff0c;組件是解決具體業務模塊&#xff0c;提高…

AI超級智能體教程(五)---自定義advisor擴展+結構化json輸出

文章目錄 1.自定義攔截器1.2自定義Advisor1.2打斷點調試過程1.3Re-reading Advisor自定義實現 2.戀愛報告開發--json結構化輸出2.1原理介紹2.1代碼實現2.3編寫測試用例2.4結構化輸出效果 1.自定義攔截器 1.2自定義Advisor spring里面的這個默認的是SimpleloggerAdvisor&#…

02_使用 AES 算法實現文件加密上傳至阿里云、解密下載

02_使用 AES 算法實現文件加密上傳至阿里云、解密下載 一、文件上傳下載接口 controller 層 RestController RequestMapping("/api/common/file") Api(tags "公共文件上傳") AllArgsConstructor Slf4j public class FileV2Controller {private final Os…

力扣:24兩兩交換鏈表的節點

目錄 1.題目描述&#xff1a; 2.算法思路&#xff1a; 3.代碼展示&#xff1a; 1.題目描述&#xff1a; 給你一個鏈表&#xff0c;兩兩交換其中相鄰的節點&#xff0c;并返回交換后鏈表的頭節點。你必須在不修改節點內部的值的情況下完成本題&#xff08;即&#xff0c;只能…

smss源代碼分析之smss!SmpLoadSubSystemsForMuSession函數分析加載csrss.exe

第一部分&#xff1a; Next SmpSubSystemsToLoad.Flink; while ( Next ! &SmpSubSystemsToLoad ) { p CONTAINING_RECORD( Next, SMP_REGISTRY_VALUE, Entry )…

MIT6.S081-lab8前置

MIT6.S081-lab8前置 注&#xff1a;本部分除了文件系統還包含了調度的內容。 調度 調度涉及到保存寄存器&#xff0c;恢復寄存器&#xff0c;就這一點而言&#xff0c;和我們的 trap 很像&#xff0c;但是實際上&#xff0c;我們實現并不是復用了 trap 的邏輯&#xff0c;我…

哈希函數詳解(SHA-2系列、SHA-3系列、SM3國密)案例:構建簡單的區塊鏈——密碼學基礎

文章目錄 一、密碼哈希函數概述1.1 哈希函數的基本概念1.2 哈希函數在數據安全中的應用 二、SHA-2系列算法詳解2.1 SHA-2的起源與發展2.2 SHA-256技術細節與實現2.3 SHA-384和SHA-512的特點2.4 SHA-2系列算法的安全性評估 三、SHA-3系列算法詳解3.1 SHA-3的起源與設計理念3.2 K…

待驗證---Oracle 19c 在 CentOS 7 上的快速安裝部署指南

Oracle 19c 在 CentOS 7 上的快速安裝部署指南 Oracle Database 19c 是一個功能強大的企業級數據庫系統&#xff0c;下面我將為您提供在 CentOS 7 上快速安裝部署 Oracle 19c 的詳細步驟。 一、準備工作 1. 系統要求 CentOS 7 (64位)最小內存: 2GB (推薦 8GB 以上)最小磁盤…