MYSQL資料匯入匯出

來源:互聯網
上載者:User

標籤:ar   使用   sp   strong   檔案   資料   div   on   bs   

在不同作業系統或MySQL版本情況下,直接拷貝檔案的方法可能會有不相容的情況發生。所以一般推薦用SQL指令碼形式匯入。下面分別介紹兩種方法。進入cmd 
匯出所有資料庫:輸入:mysqldump -u [資料庫使用者名稱] -p -A>[備份檔案的儲存路徑] 

匯出資料和資料結構:輸入:mysqldump -u [資料庫使用者名稱] -p [要備份的資料庫名稱]>[備份檔案的儲存路徑] 匯出資料庫中的某各表: 輸入: mysqldump -u [資料庫使用者名稱] -p [要備份的資料庫名稱] [要備份的資料表]
例子:mysqldump -u root -p test>d:\test.sql 
注意:此備份只備份資料和資料結構,沒有備份預存程序和觸發器 

只匯出資料不匯出資料結構:輸入:mysqldump -u [資料庫使用者名稱] -p -t [要備份的資料庫名稱]>[備份檔案的儲存路徑]   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

匯出資料庫中的Events 
輸入:mysqldump -u [資料庫使用者名稱] -p -E [資料庫使用者名稱]>[備份檔案的儲存路徑] 

匯出資料庫中的預存程序和函數 
mysqldump -u [資料庫使用者名稱] -p -R [資料庫使用者名稱]>[備份檔案的儲存路徑] 

匯入資料庫 
mysql -u root -p<[備份檔案的儲存路徑] 疑問 

恢複備份檔案: 
進入MYSQL Command Line Client (進入mysql命令介面)
先建立資料庫:create database test 註:test是建立資料庫的名稱 
再切換到當前資料庫:use test 
再輸入: souce d:/test.sql 

1. 概述 
MySQL資料庫的匯入,有兩種方法: 
1) 先匯出資料庫SQL指令碼,再匯入; 
2) 直接拷貝資料庫目錄和檔案。 

在不同作業系統或MySQL版本情況下,直接拷貝檔案的方法可能會有不相容的情況發生。 
所以一般推薦用SQL指令碼形式匯入。下面分別介紹兩種方法。 

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/*

MYSQL資料匯入匯出

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.