將MYSQLDUMP全庫備份分為單庫檔案的方法(自己寫的小工具)
有時候我們備份是做的全庫的備份,但是在恢復的時候卻需要單庫的檔案,如果需要的庫很小,我們把全庫備份恢復回去然後匯出想要的庫的檔案勢必非常慢和耗時,這個時候如果
能夠拆分檔案為單庫就好了,所以做了如下一個工具
工具叫做mysplit 可以檢視備份出來每個庫的大小和分割檔案。
下載百度雲盤:
下載後傳入到LINUX系統
chmod 755 mysplit1.2
就可以用了
幫助如下:
/*****************************************************
Copyright by GaoPeng .All rights reserved.Version 1.2
This tool is uesd to split more than one database dump
to split to single database file and show every datab
ase dump size.
USEAGE:./mysplit -show/-split dumpfilename [charset]
-show to show every database dump size
-split TO split every database to single file
[charset] is optional default /*SET NAMES UTF8*/
Editer's qq:22389860,bugs report!
*****************************************************/
使用例項分割庫:
[root@hadoop1 ~]# mysplit1.2 -split log.log utf8
/*****************************************************
Copyright by GaoPeng .All rights reserved.Version 1.2
This tool is uesd to split more than one database dump
to split to single database file and show every datab
ase dump size.
USEAGE:./mysplit -show/-split dumpfilename [charset]
-show to show every database dump size
-split TO split every database to single file
[charset] is optional default /*SET NAMES UTF8*/
Editer's qq:22389860,bugs report!
*****************************************************/
NOTE:if use -show Enter y,follow hint is affect only -split
Will use charset utf8,please check !
Best way to find set names use Linux command:
head -n 10 dumpfilename
[y/n] y:use default charset utf8/n:exit mysplit
y
/*!40101 SET NAMES utf8 */;
number 1,begin 778,end 908,database --g1'size= 0.126953(KB)
new file is create of databse g1
number 2,begin 909,end 1045,database --kkmm'size= 0.132812(KB)
new file is create of databse kkmm
number 3,begin 1046,end 627860,database --mysql'size= 612.123047(KB)
new file is create of databse mysql
number 4,begin 627861,end 628477,database --nvc'size= 0.601562(KB)
new file is create of databse nvc
number 5,begin 628478,end 251621886,database --test'size= 245110.750000(KB)
new file is create of databse test
number 6,begin 251621887,end 251622887,database --test1'size= 0.976562(KB)
new file is create of databse test1
number 7,begin 251622888,end 262508330,database --test100'size= 10630.314453(KB)
new file is create of databse test100
number 8,begin 262508331,end 262992362,database --test2'size= 472.686523(KB)
new file is create of databse test2
number 9,begin 262992363,end 262992505,database --testl2'size= 0.138672(KB)
new file is create of databse testl2
number 10,begin 262992506,end 262992549,database --g1'size= 0.041992(KB)
file is exist append to databse g1
number 11,begin 262992550,end 262992597,database --kkmm'size= 0.045898(KB)
file is exist append to databse kkmm
number 12,begin 262992598,end 262992647,database --mysql'size= 0.047852(KB)
file is exist append to databse mysql
number 13,begin 262992648,end 262992693,database --nvc'size= 0.043945(KB)
file is exist append to databse nvc
number 14,begin 262992694,end 262993646,database --test'size= 0.929688(KB)
file is exist append to databse test
number 15,begin 262993647,end 262994567,database --test1'size= 0.898438(KB)
file is exist append to databse test1
number 16,begin 262994568,end 262995526,database --test100'size= 0.935547(KB)
file is exist append to databse test100
number 17,begin 262995527,end 262995576,database --test2'size= 0.047852(KB)
file is exist append to databse test2
number 18,begin 262995577,end 262996054,database --testl2'size= 0.465820(KB)
file is exist append to databse testl2
UESD TIME TOTAL:
35.000000 seconds used
檢視每個庫備份出來的大小:
[root@hadoop1 ~]# mysplit1.2 -show log.log utf8
/*****************************************************
Copyright by GaoPeng .All rights reserved.Version 1.2
This tool is uesd to split more than one database dump
to split to single database file and show every datab
ase dump size.
USEAGE:./mysplit -show/-split dumpfilename [charset]
-show to show every database dump size
-split TO split every database to single file
[charset] is optional default /*SET NAMES UTF8*/
Editer's qq:22389860,bugs report!
*****************************************************/
NOTE:if use -show Enter y,follow hint is affect only -split
Will use charset utf8,please check !
Best way to find set names use Linux command:
head -n 10 dumpfilename
[y/n] y:use default charset utf8/n:exit mysplit
y
/*!40101 SET NAMES utf8 */;
number 1,begin 778,end 908,database --g1'size= 0.126953(KB)
number 2,begin 909,end 1045,database --kkmm'size= 0.132812(KB)
number 3,begin 1046,end 627860,database --mysql'size= 612.123047(KB)
number 4,begin 627861,end 628477,database --nvc'size= 0.601562(KB)
number 5,begin 628478,end 251621886,database --test'size= 245110.750000(KB)
number 6,begin 251621887,end 251622887,database --test1'size= 0.976562(KB)
number 7,begin 251622888,end 262508330,database --test100'size= 10630.314453(KB)
number 8,begin 262508331,end 262992362,database --test2'size= 472.686523(KB)
number 9,begin 262992363,end 262992505,database --testl2'size= 0.138672(KB)
number 10,begin 262992506,end 262992549,database --g1'size= 0.041992(KB)
number 11,begin 262992550,end 262992597,database --kkmm'size= 0.045898(KB)
number 12,begin 262992598,end 262992647,database --mysql'size= 0.047852(KB)
number 13,begin 262992648,end 262992693,database --nvc'size= 0.043945(KB)
number 14,begin 262992694,end 262993646,database --test'size= 0.929688(KB)
number 15,begin 262993647,end 262994567,database --test1'size= 0.898438(KB)
number 16,begin 262994568,end 262995526,database --test100'size= 0.935547(KB)
number 17,begin 262995527,end 262995576,database --test2'size= 0.047852(KB)
number 18,begin 262995577,end 262996054,database --testl2'size= 0.465820(KB)
UESD TIME TOTAL:
11.000000 seconds used
如此我們可以使用分割的檔案進行匯入!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-2052092/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysqldump備份單庫、部分庫、全庫、及排除部分庫MySql
- rman全庫備份備份歸檔日誌檔案
- MySQLDump的備份方法MySql
- Dedecms備份的資料檔案位置及備份資料庫的方法資料庫
- 【Mysql】mysqldump全備中還原指定的庫MySql
- 從mysqldump全備獲取指定庫的sqlMySql
- mysqldump 資料庫備份程式MySql資料庫
- mysql 備份資料庫 mysqldumpMySql資料庫
- 遠端備份資料庫和檔案的方法資料庫
- mysqldump使用方法(MySQL資料庫的備份與恢復)MySql資料庫
- mysql的分庫備份MySql
- 簡單的mysqldump備份(windows)MySqlWindows
- Mysqldump 在備庫進行備份時會阻塞備庫的sql_threadMySqlthread
- rman 備份 全庫
- standby全庫rman備份檔案恢復到異機
- BMMySQL定時備份資料庫(全庫備份)的實現meuMySql資料庫
- 世界備份日:你是否會備份自己的檔案?
- RMAN 全庫備份和 0級備份的區別
- 還原sqlserver資料庫備份檔案.bak的檔案SQLServer資料庫
- 完整的全庫備份(供資料庫遷移用)資料庫
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- mysqldump來備份MYSQL資料庫(指令碼)MySql資料庫指令碼
- 將RAC備份集恢復為單例項資料庫單例資料庫
- RMAN備份整庫和歸檔日誌的方法
- Mysqldump的備份流程MySql
- 有整庫備份的情況rman恢復全庫
- 利用MySQL全備份(mysqldump),如何只恢復一個庫或者一個表?MySql
- Oracle資料庫的備份方法-冷備份(轉)Oracle資料庫
- 使用備份的控制檔案恢復資料庫資料庫
- RMAN全庫備份指令碼指令碼
- 將某資料庫的ACL資訊寫入檔案將其作為附件寄出資料庫
- 【RAC】將單例項備份集恢復為rac資料庫單例資料庫
- 【RAC】將RAC備份集恢復為單例項資料庫單例資料庫
- MySQL資料庫mysqldump命令備份異常的一個案例MySql資料庫
- 使用Mysqldump備份和恢復MySQL資料庫MySql資料庫
- Linux基礎命令---mysqldump資料庫備份LinuxMySql資料庫
- mysqldump 全量和增量備份指令碼MySql指令碼
- mysqldump常用備份恢復方法MySql