程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL用作備份還原的導入和導出命令用法整理,

MySQL用作備份還原的導入和導出命令用法整理,

編輯:MySQL綜合教程

MySQL用作備份還原的導入和導出命令用法整理,


mysqldump
命令行導出數據庫:
1,進入MySQL目錄下的bin文件夾:cd MySQL中到bin文件夾的目錄
如我輸入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin
2,導出數據庫:mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名
如我輸入的命令行:mysqldump -u root -p news > news.sql    (輸入後會讓你輸入進入MySQL的密碼)
(如果導出單張表的話在數據庫名後面輸入表名即可)
3、會看到文件news.sql自動生成到bin文件下
命令行導入數據庫:
1,將要導入的.sql文件移至bin文件下,這樣的路徑比較方便
2,同上面導出的第1步
3,進入MySQL:mysql -u 用戶名 -p
如我輸入的命令行:mysql -u root -p    (輸入同樣後會讓你輸入ySQL的密碼)
4,在MySQL-Front中新建你要建的數據庫,這時是空數據庫,如新建一個名為news的目標數據庫(mysql>create database news;)
5,輸入:mysql>use 目標數據庫名
如我輸入的命令行:mysql>use news;
6,導入文件:mysql>source 導入的文件名;
如我輸入的命令行:mysql>source news.sql;
 
實例:
導出

#> cd /usr/local/src
#> /usr/local/mysql/bin/mysqldump -uroot -p123456 cacti > cacti.sql;

這樣就看到cacti.sql導出到了/usr/local/src/目錄
1.導出整個數據庫

  mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名
  mysqldump -u root -p abc > abc.sql

2.導出一個表

  mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
  mysqldump -u root -p abc users> abc_users.sql

3.導出一個數據庫結構

  mysqldump -u root -p -d --add-drop-table abc >/usr/local/abc_db.sql
  -d 沒有數據 --add-drop-table 在每個create語句之前增加一個drop table

 
導入

#> /usr/local/mysql/bin/mysql -uroot -p
mysql> create database cacti;   新建數據庫名為cacti
mysql> use cacti;              選擇目標數據庫
mysql> source /usr/local/src/cacti.sql   導入數據庫

這樣就導入了cacti.sql文件

load data
(windows系統。。表結構一致的情況下)
命令在DOS的mysql/bin目錄下執行:
導出:

select * from aaa into outfile "e:/a.txt";

導入:

load data local infile "e:/a.txt" into table aaa;

備份: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'

如果db是GBK或utf-8等編碼,需要在還原時指定CHARACTER SET參數,否則還原的數據是亂碼。
如:

load data infile '/tmp/9enjoy.txt' INTO TABLE hx_9enjoy CHARACTER SET gbk;


注意事項
1.mysql必須要有權限訪問生成文件的那個目錄
2.由於安全方面的原因,不能覆蓋已存在的文件,不管這個文件的權限是怎麼分配的。
3.不能直接導出一個壓縮文件。

您可能感興趣的文章:

  • mysql導入導出數據中文亂碼解決方法小結
  • Mysql導入導出工具Mysqldump和Source命令用法詳解
  • MYSQL 數據庫導入導出命令

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved