萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL導入導出數據庫方法介紹

MySQL導入導出數據庫方法介紹

我們都知道不管是在於windows系統還是在linux環境中MySQL數據庫的導入分為有兩種1) 先導出數據庫SQL腳本,再導入;2) 直接拷貝數據庫目錄和文件。

操作方法


1,進入MySQL目錄下的bin文件夾:cd MySQL中到bin文件夾的目錄
如我輸入的命令行:cd C:Program FilesMySQLMySQL Server 4.1bin
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;

1.導出整個數據庫

 代碼如下 復制代碼   mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql

2.導出一個表
 

 代碼如下 復制代碼  mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

3.導出一個數據庫結構
 

 代碼如下 復制代碼

 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
  -d 沒有數據 --add-drop-table 在每個create語句之前增加一個drop table

導入數據庫

常用source 命令
  進入mysql數據庫控制台,
如mysql -u root -p
  mysql>use 數據庫
然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)
mysql>source d:wcnc_db.sql

Linux下:

2. 方法一 SQL腳本形式
操作步驟如下:
2.1. 導出SQL腳本
在原數據庫服務器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位於mysql/bin/目錄中)命令行,導出SQL腳本。
2.1.1 用phpMyAdmin工具
導出選項中,選擇導出“結構”和“數據”,不要添加“DROP DATABASE”和“DROP TABLE”選項。
選中“另存為文件”選項,如果數據比較多,可以選中“gzipped”選項。
將導出的SQL文件保存下來。
2.1.2 用mysqldump命令行
命令格式
mysqldump -u用戶名 -p 數據庫名 > 數據庫名.sql
范例:
mysqldump -uroot -p abc > abc.sql
(導出數據庫abc到abc.sql文件)
提示輸入密碼時,輸入該數據庫用戶名的密碼。
2.2. 創建空的數據庫
通過主控界面/控制面板,創建一個數據庫。假設數據庫名為abc,數據庫全權用戶為abc_f。
2.3. 將SQL腳本導入執行
同樣是兩種方法,一種用phpMyAdmin(mysql數據庫管理)工具,或者mysql命令行。
2.3.1 用phpMyAdmin工具
從控制面板,選擇創建的空數據庫,點“管理”,進入管理工具頁面。
在”SQL”菜單中,浏覽選擇剛才導出的SQL文件,點擊“執行”以上載並執行。
注意:phpMyAdmin對上載的文件大小有限制,php本身對上載文件大小也有限制,如果原始sql文件
比較大,可以先用gzip對它進行壓縮,對於sql文件這樣的文本文件,可獲得1:5或更高的壓縮率。
gzip使用方法:
# gzip xxxxx.sql
得到
xxxxx.sql.gz文件。
2.3.2 用mysql命令行
命令格式
mysql -u用戶名 -p 數據庫名 < 數據庫名.sql
范例:
mysql -uabc_f -p abc < abc.sql
(導入數據庫abc從abc.sql文件)
提示輸入密碼時,輸入該數據庫用戶名的密碼。
3 方法二 直接拷貝
如果數據庫比較大,可以考慮用直接拷貝的方法,但不同版本和操作系統之間可能不兼容,要慎用。
3.1 准備原始文件
用tar打包為一個文件
3.2 創建空數據庫
3.3 解壓
在臨時目錄中解壓,如:
cd /tmp
tar zxf mydb.tar.gz
3.4 拷貝
將解壓後的數據庫文件拷貝到相關目錄
cd mydb/
cp * /var/lib/mysql/mydb/
對於FreeBSD:
cp * /var/db/mysql/mydb/
3.5 權限設置
將拷貝過去的文件的屬主改為mysql:mysql,權限改為660

 代碼如下 復制代碼 chown mysql:mysql /var/lib/mysql/mydb/*
chmod 660 /var/lib/mysql/mydb/*

把mysqldump出來的數據修改一下。除了要把表增加上) TYPE=MyISAM CHARACTER SET gbk;以外,在下面再增加一句SET NAMES GBK;
這樣,數據就可以平滑的導入4.1了,而不必怕出現亂碼。


Windows下:

DOS 窗口
開始->運行-> cmd
導出為: mysqldump -u 用戶名 -p   –opt   數據庫用戶名 > 數據庫名.sql
輸入你的數據庫密碼!
導入為:mysql -u 用戶名 -p 數據庫用戶名 < 數據庫名.sql (要在當前目錄下操作)

copyright © 萬盛學電腦網 all rights reserved