一般的數據備份用 :mysql路徑+bin/mysqldump -u 用戶名 -p 數據庫名 導出的文件名
成都創新互聯是一家專業提供寧都企業網站建設,專注與成都網站建設、網站制作、HTML5建站、小程序制作等業務。10年已為寧都眾多企業、政府機構等服務。創新互聯專業網站制作公司優惠進行中。
數據還原是:到mysql命令行下面,用:source ? 文件名;的方法。
但是這種方法對大數據量的表進行操作就非常慢。因為他不僅導出了數據還導出了表結構。
在針對大數據量的表時,我們可以用infile和 outfile來操作。
outfile導出數據庫數據的用法:
下圖我們可以看到6百多萬數據35秒就搞定了:
下面我們看看infile的語法:
在infile導入數據的時候,我們還可以做一些優化。我們可以用
alter table table_name disable keys ? 關閉普通索引。等數據導入玩,再用:
alter table table_name enable keys ? ?來開啟普通索引。這樣就不會邊導入數據,邊整理索引的二叉樹兒影響導數據的效率。
如果可以保證 數據的正確性,我們可以將表的唯一索引也關閉,之后再開啟,不是每條數據就算是唯一的他都要去檢測一遍。命令:
set unique_checks=0;?#關閉唯一校驗
set unique_checks=1;#開啟唯一校驗
如果是InnoDB存儲引擎,我們還可以set auto commit=0;關閉自動提交,來提高效率。InnoDB是按主鍵的順序保存的,我們將其主鍵順序排列也可以提高效率。
下面我們對myisam引擎的表做個測試,我們先不關索引,導入數據(用了近4分鐘):
然后我們先把索引關閉試試(只用了一分鐘多一點,快了不少啊!摸摸大!):
1、首先已管理員身份(通過win+r)進入命令提示符
2、先進入MYSQL安裝目錄,以我的為例:d:/wamp/bin/mysql/mysql5.5.20/bin 進入該目錄的bin目錄下,該目錄下有個mysql.exe 文件
mysql 導入超大文件到數據庫 - queen - 安然
3、為了保證一次性通過,可以先測試一下數據庫的是否連接成功 mysql -u root -p (數據庫有密碼的寫上密碼);再測試一下訪問的數據庫是否能訪問 mysql -u root -p (數據庫有密碼的寫上密碼) craft(這個就是數據庫的名稱);我第二次導入時遇到一個問題,就是我測試數據庫連接成功后,直接又測試數據庫是否能夠訪問,出現錯誤
mysql 導入超大文件到數據庫 - queen - 安然
我檢查了一遍命令沒發現錯誤啊,沒辦法了,問我領導,人家三下五除二就搞定了,問了才知道,所有的命令都應該在
mysql 導入超大文件到數據庫 - queen - 安然
下執行,包括測試數據庫是否連接成功,數據庫是否能訪問和最后的數據庫導入,我的錯誤就是在檢查了數據庫是否連接成功后就進入mysql里,沒有退出來。好吧,又記了一遍。
4、如果上面的操作沒有問題,下一步就進行數據導入操作
mysql -u root -p (數據庫有密碼的寫上密碼) craft d:/craft.sql
導入過程可能會由于其他原因導致錯誤,我遇到的是在導入過程中可能由于編碼的原因出現錯誤,所以,可以再加上點內容 mysql -u root -p --default-character-set=utf8 craft d:/craft.sql,敲回車后,出現輸入密碼提示,如果數據庫設置密碼,就可以輸入密碼后再打回車,直到導入操作完成
mysql 導入超大文件到數據庫 - queen - 安然
注意:這樣就完成了導入,不過中間還可能出現的問題就是要導入文件的權限問題,要保證你所登錄的身份有對文件的寫操作,所以為了防止萬一,我們可以將文件的所有權限都打開:選中文件,點右鍵,選擇屬性,選“安全”選項卡,選中你登錄的角色,點“編輯”,選中“允許”下面的“完全控制”,點擊確定。
通過導入文件的方式插入,文件可以用其他方式先生成,比如使用java,來生成data1.txt,然后使用下面的sql語句:
load data local infile 'd:/data1.txt' replace into table hk_acinfo lines terminated by '\\r\\n'
使用這個方法,我插入過1千萬以上的數據,如果沒有網絡影響的話,每秒1M+/s的速度寫入,很快的
在phpMyAdmin目錄下,在根目錄找到config.inc.php文件,如果沒有config.inc.php文件,可以將根目錄中的config.sample.inc.php文件復制一份,重命名為config.inc.php,保存即可!如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
接著用Notepad++打開config.inc.php文件,查找代碼
$cfg['UploadDir'] = '';
這個參數就是設定導入大的SQL文件存放的目錄,這里把值設定為:ImportBigSQL,代碼為:
$cfg['UploadDir'] = 'ImportBigSQL';
然后保存文件,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
接著我們在phpMyAdmin目錄下,建立以ImportBigSQL命名的文件夾,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
把我們需要導入的SQL數據庫文件,放到ImportBigSQL文件夾下面,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
登入phpMyAdmin,選擇需要導入的MySQL數據文件,點擊導航條上面的“導入”按鈕,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
選中“從網站服務器上傳文件夾 ImportBigSQL/ 中選擇:”選項,并選擇需要導入的SQL數據文件,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
最后點擊“執行”,導入需要的大的SQL數據文件,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
經過一段時間,phpMyAdmin顯示我們需要導入的SQL文件,導入成功,我們需要導入的大的SQL文件以及導入成功了,可以測試下網站,是否可以訪問了,如圖所示:
使用phpMyAdmin導入大的SQL文件到MySQL數據庫
END
注意事項
如果在config.inc.php文件,沒有找到 $cfg['UploadDir'] = ''; 可以自己在文件中添加上去,并填上相應的參數。
參數值ImportBigSQL可以自己設定,不過phpMyAdmin創建的文件夾名稱要跟設定的參數值一樣。
經驗內容僅供參考,如果您需解決具體問題
導入mysql最快的方法:可以用infile語句來操作導入數據。MySQL是一個關系型數據庫管理系統,由瑞典MySQLAB公司開發,目前屬于Oracle旗下產品。MySQL是最流行的關系型數據庫管理系統之一,在WEB應用方面,MySQL是最好的rdbms應用軟件之一。
更多關于如何導入mysql最快,進入:查看更多內容
網站欄目:mysql怎么載入數據快 mysql快速導入數據
鏈接分享:http://vcdvsql.cn/article0/hhheio.html
成都網站建設公司_創新互聯,為您提供網站排名、全網營銷推廣、建站公司、網站策劃、靜態網站、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯