萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL中大數據庫的導出和導入

MySQL中大數據庫的導出和導入

在mysql要導入超大數據庫我們如果有服務管理權限直接在mysql data目錄下載把你要復制的數據打包,然後放到要導入的data目錄下即可,但是如果沒有這個權限我們只能按下面方法操作了。

 

這時用MySQL的原生工具就能很好地解決這些問題了。

總記錄數: 1016126, 每行平均大小 46822


假設我們要對一個名為blog的數據庫進行導出和導入的操作

導出:

mysqldump -u數據庫用戶名 -p密碼 blog > 路徑/導出名.sql

 代碼如下 復制代碼

方法: mysqldump -t -n --default-character-set=latin1 test yejr > /backup/yejr.sql

耗時: 2124 sec


具體的操作是這樣的,打開命令提示符(這裡都以Windows系統為例),進入mysql安裝所在目錄中的bin文件夾(因為我的mysql沒有安裝為本地服務,所以要進行這一步),最後輸入運行上面的那條命令即可。

導入:

mysql -u數據庫用戶名 -p密碼 blog < 路徑/數據庫名.sql

 代碼如下 復制代碼

方法: mysql test < /backup/yejr.sql

上面的方法感覺在性能上還是可以優化的,後來我們再嘗試一下利用outfile

導出成文本

 代碼如下 復制代碼

方法: SELECT * INTO OUTFILE '/backup/yejr.txt' FROM yejr;

耗時: 3252.15 秒


操作如上,用命令提示符進入bin文件夾後,輸入運行該命令即可。

結論:

1. 用 load data 是較快的方法

2. 大數據量情況下, 最好是創建好表之後, 同時也要創建好相關的索引. 雖然說沒有索引時導入更快, 但是數據導入完成之後再創建索引總共的耗時比事先創建好了再導入要來的多多了.

copyright © 萬盛學電腦網 all rights reserved