服務(wù)項(xiàng)目:網(wǎng)站建設(shè)、仿站、程序開發(fā)、APP開發(fā)設(shè)計(jì)、移動網(wǎng)站開發(fā)設(shè)計(jì)、企業(yè)網(wǎng)站設(shè)計(jì)、電子商務(wù)網(wǎng)站開發(fā)、網(wǎng)站維護(hù)、網(wǎng)站推廣、UX/UI 、HTML5、CSS3、JS / Jquery ...
四川浚??萍加邢薰?></a></div>
                    <div   id=四川???萍加邢薰? title=
四川浚??萍加邢薰?(開發(fā)設(shè)計(jì)官網(wǎng))TEL : 15308000360 / QQ : 38585404

您的位置:首頁 > 技術(shù)經(jīng)驗(yàn) > 數(shù)據(jù)庫 > 正文

MYSQL 數(shù)據(jù)庫導(dǎo)入導(dǎo)出命令
技術(shù)支持服務(wù)電話:15308000360 【7x24提供運(yùn)維服務(wù),解決各類系統(tǒng)/軟硬件疑難技術(shù)問題】

在不同操作系統(tǒng)或MySQL版本情況下,直接拷貝文件的方法可能會有不兼容的情況發(fā)生。所以一般推薦用SQL腳本形式導(dǎo)入。下面分別介紹兩種方法。
備份數(shù)據(jù)庫:
進(jìn)入cmd
導(dǎo)出所有數(shù)據(jù)庫:輸入:mysqldump -u [數(shù)據(jù)庫用戶名] -p -A>[備份文件的保存路徑]

導(dǎo)出數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu):輸入:mysqldump -u [數(shù)據(jù)庫用戶名] -p [要備份的數(shù)據(jù)庫名稱]>[備份文件的保存路徑]
例子:mysqldump -u root -p test>d:\test.sql
注意:此備份只備份數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu),沒有備份存儲過程和觸發(fā)器

只導(dǎo)出數(shù)據(jù)不導(dǎo)出數(shù)據(jù)結(jié)構(gòu):輸入:mysqldump -u [數(shù)據(jù)庫用戶名] -p -t [要備份的數(shù)據(jù)庫名稱]>[備份文件的保存路徑]

導(dǎo)出數(shù)據(jù)庫中的Events
輸入:mysqldump -u [數(shù)據(jù)庫用戶名] -p -E [數(shù)據(jù)庫用戶名]>[備份文件的保存路徑]

導(dǎo)出數(shù)據(jù)庫中的存儲過程和函數(shù)
mysqldump -u [數(shù)據(jù)庫用戶名] -p -R [數(shù)據(jù)庫用戶名]>[備份文件的保存路徑]

導(dǎo)入數(shù)據(jù)庫
mysql -u root -p<[備份文件的保存路徑] 疑問

恢復(fù)備份文件:
進(jìn)入MYSQL Command Line Client
先創(chuàng)建數(shù)據(jù)庫:create database test 注:test是創(chuàng)建數(shù)據(jù)庫的名稱
再切換到當(dāng)前數(shù)據(jù)庫:use test
再輸入:\. d:/test.sql 或 souce d:/test.sql

1. 概述
MySQL數(shù)據(jù)庫的導(dǎo)入,有兩種方法:

1) 先導(dǎo)出數(shù)據(jù)庫SQL腳本,再導(dǎo)入;
2) 直接拷貝數(shù)據(jù)庫目錄和文件。

在不同操作系統(tǒng)或MySQL版本情況下,直接拷貝文件的方法可能會有不兼容的情況發(fā)生。
所以一般推薦用SQL腳本形式導(dǎo)入。下面分別介紹兩種方法。

2. 方法一 SQL腳本形式
操作步驟如下:
2.1. 導(dǎo)出SQL腳本
在原數(shù)據(jù)庫服務(wù)器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位于mysql/bin/目錄中)命令行,導(dǎo)出SQL腳本。
2.1.1 用phpMyAdmin工具
導(dǎo)出選項(xiàng)中,選擇導(dǎo)出“結(jié)構(gòu)”和“數(shù)據(jù)”,不要添加“Drop DATABASE”和“Drop TABLE”選項(xiàng)。
選中“另存為文件”選項(xiàng),如果數(shù)據(jù)比較多,可以選中“gzipped”選項(xiàng)。
將導(dǎo)出的SQL文件保存下來。

2.1.2 用mysqldump命令行
命令格式
mysqldump -u用戶名 -p 數(shù)據(jù)庫名 > 數(shù)據(jù)庫名.sql
范例:
mysqldump -uroot -p abc > abc.sql
(導(dǎo)出數(shù)據(jù)庫abc到abc.sql文件)

提示輸入密碼時,輸入該數(shù)據(jù)庫用戶名的密碼。

2.2. 創(chuàng)建空的數(shù)據(jù)庫
通過主控界面/控制面板,創(chuàng)建一個數(shù)據(jù)庫。假設(shè)數(shù)據(jù)庫名為abc,數(shù)據(jù)庫全權(quán)用戶為abc_f。

2.3. 將SQL腳本導(dǎo)入執(zhí)行
同樣是兩種方法,一種用phpMyAdmin(mysql數(shù)據(jù)庫管理)工具,或者mysql命令行。
2.3.1 用phpMyAdmin工具
從控制面板,選擇創(chuàng)建的空數(shù)據(jù)庫,點(diǎn)“管理”,進(jìn)入管理工具頁面。
在"SQL"菜單中,瀏覽選擇剛才導(dǎo)出的SQL文件,點(diǎn)擊“執(zhí)行”以上載并執(zhí)行。

注意:phpMyAdmin對上載的文件大小有限制,php本身對上載文件大小也有限制,如果原始sql文件
比較大,可以先用gzip對它進(jìn)行壓縮,對于sql文件這樣的文本文件,可獲得1:5或更高的壓縮率。
gzip使用方法:
# gzip xxxxx.sql
得到
xxxxx.sql.gz文件。

2.3.2 用mysql命令行
命令格式
mysql -u用戶名 -p 數(shù)據(jù)庫名 < 數(shù)據(jù)庫名.sql
范例:
mysql -uabc_f -p abc < abc.sql
(導(dǎo)入數(shù)據(jù)庫abc從abc.sql文件)

提示輸入密碼時,輸入該數(shù)據(jù)庫用戶名的密碼。

3 方法二 直接拷貝
如果數(shù)據(jù)庫比較大,可以考慮用直接拷貝的方法,但不同版本和操作系統(tǒng)之間可能不兼容,要慎用。
3.1 準(zhǔn)備原始文件
用tar打包為一個文件

3.2 創(chuàng)建空數(shù)據(jù)庫

3.3 解壓
在臨時目錄中解壓,如:
cd /tmp
tar zxf mydb.tar.gz

3.4 拷貝
將解壓后的數(shù)據(jù)庫文件拷貝到相關(guān)目錄
cd mydb/
cp * /var/lib/mysql/mydb/

對于FreeBSD:
cp * /var/db/mysql/mydb/

3.5 權(quán)限設(shè)置
將拷貝過去的文件的屬主改為mysql:mysql,權(quán)限改為660
chown mysql:mysql /var/lib/mysql/mydb/*
chmod 660 /var/lib/mysql/mydb/* 



上一篇:MySQL數(shù)據(jù)庫備份與恢復(fù)方法
下一篇:MySQL日期數(shù)據(jù)類型、時間類型使用總結(jié)

相關(guān)熱詞搜索:mysql 數(shù)據(jù)庫