1、首先把所有的文件都收集到一起,疊放整齊擺放在桌面上。不要把文件漏掉了,要不然以後在查詢文件的時候,會很麻煩的;
Ⅱ 如何有效地將電腦中的文件資料歸類存儲
1、根據硬碟分區先分開存儲不同大類的文件,C盤一般做為系統盤,D盤可用於裝程序。E盤用於工作,F盤用於生活。這是一般的分法,也可以根據自己的習慣或者用途做其它的分類。
5、文件不要安裝在C盤,安裝軟體會佔有用電腦的空間,其它的盤還沒什麼,如果把文件安裝在C盤,會讓電腦變得很慢很慢,所以,在整理文件前,先把不要的軟體刪除 ,或者安裝到其它磁碟。
Ⅲ 合同保管及歸檔方法
法律分析:1、合同應交由企業檔案管理部門進行歸檔,檔案管理一般為法務部門或行政部門。 為保穩妥,建議企業每個合同至少應留存兩份原件,並分別放置兩個地方獨立留存。 2、合同登記的項目應由企業的業務部門與歸檔部門一同匯總,共同完成登記工作。 有些企業僅登記合同中的收、付款信息,這是遠遠不夠的,登記應至少包括對方主體信息、主要項目內容、本企業合同負責人、對方合同負責人、主要權利義務履行期限、付款節點、收款節點、涉及資產購買的還應進行資產登記。
3、合同歸檔之前進行掃描,留存合同電子版,做到紙質文件與電子文件的統一。 日後非必須使用原件時,查詢電子版本即可。
4、建立客戶檔案信息。 通過簽署合同得知的客戶信息進行匯總,方便日後查詢。
法律依據:《合同保管歸檔規定》
第六條 凡屬企業歸檔范圍的文件材料,必須按有關規定向本企業檔案部門移交,實行集中統一管理,任何個人不得據為己有或拒絕歸檔。
第七條 企業檔案的保管期限定為永久、定期兩種,定期一般分為30年、10年。
Ⅳ 合同怎麼歸檔整理
法律分析:合同的歸檔整理方法如下:在合同文本雙方簽字蓋章完畢後,由合同承辦人兩日內將合同以下有關資料移交法務部,並由法務部專人簽收,法務部專人兩日內負責將其記錄到合同台賬,同時,法務部專人每兩周應查對已經用印並錄入合同編號的合同的歸檔情況,對於出現的異常情況應及時上報。
法律依據:《中華人民共和國民法典》第四百六十九條 當事人訂立合同,可以採用書面形式、口頭形式或者其他形式。
書面形式是合同書、信件、電報、電傳、傳真等可以有形地表現所載內容的形式。
以電子數據交換、電子郵件等方式能夠有形地表現所載內容,並可以隨時調取查用的數據電文,視為書面形式。
Ⅳ 如何整理檔案
檔案整理是指將處於零亂的和需要進一步條理化的檔案,進行基本的分類、組合、排列、編號、編制目錄、建立全宗等,組成有序體系的過程。
更全面地說,檔案整理是檔案實體整理和檔案內容整理的統稱,是檔案管理的一頊重要內容。檔案內容整理,主要包括對檔案文件的內容真偽的鑒別,對檔案內容客觀性的考證及編纂出版檔案史料等活動。檔案實體整理,主要是將零散的和需要進一步條理化的文件或檔案,進行基本的分類、組合、排列、編目,組成有序的檔案整體的工作過程。通常所說的檔案整理,主要指檔案的實體整理,它包括以下三方面的工作內容:
(一)檔案館對接收與徵集檔案的整理
1、系統排列和編目
在正規的工作條件下,檔案室主要接收文書部門和業務部門按照歸檔要求立好的案卷,檔案館主要接收機關檔案室根據入館要求整理移交的案卷。這樣,檔案室和檔案室館的檔案整理工作,主要是對所接收的檔案,在更大的范圍內進一步系統地整理,如全宗和案卷的排列,案卷目錄的加工等等。
2、局部調整
對於已經整理入館、入室保存的檔案,經過管理實踐的檢驗或專門質量檢查,檔案館和檔案室需要對其中不符合要求的檔案進行一定的加工以提高其質量;另一方面,某些檔案材料由於保存的時間校長,其自身或檔案整理體系發生了變化,因此也必須對其進行整理。
3、全過程整理
檔案館、檔案室有時也接收和徵集一些零散的文件,這就必須對檔案進行全過程的整理工作,包括區分全宗、全宗內檔案文件的分類、組卷、案卷排列、編定檔號編制案卷目錄、全宗檔案的系統排放等。[二]
檔案整理工作的重要意義:
它是檔案利用、開放,發揮檔案作用的一項前提條件,是整個檔案工作中重要的基本建設。它是開發檔案信息資源的重要基礎,檔案整理科學化和標准化的提高,對於檔案管理工作的總體優化具有直接和廣泛的影響。[三]
檔案整理的基本要求:
遵循文件材料的形成規律和特點,保持文件材料之間的有機聯系;區分文件材料的價值,確定檔案的保管期限;便於保管和利用。[四]
檔案整理的方法有兩種:
一是以「案卷」為單位整理。
按「卷」整理是一種傳統的方法,一般可分以下幾個步驟:
(1)分類。分類方法有多種,常用是年度分類法和問題分類法。年度分類法就是按照文件內容針對的時間把屬於不同年度的文件分開。問題分類法就是按照檔案所紀錄的主要內容對檔案分門別類。在企業檔案工作中可以把文書檔案工作檔案分成黨群工作、行政管理工作、經營管理工作、生產技術管理工作等四類。認為文書檔案運用年度――問題分類法來分類是比較符合實際需要的;
(2)組卷(即組成案卷)。它是檔案整理的最基本環節,其實質是將一組密切聯系的文件材料組合在一起,便於保管和利用。文書處理部門通過平時歸卷將已辦理完畢的文件分別歸入有關卷夾,為年終立卷工作打下良好的基礎。在確定某組文件能否組成一卷之前,還必須對已歸檔文件進行最後的全面調整,然後進行具體的系統整理組合。對歸檔文件檢察調整的內容包括:應歸檔的文件是否收集齊全完整;歸檔的文件是否屬於本年度、本部門的立卷歸檔范圍;每個卷夾內的文件是否保持了文件之間的有機聯系,反映了立卷的特徵;檢察各卷夾內文件的保存價值是否大體一致,並確定保管期限;檢查各卷夾內文件數量是否適當;
(3)卷內文件材料排列(按文件形成的時間先後或重要程序排列);
(5)編制卷內目錄(樣式附後)和備考表;
(6)按卷內目錄、文件材料、備考表的順序排列後裝訂成卷或按件放入檔案盒內;
(7)擬寫案卷標題,填寫案卷封面。案卷標題即案卷題名,是案卷的名稱,是對卷內文件材料的高度概括。擬寫案卷標題內容概括確切,文字上要簡練通順,標題字數一般不超過50字為宜。標題結構一般由主要發文機關、內容、文種三部分構成;
(8)案卷排列與編號。案卷排列要保持案卷之間的有機聯系和條理性,一般可按先永久,長期,短期來進行排列,然後按排列順序每年編一個流水號;
(9)編制檔案案卷目錄。案卷目錄由歸檔號、案卷號、題名、年度、頁數、保管期限、備注等組成,案卷目錄可以多年編成一本或一年多本。
按「件」整理要以計算機管理為前提條件,主要步驟有:
(1)對歸檔文件逐件裝訂固定;
(2)對歸檔文件以「件」為單位進行年度――保管期限分類(不確定期限的,只按年度――問題分類即可);
(3)對分類後的歸檔文件按時間、重要程度排列,其中對成套性文件材料相對集中;
(4)根據排列結果逐件在歸檔文件上方空白處加蓋「檔號章」(樣式附後),並填寫有關欄目的內容;
Ⅵ 歸檔的方法怎樣歸檔最好
當然是根據國家標准好,這都是經過實踐證明且輕質有效,統一使用的方法,不過我先給您一份我寫的,後面附上國家標准,祝成功!
文件、記錄歸檔的有關規定
1. 目的
規范公司文件、資料的管理,確保公司資料完整,便於查找。
2. 適用范圍
記錄、證書、證件、技術資料、公司文件及綜合類文件
3. 管理程序
3.1. 保管
3.1.1. 記錄的保管方法
3.1.1.1. 按記錄的編號歸類存放,能成冊的按月整理成冊,按年裝訂成卷,例如:信息反饋單、電話記錄、領料單等。
3.1.1.2. 涉及同一項目的有關記錄按項目成套保管,項目結束時,每個項目單獨裝訂成冊,按年裝訂成卷。例如:ZHHK-JL/04的管理評審系列記錄、ZHHK-JL/06的質量計劃系列記錄及ZHHK-JL/08的項目建議書一直到ZHHK-JL/11的設計和開發更改通知單等。
3.1.1.3. 除文件控制清單、記錄控制清單在文件換版時組卷外,其餘記 錄按月整理,按年裝訂成卷。
3.1.2. 證書、證件類文件的保管
綜合部負責將各類證書、證件登記編號;屬於個人的證書,復印留底後,歸還個人保管;屬於公司的證書由綜合部統一保管。
3.1.3. 技術資料的保管
技術材料,從立項開始,直至成果推廣應用各階段形成的文件材料,使用後交到綜合部保管,待成果推廣後,將所有材料裝訂成卷。
3.1.4. 綜合類文件的保管
將有一定相關性的文件整理在一起,隨時將文件歸到相應的類別,年底按類別裝訂成卷。
3.1.5. 公司文件的保管
公司文件發布後要在綜合部登記備案,年底按文件編號的順序裝訂成卷。 有保存價值的通知按公司文件處理,附在公司文件後面,按發布的日期排列裝訂。
3.2. 組卷要求
3.2.1.卷內要有目錄
3.2.2.卷要有編號
編號規則:xx--xxx
文件類別代號:記錄 —— JL
證書、證件類文件 —— 證
技術資料 —— JS
綜合類文件 —— ZH
公司文件 —— GS
3.2.3. 證書、證件類文件因經常使用,所以不用組卷,但要有目錄。證書、證件 單獨編號。
附上國家標准:
中華人民共和國檔案行業標准
歸檔文件整理規則
DA/T22-2000 中華人民共和國國家檔案局2000-12-06批准 2001-01-01實施
--------------------------------------------------------------------------------
1 范圍
本標准規定了歸檔文件整理的原則和方法。�
本標准適用於各級機關、團體和其他社會組織。
2 定義
本標准採用下列定義。
2.1 歸檔文件�
立檔單位在其職能活動中形成的、辦理完畢、應作為文書檔案保存的各種紙質文件材料。
2.2 歸檔文件整理�
將歸檔文件以件為單位進行裝訂、分類、排列、編號、編目、裝盒,使之有序化的過程。
2.3 件�
歸檔文件的整理單位。一般以每份文件為一件,文件正本與定稿為一件,正文與附件為一件 ,原件與復製件為一件,轉發文與被轉發文為一件,報表、名冊、圖冊等一冊(本)為一件,來文與復文可為一件。
3 整理原則
遵循文件的形成規律,保持文件之間的有機聯系,區分不同價值,便於保管和利用。
4 質量要求
4.1 歸檔文件應齊全完整。已破損的文件應予修整,字跡模糊或易退變的文件應予復制。
4.2 整理歸檔文件所使用的書寫材料、紙張、裝訂材料等應符合檔案保護要求。
5 整理方法
5.1 裝訂�
歸檔文件應按件裝訂。裝訂時,正本在前,定稿在後;正文在前,附件在後;原件在前,復製件在後;轉發文在前,被轉發文在後;來文與復文作為一件時,復文在前,來文在後。
5.2 分類�
歸檔文件可以採用年度-機構(問題)-保管期限或保管期限-年度-機構(問題)等方法進行分類。同一全宗應保持分類方案的穩定。
5.2.1 按年度分類�
將文件按其形成年度分類。
5.2.2 按保管期限分類�
將文件按劃定的保管期限分類。
5.2.3 按機構(問題)分類�
將文件按其形成或承辦機構(問題)分類(本項可以視情況予以取捨)。
5.3 排列�
歸檔文件應在分類方案的最低一級類目內,按事由結合時間、重要程度等排列。會議文件、統計報表等成套性文件可集中排列。
5.4 編號�
歸檔文件應依分類方案和排列順序逐件編號,在文件首頁上端的空白位置加蓋歸檔章並填寫相關內容。歸檔章設置全宗號、年度、保管期限、件號等必備項,並可設置機構(問題)等選擇項。(見圖A1。圖示中「*」號欄為選擇項,不選用時無須設置。以下同)。
5.4.1 全宗號:檔案館給立檔單位編制的代號。
5.4.2 年度:文件形成年度,以四位阿拉伯數字標注公元紀年,如1978。
5.4.3 保管期限:歸檔文件保管期限的簡稱或代碼。
5.4.4 件號:文件的排列順序號。�
件號包括室編件號和館編件號,分別在歸檔文件整理和檔案移交進館時編制。室編件號的編制方法為:在分類方案的最低一級類目內,按文件排列順序從"1"開始標注。館編件號按進館要求標注。
5.4.5 機構(問題):作為分類方案類目的機構(問題)名稱或規范化簡稱。
5.5 編目�
歸檔文件應依據分類方案和室編件號順序編制歸檔文件目錄。
5.5.1 歸檔文件應逐件編目。來文與復文作為一件時,只對復文進行編目。歸檔文件目錄設置件號、責任者、文號、題名、日期、頁數、備注等項目。
5.5.1.1 件號:填寫室編件號。
5.5.1.2 責任者:制發文件的組織或個人,即文件的發文機關或署名者。
5.5.1.3 文號:文件的發文字型大小。
5.5.1.4 題名:文件標題。沒有標題或標題不規范的,可自擬標題,外加"〔 〕"號。
5.5.1.5 日期:文件的形成時間,以8位阿拉伯數字標注年月日,如19990909。
5.5.1.6 頁數:每一件歸檔文件的頁數。文件中有圖文的頁面為一頁。
5.5.1.7 備註:注釋文件需說明的情況。
5.5.2 歸檔文件目錄用紙幅面尺寸採用國際標准A4型(長×寬為297mm×210mm)。
5.5.3 歸檔文件目錄應裝訂成冊並編制封面。歸檔文件目錄封面可以視需要設置全宗名稱、年度、保管期限、機構(問題)等項目(見圖A3)。其中全宗名稱即立檔單位的名稱,填寫時應使用全稱或規范化簡稱。
5.6 裝盒�
將歸檔文件按室編件號順序裝入檔案盒,並填寫檔案盒封面、盒脊及備考表項目。
5.6.1 檔案盒
5.6.1.1 檔案盒封面應標明全宗名稱。檔案盒的外形尺寸為310mm×220mm(長×寬),盒脊厚度可以根據需要設置為20mm、30mm、40mm等。(見圖A4(a))。
5.6.1.2 檔案盒應根據擺放方式的不同,在盒脊或底邊設置全宗號、年度、保管期限、起止件號、盒號等必備項,並可設置機構(問題)等選擇項。其中,起止件號填寫盒內第一件文件和最後一件文件的件號,中間用「-」號連接;盒號即檔案盒的排列順序號,在檔案移交進館時按進館要求編制。
5.6.1.3 檔案盒應採用無酸紙製作。
5.6.2 備考表�
備考表置於盒內文件之後,項目包括盒內文件情況說明、整理人、檢查人和日期(見圖A5)。
5.6.2.1 盒內文件情況說明:填寫盒內文件缺損、修改、補充、移出、銷毀等情況。
5.6.2.2 整理人:負責整理歸檔文件的人員姓名。
5.6.2.3 檢查人:負責檢查歸檔文件整理質量的人員姓名。
5.6.2.4 日期:歸檔文件整理完畢的日期。
Ⅶ 資料庫數據歸檔,有什麼好辦法
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的大小,不要過大,造成大事務