Ⅰ 資料庫歸檔是什麼意思
將不再經常使用的數據移到一個單獨的存儲設備來進行長期保存的過程。數據存檔由舊的數據組成,但它是以後參考所必需且很重要的數據,其數據必須遵從規則來保存。數據存檔具有索引和搜索功能,這樣文件可以很容易地找到。
可以利用數據存檔,以物理方式自動將數據倉庫中具有較低業務價值的數據遷移到更適合、更經濟高效的存儲層。有許多標准可用來確定業務價值較低的數據:如數據訪問和性能需求、數據的使用年限、數據屬於哪個地區或部門,以及分區用途。
當訪問率低的數據發展為消耗數據倉庫的最大一份,最合理的處理方式是以物理和邏輯方式從核心生產數據倉庫中分離此數據。
(1)福州數據歸檔存儲多少錢擴展閱讀
歸檔的目的是長時間存放有組織的數據集,確保其將來能夠被精細地檢索。改進的磁帶是這種應用最理想的方式。
備份是短時間存儲那些頻繁更換或更新的數據的副本。這相當於一批廉價的離線介質上的數據副本。通過這種方式,可以把數據與那些基於磁碟的數據中斷事件隔離開,以免同時遭到損壞,這樣,如果原始數據或存儲平台損壞的話,數據就可以恢復到任何磁碟陣列。
在磁碟到磁碟復制解決方案中,復制只能發生在兩個完全相同的設備中。此外,復制過程還可以中斷,這樣你就可以檢查在主數據存儲和鏡像倉庫之間的增量或差異。不過,這樣它可能會導致在磁碟到磁碟的復制過程中產生很多不易察覺的錯誤。
Ⅱ 福州ORACLE資料庫培訓費用一般是多少
建議參加培訓,培訓可以加快你學習的時間,老師可以解決你的問題,學員可以擴展你的朋友圈。
福州培訓費用一般在7-8千左右。
有些地方收費太高了,9k。
福州有幾個培訓地方,大學城,市區都有,你可以去問問,選擇價格便宜的。
Ⅲ 電子文件歸檔
檔案的本質屬性是原始記錄性,這種原始記錄性一方面表現在檔案的內容上,另一方面表現在檔案的形式上,如,當事人的親筆手稿、領導者的親筆簽署等,都表現出真實的原始性。也正是檔案的原始記錄性,才使得檔案具有法律憑證的作用。但是在在OA辦公自動化系統中,電子文件的原始性卻很難得到體現。電子文件的原始記錄性和憑證作用如何確定,電子文件能否作為檔案,是否具有法律憑證作用等等,已經成為檔案界的新課題。 依據國家有關標准,結合本單位的實際情況,從檔案管理的基本規律和計算機技術的特點出發,制訂歸檔電子文件管理辦法是當務之急。制訂一個包括電子文件的形成、積累、整理、鑒定、歸檔、利用、統計、保護等內容的管理辦法,以確保真實、有效地把好歸檔電子文件的質量檢驗關,從歸檔電子文件的特點出發研製歸檔電子檔案管理系統軟體。 制訂管理辦法要注意的問題 電子文件的存儲載體問題。電子文件的存儲載體有多種,如,磁帶、磁碟、光碟等。光碟與磁帶、磁碟相比,其特點是:記錄密度高、存儲量大;非接觸式記錄和信息讀取方式;數據傳輸率高;存取速度快;易保存。因有保護層,信息讀出為無接觸式的,不存在讀取磨損,所以碟片不易損壞。根據這些特點,目前使用光碟作為電子文件歸檔的載體比較合適。盡管它的標准不夠完善,但隨著技術的發展,相信在不久的將來,有關光碟的標准會陸續出台。所以在當前選擇光碟作為電子檔案存儲載體最為合適。禁用軟磁碟作為歸檔電子文件長期保存的載體。在條件允許時,及時將軟磁碟更換為光碟載體長期保存。 紙質檔案與電子檔案長期並存在保持一致的問題。兩種不同載體檔案的特點,可概括為兩句話:紙質檔案便於長期永久保存,而利用較不方便;電子檔案便於利用,但難於永久保存。鑒於這種局面,兩種載體檔案會在一定時期內長期並存。普遍做法是「雙套制」,即在保存電子文件的同時,把電子文件以硬拷貝輸出形成紙質文件保存。兩種載體檔案並存特別要注意兩種檔案的一致性,在電子檔案著錄、編號、簽署、更改、更新時更應注意保證電子檔案與紙質檔案對應相符。 電子文件的安全問題。一是電子文件歸檔時,把屬於一般性的電子文件,轉換成各種平台都能使用的文本文件的格式,以不變應萬變,消除由於技術演變所帶來的影響。特殊格式電子文件,應在存儲載體中同時存有相應的瀏覽軟體。二是使用「只寫一次式光碟加背書」方式製作歸檔原件,確認其內容信息的原始性。歸檔前電子文件內容的原始性由歸檔人負責,歸檔後的原始性由檔案室負責,為了分清責任,最理想的辦法是雙方在不可更改的載體上簽字,而這種光碟的同一處刻錄軌跡只能寫入一次,這就是「只寫一次式光碟加背書」。也可以只讀光碟、電子簽名、數字水印、隱形條碼、數字時間印章法等來確認電子文件內容信息的原始性。三是在網路環境中,可採用一種既能確認發件人身份,又能保密保安全的「公用密鑰數字簽名技術」。還可採用防火牆技術、網路安全檢測、大眾身份認證系統、數據加密技術等措施來保證網路安全。當然這都很難達到徹底的安全。四是利用中的安全措施:設置分級查詢許可權密碼並定期或不定期地更改,屬於保密范圍的信息內容的復制拷貝更要嚴格控制。系統對利用的全過程進行有效的跟蹤監控,並自動進行相關的記錄,作為利用工作查證的依據。而且利用系統應有較強的容錯能力,避免由於誤操作所帶來不可挽回的損失。 電子文件的鑒定問題。一是入口關,即在檔案部門接受電子文件是要檢驗每個文件能否被正常讀出、打開或運行;有無感染計算機病毒;內容是否完整,是否與歸檔移交清單或文件機讀目錄相一致等。二是定期檢查關,即對歸檔後的電子文件建立定期檢查的制度,數據類電子文件檢驗能否被正常讀出,程序類電子文件檢驗能否被正常運行。對於磁性載體一般應每兩年、光碟每四年進行一次抽樣機讀檢驗,抽樣率不少於10%;對於磁性載體每四年拷貝一次,並建立對電子文件的檢查、維護、拷貝等操作過程進行登記制度,避免發生人為的誤操作或重復勞動。轉儲後的載體與原載體同樣編號保存。三是利用關,即在平時提供利用時,一旦發現有文件損壞或感染計算機病毒,立即要對該載體內存儲的所有文件進行檢驗,及時採取措施修復損壞的文件。還要注意更新殺病毒軟體。 同時,還要把電子文件歸檔與電子檔案管理所需要的計算機系統軟體的開發和硬體的配合納入到下一階段檔案室檔案管理系統的建設規劃中去,為接受電子文件做好物質和精神准備。
Ⅳ 如何實現大數據量資料庫的歷史數據歸檔
使用工具pt-archiver
原理解析
作為MySQL DBA,可以說應該沒有不知道pt-archiver了,作為pt-toolkit套件中的重要成員,往往能夠輕松幫助DBA解決數據歸檔的問題。例如線上一個流水表,業務僅僅只需要存放最近3個月的流水數據,三個月前的數據做歸檔即可,那麼pt-archiver就可以輕松幫你完成這件事情,甚至你可以配置成自動任務,無需人工干預。
作為DBA,我們應該知其然更應該知其所以然,這樣我們也能夠放心地使用pt工具。相信很多DBA都研究過pt-online-schema-change的原理,那麼今天我們深入刨一刨pt-archiver的工作原理。
一、原理觀察
土人有土辦法,我們直接開啟general log來觀察pt-archiver是如何完成歸檔的。
命令
pt-archiver --source h=127.0.0.1,u=xucl,p=xuclxucl,P=3306,D=xucl,t=t1 --dest h=127.0.0.1,P=3306,u=xucl,p=xuclxucl,D=xucl_archive,t=t1 --progress 5000 \
--statistics --charset=utf8mb4 --limit=10000 --txn-size 1000 --sleep 30
常用選項
--analyze
指定工具完成數據歸檔後對表執行'ANALYZE TABLE'操作。指定方法如'--analyze=ds',s代表源端表,d代表目標端表,也可以單獨指定。
--ask-pass
命令行提示密碼輸入,保護密碼安全,前提需安裝模塊perl-TermReadKey。
--buffer
指定緩沖區數據刷新到選項'--file'指定的文件並且在提交時刷新。
只有當事務提交時禁用自動刷新到'--file'指定的文件和刷新文件到磁碟,這意味著文件是被操作系統塊進行刷新,因此在事務進行提交之前有一些數據隱式刷新到磁碟。默認是每一行操作後進行文件刷新到磁碟。
--bulk-delete
指定單個語句刪除chunk的方式來批量刪除行,會隱式執行選項'--commit-each'。
使用單個DELETE語句刪除每個chunk對應的錶行,通常的做法是通過主鍵進行逐行的刪除,批量刪除在速度上會有很大的提升,但如果有復雜的'WHERE'條件就可能會更慢。
--[no]bulk-delete-limit
默認值:yes
指定添加選項'--bulk-delete'和'--limit'到進行歸檔的語句中。
--bulk-insert
使用LOAD DATA LOCAL INFILE的方法,通過批量插入chunk的方式來插入行(隱式指定選項'--bulk-delete'和'--commit-each')
而不是通過逐行單獨插入的方式進行,它比單行執行INSERT語句插入的速度要快。通過隱式創建臨時表來存儲需要批量插入的行(chunk),而不是直接進行批量插入操作,當臨時表中完成每個chunk之後再進行統一數據載入。為了保證數據的安全性,該選項會強制使用選項'--bulk-delete',這樣能夠有效保證刪除是在插入完全成功之後進行的。
--channel
指定當主從復制環境是多源復制時需要進行歸檔哪個主庫的數據,適用於多源復制中多個主庫對應一個從庫的情形。
--charset,-A
指定連接字元集。
--[no]check-charset
默認值:yes
指定檢查確保資料庫連接時字元集和表字元集相同。
--[no]check-columns
默認值:yes
指定檢查確保選項'--source'指定的源端表和'--dest'指定的目標表具有相同的欄位。
不檢查欄位在表的排序和欄位類型,只檢查欄位是否在源端表和目標表當中都存在,如果有不相同的欄位差異,則工具報錯退出。如果需要禁用該檢查,則指定'--no-check-columns'。
--check-slave-lag
指定主從復制延遲大於選項'--max-lag'指定的值之後暫停歸檔操作。默認情況下,工具會檢查所有的從庫,但該選項只作用於指定的從庫(通過DSN連接方式)。
--check-interval
默認值:1s
如果同時指定了選項'--check-slave-lag',則該選項指定的時間為工具發現主從復制延遲時暫停的時間。每進行操作100行時進行一次檢查。
--columns,-c
指定需要歸檔的表欄位,如有多個則用','(逗號)隔開。
--commit-each
指定按每次獲取和歸檔的行數進行提交,該選項會禁用選項'--txn-size'。
在每次獲取表數據並進行歸檔之後,在獲取下一次數據和選項'--sleep'指定的休眠時間之前,進行事務提交和刷新選項'--file'指定的文件,通過選項'--limit'控制事務的大小。
--host,-h
指定連接的資料庫IP地址。
--port,-P
指定連接的資料庫Port埠。
--user,-u
指定連接的資料庫用戶。
--password,-p
指定連接的資料庫用戶密碼。
--socket,-S
指定使用SOCKET文件連接。
--databases,-d
指定連接的資料庫
--source
指定需要進行歸檔操作的表,該選項是必須指定的選項,使用DSN方式表示。
--dest
指定要歸檔到的目標端表,使用DSN方式表示。
如果該選項沒有指定的話,則默認與選項'--source'指定源端表為相同表。
--where
指定通過WHERE條件語句指定需要歸檔的數據,該選項是必須指定的選項。不需要加上'WHERE'關鍵字,如果確實不需要WHERE條件進行限制,則指定'--where 1=1'。
--file
指定表數據需要歸檔到的文件。使用類似MySQL DATE_FORMAT()格式化命名方式。
文件內容與MySQL中SELECT INTO OUTFILE語句使用相同的格式,文件命名選項如下所示:
%Y:年,4位數(Year, numeric, four digits)
%m:月,2位數(Month, numeric (01..12))
%d:日,2位數(Day of the month, numeric (01..31))
%H:小時(Hour (00..23))
%i:分鍾(Minutes, numeric (00..59))
%s:秒(Seconds (00..59))
%D:資料庫名(Database name)
%t:表名(Table name)
二、原理解析
根據general log的輸出,我們整理出時序表格如下
三、其他說明
咋一看這個過程貌似也沒有什麼問題,但是,假如在原表掃描出數據,插入到新表的過程中,舊數據發生了變化怎麼辦?
帶著這個疑問,我們進行了源碼的跟蹤,我們在pt-archiver的6839行打上了斷點
然後我分別在幾個session窗口做了如下動作
最後pt-archiver輸出如下:
# A software update is available:
TIME ELAPSED COUNT
2020-04-08T09:13:21 0 0
2020-04-08T09:13:21 0 1
Started at 2020-04-08T09:13:21, ended at 2020-04-08T09:13:51
Source: A=utf8mb4,D=xucl,P=3306,h=127.0.0.1,p=...,t=t1,u=xucl
Dest: A=utf8mb4,D=xucl_archive,P=3306,h=127.0.0.1,p=...,t=t1,u=xucl
SELECT 1
INSERT 1
DELETE 1
Action Count Time Pct
sleep 1 30.0002 99.89
inserting 1 0.0213 0.07
commit 2 0.0080 0.03
select 2 0.0017 0.01
deleting 1 0.0005 0.00
other 0 0.0008 0.00
很明顯,id=3這條記錄並沒有進行歸檔(我們這里是改了條件列,實際生產中可能是更改了其他列,造成歸檔數據不準確)
那麼如何來解決這種情況的發生呢?
顯然,資料庫在資料庫中可以通過加排它鎖來防止其他程序修改對應的數據,pt-archiver其實早就已經幫我們考慮到了這樣的情況,pt-archiver提供了兩種選擇
--for-update:Adds the FOR UPDATE modifier to SELECT statements
--share-lock:Adds the LOCK IN SHARE MODE modifier to SELECT statements
四、總結
pt-archiver作為歸檔工具無疑是MySQL DBA日常運維的大利器之一,在使用過程中在知道如何使用的基礎上也能夠知曉其原理
歸檔過程中最好能對歸檔記錄進行加鎖操作,以免造成歸檔數據不準確
在主從環境中,歸檔過程最好控制速度,以免造成主從延遲
盡量控制好chunk的大小,不要過大,造成大事務
Ⅳ 數字檔案館介面數據怎樣歸檔
數字檔案館介面數據存入內存卡就好了。
磁帶存儲介質:
盡管現在許多存儲管理員選擇磁碟作為備份的介質,磁帶存儲介質仍然是使用最廣泛的歸檔介質,這主要是因為它的容量成本比高。
光學介質存儲:
光學介質存儲曾經在歸檔領域非常流行,因為它是最早提供一次寫入,多次讀取(WORM)數據重防寫的格式之一,也就是一旦這種介質被寫入,它只能讀取,無法重寫。
磁碟存儲:
作為數據存檔介質的選擇,磁碟存儲已經成為磁帶的最大挑戰者。它高達2TB容量的SATA驅動器的可用性以及它低於150美元的成本,顯然使得它可以與磁帶相競爭。
移動磁碟存儲:
數據存檔技術的討論不可能完全不提及可移動磁碟存儲,它同時提供了磁帶便攜性與基於磁碟的歸檔的所有好處。
Ⅵ 騰訊雲的歸檔存儲異地容災能力強嗎如何購買
找騰訊雲藍色航線購買的歸檔存儲具有異地容災解決方案,可將主站數據保存在多個核心存儲節點上,同時將主站數據復制一份保留在歸檔存儲CAS中,CAS 最快支持1-5分鍾的數據讀取,可以迅速恢復容災數據。
Ⅶ 資料庫數據歸檔,有什麼好辦法
pt-archiver原理解析
作為MySQL DBA,可以說應該沒有不知道pt-archiver了,作為pt-toolkit套件中的重要成員,往往能夠輕松幫助DBA解決數據歸檔的問題。例如線上一個流水表,業務僅僅只需要存放最近3個月的流水數據,三個月前的數據做歸檔即可,那麼pt-archiver就可以輕松幫你完成這件事情,甚至你可以配置成自動任務,無需人工干預。
作為DBA,我們應該知其然更應該知其所以然,這樣我們也能夠放心地使用pt工具。相信很多DBA都研究過pt-online-schema-change的原理,那麼今天我們深入刨一刨pt-archiver的工作原理。
一、原理觀察
土人有土辦法,我們直接開啟general log來觀察pt-archiver是如何完成歸檔的。
命令
pt-archiver --source h=127.0.0.1,u=xucl,p=xuclxucl,P=3306,D=xucl,t=t1 --dest h=127.0.0.1,P=3306,u=xucl,p=xuclxucl,D=xucl_archive,t=t1 --progress 5000 \
--statistics --charset=utf8mb4 --limit=10000 --txn-size 1000 --sleep 30
常用選項
--analyze
指定工具完成數據歸檔後對表執行'ANALYZE TABLE'操作。指定方法如'--analyze=ds',s代表源端表,d代表目標端表,也可以單獨指定。
--ask-pass
命令行提示密碼輸入,保護密碼安全,前提需安裝模塊perl-TermReadKey。
--buffer
指定緩沖區數據刷新到選項'--file'指定的文件並且在提交時刷新。
只有當事務提交時禁用自動刷新到'--file'指定的文件和刷新文件到磁碟,這意味著文件是被操作系統塊進行刷新,因此在事務進行提交之前有一些數據隱式刷新到磁碟。默認是每一行操作後進行文件刷新到磁碟。
--bulk-delete
指定單個語句刪除chunk的方式來批量刪除行,會隱式執行選項'--commit-each'。
使用單個DELETE語句刪除每個chunk對應的錶行,通常的做法是通過主鍵進行逐行的刪除,批量刪除在速度上會有很大的提升,但如果有復雜的'WHERE'條件就可能會更慢。
--[no]bulk-delete-limit
默認值:yes
指定添加選項'--bulk-delete'和'--limit'到進行歸檔的語句中。
--bulk-insert
使用LOAD DATA LOCAL INFILE的方法,通過批量插入chunk的方式來插入行(隱式指定選項'--bulk-delete'和'--commit-each')
而不是通過逐行單獨插入的方式進行,它比單行執行INSERT語句插入的速度要快。通過隱式創建臨時表來存儲需要批量插入的行(chunk),而不是直接進行批量插入操作,當臨時表中完成每個chunk之後再進行統一數據載入。為了保證數據的安全性,該選項會強制使用選項'--bulk-delete',這樣能夠有效保證刪除是在插入完全成功之後進行的。
--channel
指定當主從復制環境是多源復制時需要進行歸檔哪個主庫的數據,適用於多源復制中多個主庫對應一個從庫的情形。
--charset,-A
指定連接字元集。
--[no]check-charset
默認值:yes
指定檢查確保資料庫連接時字元集和表字元集相同。
--[no]check-columns
默認值:yes
指定檢查確保選項'--source'指定的源端表和'--dest'指定的目標表具有相同的欄位。
不檢查欄位在表的排序和欄位類型,只檢查欄位是否在源端表和目標表當中都存在,如果有不相同的欄位差異,則工具報錯退出。如果需要禁用該檢查,則指定'--no-check-columns'。
--check-slave-lag
指定主從復制延遲大於選項'--max-lag'指定的值之後暫停歸檔操作。默認情況下,工具會檢查所有的從庫,但該選項只作用於指定的從庫(通過DSN連接方式)。
--check-interval
默認值:1s
如果同時指定了選項'--check-slave-lag',則該選項指定的時間為工具發現主從復制延遲時暫停的時間。每進行操作100行時進行一次檢查。
--columns,-c
指定需要歸檔的表欄位,如有多個則用','(逗號)隔開。
--commit-each
指定按每次獲取和歸檔的行數進行提交,該選項會禁用選項'--txn-size'。
在每次獲取表數據並進行歸檔之後,在獲取下一次數據和選項'--sleep'指定的休眠時間之前,進行事務提交和刷新選項'--file'指定的文件,通過選項'--limit'控制事務的大小。
--host,-h
指定連接的資料庫IP地址。
--port,-P
指定連接的資料庫Port埠。
--user,-u
指定連接的資料庫用戶。
--password,-p
指定連接的資料庫用戶密碼。
--socket,-S
指定使用SOCKET文件連接。
--databases,-d
指定連接的資料庫
--source
指定需要進行歸檔操作的表,該選項是必須指定的選項,使用DSN方式表示。
--dest
指定要歸檔到的目標端表,使用DSN方式表示。
如果該選項沒有指定的話,則默認與選項'--source'指定源端表為相同表。
--where
指定通過WHERE條件語句指定需要歸檔的數據,該選項是必須指定的選項。不需要加上'WHERE'關鍵字,如果確實不需要WHERE條件進行限制,則指定'--where 1=1'。
--file
指定表數據需要歸檔到的文件。使用類似MySQL DATE_FORMAT()格式化命名方式。
文件內容與MySQL中SELECT INTO OUTFILE語句使用相同的格式,文件命名選項如下所示:
%Y:年,4位數(Year, numeric, four digits)
%m:月,2位數(Month, numeric (01..12))
%d:日,2位數(Day of the month, numeric (01..31))
%H:小時(Hour (00..23))
%i:分鍾(Minutes, numeric (00..59))
%s:秒(Seconds (00..59))
%D:資料庫名(Database name)
%t:表名(Table name)
例如:--file '/var/log/archive/%Y-%m-%d-%D.%t'
--output-format
指定選項'--file'文件內容輸出的格式。
默認不指定該選項是以製表符進行欄位的分隔符,如果指定該選項,則使用','(逗號)作為欄位分隔符,使用'"'(雙引號)將欄位括起。用法示例:'--output-format=mp'。
--for-update
指定為每次歸檔執行的SELECT語句添加FOR UPDATE子句。--share-lock
指定為每次歸檔執行的SELECT語句添加LOCK IN SHARE MODE子句。
--header
指定在文件中第一行寫入欄位名稱作為標題。
--ignore
指定為INSERT語句添加IGNORE選項。
--limit
默認值:1
指定每條語句獲取表和歸檔表的行數。
--local
指定不將OPTIMIZE和ANALYZE語句寫入binlog。
--max-lag
默認值:1s
指定允許主從復制延遲時長的最大值,單位秒。如果在每次獲取行數據之後主從延遲超過指定的值,則歸檔操作將暫停執行,暫停休眠時間為選項'--check-interval'指定的值。待休眠時間結束之後再次檢查主從延遲時長,檢查方法是通過從庫查詢的'Seconds_Behind_Master'值來確定。如果主從復制延遲一直大於該參數指定值或者從庫停止復制,則操作將一直等待直到從庫重新啟動並且延遲小於該參數指定值。
--no-delete
指定不刪除已被歸檔的表數據。
--optimize
指定工具完成數據歸檔後對表執行'OPTIMIZE TABLE'操作。指定方法如'--analyze=ds',s代表源端表,d代表目標端表,也可以單獨指定。
--primary-key-only
指定只歸檔主鍵欄位,是選項'--columns=主鍵'的簡寫。
如果工具歸檔的操作是進行DELETE清除時最有效,因為只需讀取主鍵一個欄位而無需讀取行所有欄位。
--progress
指定每多少行列印進度信息,列印當前時間,已用時間以及多少行進行歸檔。
--purge
指定執行的清除操作而不是歸檔操作。允許忽略選項'--dest'和'--file'進行操作,如果只是清除操作可以結合選項'--primary-key-only'會更高效。
--quiet,-q
指定工具靜默執行,不輸出任何的執行信息。
--replace
指定寫入選項'--dest'指定目標端表時改寫INSERT語句為REPLACE語句。
--retries
默認值:1
指定歸檔操作遇到死鎖或超時的重試次數。當重試次數超過該選項指定的值時,工具將報錯退出。
--run-time
指定工具歸檔操作在退出之前需要運行的時間。允許的時間後綴名為s=秒,m=分,h=小時,d=天,如果沒指定,默認為s。
--[no]safe-auto-increment
默認值:yes
指定不使用自增列(AUTO_INCREMENT)最大值對應的行進行歸檔。
該選項在進行歸檔清除時會額外添加一條WHERE子句以防止工具刪除單列升序欄位具有的具有AUTO_INCREMENT屬性最大值的數據行,為了在資料庫重啟之後還能使用到AUTO_INCREMENT對應的值,但這會引起無法歸檔或清除欄位對應最大值的行。
--set-vars
默認:
wait_timeout=10000
innodb_lock_wait_timeout=1
lock_wait_timeout=60
工具歸檔時指定參數值,如有多個用','(逗號)分隔。如'--set-vars=wait_timeout=5000'。
--skip-foreign-key-checks
指定使用語句SET FOREIGN_KEY_CHECKS = 0禁用外鍵檢查。
--sleep
指定工具在通過SELECT語句獲取歸檔數據需要休眠的時間,默認值是不進行休眠。在休眠之前事務並不會提交,並且選項'--file'指定的文件不會被刷新。如果指定選項'--commit-each',則在休眠之前會進行事務提交和文件刷新。
--statistics
指定工具收集並列印操作的時間統計信息。
統計信息示例如下:
'
Started at 2008-07-18T07:18:53, ended at 2008-07-18T07:18:53
Source: D=db,t=table
SELECT 4
INSERT 4
DELETE 4
Action Count Time Pct
commit 10 0.1079 88.27
select 5 0.0047 3.87
deleting 4 0.0028 2.29
inserting 4 0.0028 2.28
other 0 0.0040 3.29
--txn-size
默認:1
指定每個事務處理的行數。如果是0則禁用事務功能。
--version
顯示工具的版本並退出。
--[no]version-check
默認值:yes
檢查Percona Toolkit、MySQL和其他程序的最新版本。
--why-quit
指定工具列印當非因完成歸檔行數退出的原因。
在執行一個自動歸檔任務時該選項與選項'--run-time'一起使用非常方便,這樣可以確定歸檔任務是否在指定的時間內完成。如果同時指定了選項'--statistics',則會列印所有退出的原因。
二、原理解析
根據general log的輸出,我們整理出時序表格如下
三、其他說明
咋一看這個過程貌似也沒有什麼問題,但是,假如在原表掃描出數據,插入到新表的過程中,舊數據發生了變化怎麼辦?
帶著這個疑問,我們進行了源碼的跟蹤,我們在pt-archiver的6839行打上了斷點
然後我分別在幾個session窗口做了如下動作
最後pt-archiver輸出如下:
# A software update is available:
TIME ELAPSED COUNT
2020-04-08T09:13:21 0 0
2020-04-08T09:13:21 0 1
Started at 2020-04-08T09:13:21, ended at 2020-04-08T09:13:51
Source: A=utf8mb4,D=xucl,P=3306,h=127.0.0.1,p=...,t=t1,u=xucl
Dest: A=utf8mb4,D=xucl_archive,P=3306,h=127.0.0.1,p=...,t=t1,u=xucl
SELECT 1
INSERT 1
DELETE 1
Action Count Time Pct
sleep 1 30.0002 99.89
inserting 1 0.0213 0.07
commit 2 0.0080 0.03
select 2 0.0017 0.01
deleting 1 0.0005 0.00
other 0 0.0008 0.00
很明顯,id=3這條記錄並沒有進行歸檔(我們這里是改了條件列,實際生產中可能是更改了其他列,造成歸檔數據不準確)
那麼如何來解決這種情況的發生呢?
顯然,資料庫在資料庫中可以通過加排它鎖來防止其他程序修改對應的數據,pt-archiver其實早就已經幫我們考慮到了這樣的情況,pt-archiver提供了兩種選擇
--for-update:Adds the FOR UPDATE modifier to SELECT statements
--share-lock:Adds the LOCK IN SHARE MODE modifier to SELECT statements
四、總結
pt-archiver作為歸檔工具無疑是MySQL DBA日常運維的大利器之一,在使用過程中在知道如何使用的基礎上也能夠知曉其原理
歸檔過程中最好能對歸檔記錄進行加鎖操作,以免造成歸檔數據不準確
在主從環境中,歸檔過程最好控制速度,以免造成主從延遲
盡量控制好chunk的大小,不要過大,造成大事務
Ⅷ 阿里雲伺服器1t存儲多少錢
如果文件不常用,選擇歸檔類型,每GB價格0.033元/月,購買存儲包比按量計費更優惠一些。
標准類型:適用場景:通用場景,平均每文件每月訪問大於1次;對象最小計量大小:按照對象實際大小計算;數據訪問特點:實時訪問;支持圖片處理;存儲空間價格(本地冗餘LRS):0.12元/GB/月
歸檔類型:適用場景:單文件月訪問不到1次,且適應解凍過程;對象最小計量大小:64KB,即小於64KB的文件,按64KB計費;數據訪問特點:需先解凍後才能讀取,解凍時間1分鍾;圖片處理:支持,但需要先解凍。
Ⅸ 數據備份與數據歸檔有什麼區別
因此,關於歸檔與備份的區別,國內較大的行業和企業用戶都比較了解,但對於IT應用歷史不長、規模不大、數據量有限的企業來說,對於兩者的區別可能就不那麼清楚。
基礎的存儲應用主要包括數據備份與數據歸檔兩個方面。歸檔的目的是實現歷史數據和信息被系統、科學、長期地保存,以被公司決策管理、上級或第三方機構監管等用途。備份正好相反,其目的是數據的立即使用,以確保業務連續性,或者使業務中斷時能夠以最短的時間得到恢復。
近年來,西方國家發生了一些重大的企業舞弊案件,使得政府和整個社會都對企業數據資料的保存提出了更為嚴苛的要求,從而使數據歸檔的地位上升到關繫到企業存亡和社會安定的高度。另外,早期計算機主要是處理文本數據,如今卻要處理大量的多媒體數據,對存儲容量和速度的要求已經發生了根本性的變化,企業在數據資料的保存和利用方面的投資越來越高,而歸檔是企業有效管理應用數據資料、降低成本的重要手段。
因此,從當今的數據歸檔應用來看,主要是解決好企業數據保存的法規遵從性和企業數據資產的有效管理兩個方面的問題。
雖然數據歸檔與備份都屬於存儲應用,但在技術實現上有很大區別。在IT應用早期,磁碟陣列不像今天這么發達,磁帶庫是主要的備份技術。如今,硬碟越來越便宜,不僅磁帶在備份中的應用減少了,甚至有人提出用磁碟陣列來做歸檔,全面取代磁帶庫。但是,由於磁碟陣列的技術特性所決定,存儲在其中的資料都處在熱狀態。
這就是說,用於數據歸檔的磁碟存儲系統不應該關機,其重新加電的過程也很復雜。而在提倡「綠色計算」的今天,長期開機很不利於能耗的降低。而且,幾十年、上百年的資料,使用頻度不一定很高,磁碟和磁帶相比,成本效益就更加懸殊。所以說,對於數據歸檔來說,磁帶庫仍然是不可替代的最佳選擇。
光碟存儲也被認為是數據歸檔的一種手段,其特點是價格低廉,技術含量低,而且便於大范圍分發。但是,其容量無法與磁帶和磁碟相比,能夠支持的應用也比較受限,因此並不適用於企業數據中心級別的數據歸檔應用。
我們都看到,在數據歸檔中應用ILM(Information Lifecycle Management,信息生命周期管理)的理念已經逐步被用戶接受,這不僅能幫助企業從整體上改善其數據資產的管理,以最低的成本來實現大量數據的有效管理與高效利用。並且隨著應用的成熟與現實的需求,我們發現數據加密、身份認證、虛擬化等技術也逐步走進數據歸檔的應用中,並且有效地提高了數據歸檔應用的效率,增強了數據安全性,大大降低了操作的復雜性和成本。
Ⅹ 騰訊雲歸檔存儲和騰訊雲存儲網關區別在哪
前者具有備份功能,可將主站數據保存在多個核心存儲節點上,同時將主站數據復制一份保留在歸檔存儲CAS中,CAS 最快支持1-5分鍾的數據讀取,可以迅速提取
後者具有熱緩存功能,支持自動把對訪問性能要求較高的熱數據緩存到本地、將延遲不敏感的較冷數據上傳到雲端保存,實現數據的冷熱分離。可以找藍色航線的