使用MYSQL界定符備份及還原數據庫 比sql文件更給力
在《高性能Mysql》第二版中看到,SQL文件和界定符文件在備份、還原時的耗費時間對比。
方式 文件大小 導出時間 還原時間
SQL dump 727M 102s 600s
Delimited dump 669M 86s 301s
看起來界定符文件的導出比sql文件快了近20%,還原速度快了一倍。
記錄和總結一下語法:
備份:SELECT INTO OUTFILE
SELECT * FROM hx_9enjoy INTO OUTFILE '/tmp/9enjoy.txt'
默認使用tab分割字段,記錄使用\n分割。可以自定義三個參數。
SELECT * FROM hx_9enjoy INTO OUTFILE '/tmp/9enjoy_hx.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';
即使用,分割字段,雙引號限定字段內容,\n分割記錄。
還可以指定某些條件的記錄輸出:
SELECT * FROM hx_9enjoy WHERE id < 100 INTO OUTFILE '/tmp/9enjoy_100.txt'
還原:LOAD DATA INFILE
默認情況:
LOAD DATA INFILE '/tmp/9enjoy.txt' INTO TABLE hx_9enjoy
如果有指定界定符,則加上界定符的說明:
LOAD DATA INFILE '/tmp/9enjoy.txt' INTO TABLE hx_9enjoy FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'
注意事項
1.mysql必須要有權限訪問生成文件的那個目錄
2.由于安全方面的原因,不能覆蓋已存在的文件,不管這個文件的權限是怎么分配的。
3.不能直接導出一個壓縮文件。
關健詞:備份,還原,數據庫
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解