2012-06-28 45 views
1

我有2 GB的大容量數據在MySQL服務器上,我想得到它的備份。如何讓mysql備份表以特定字母開頭?

我嘗試使用mysqldump -u root newspress > /tmp/newspress.sql

但是從服務器下載到我的本地機器要花很長的時間。所以我想獲得數據庫中的特定表格starts with J

Forexample:Jobseeker, Jobs, Joncategory...

怎麼辦呢?

回答

0

下面的腳本將選擇所有表以「M」,並將它們轉儲到當前目錄下一個名爲database.table.sql文件(例如:test.employees.sql):

DB="test" 
TABLES=`mysql -uroot -BN -e "SHOW TABLES FROM $DB LIKE 'm%'"` 
for TABLE in $TABLES; 
do 
    mysqldump -uroot $DB $TABLE > $DB.$TABLE.sql; 
done 

注意,要減少mysqldump生成備份的大小,你可以壓縮它:

shell> mysqldump -u root newspress > /tmp/newspress.sql 
shell> gzip /tmp/newspress.sql 

2GB的轉儲將減少到一個相當小的尺寸。

+0

謝謝....我會試一試 –

+0

它給出錯誤 錯誤1045(28000):Access拒絕用戶'root'@'localhost'(使用密碼:否) 我用mysql -u root -p **** –

+1

@NaanuManu這是一個完全不同的問題,但要確保-p和你的密碼。上面的腳本已經過測試。另請參閱我關於壓縮備份的說明,這也可能對您有所幫助。 – geertjanvdk

0

下載mysql workbench。那麼您只需點擊一下即可輕鬆完成備份。它太快了。

+0

數據庫是在Linux服務器上,我只能通過命令提示符訪問mysql。 –

+0

好的...但wb也可用於Linux。請參閱我上面提到的網站 – Amith

+0

是的夥計..我看着它。我無法在服務器上安裝用戶界面和訪問我的系統... –

相關問題