文章目錄
- 2.1.1 用phpMyAdmin工具
- 2.1.2 用mysqldump命令列
- 2.3.1 用phpMyAdmin工具
- 2.3.2 用mysql命令列
1. 概述
MySQL資料庫的匯入,有兩種方法:
1) 先匯出資料庫SQL指令碼,再匯入;
2) 直接拷貝資料庫目錄和檔案。
在不同作業系統或MySQL版本情況下,直接拷貝檔案的方法可能會有不相容的情況發生。
所以一般推薦用SQL指令碼形式匯入。下面分別介紹兩種方法。
2. 方法一 SQL指令碼形式
操作步驟如下:
2.1. 匯出SQL指令碼
在原資料庫伺服器上,可以用phpMyAdmin工具,或者mysqldump命令列,匯出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/*
來源:http://echoright.blog.sohu.com/129835203.html