① mysql怎麼導入和導出資料庫文件
附加資料庫
或者導入資料庫
sql本身有數據導入的操作。但如果要從一個備份的文件中導入數據,則要進行另外的操作。下面以一個例子進行說明。
sql伺服器上已有一個doe資料庫,並且裡面有大量的數據,現准備從另外一個備份文件a1.bak(不是doe資料庫的備份文件)中導入另外的數據(即導入後在doe中增加一些數據表,表中已錄有數據),並保持原doe的數據不變。
1、首先,在「sql企業管理器」中新建一個臨時資料庫a1。
2、右擊a1資料庫,選擇:所有任務->還原資料庫。
3、在「還原資料庫」窗口中,選擇:「從設備」。
4、點擊「選擇設備」。
5、點擊「添加」。
6、從文件名中選擇要還原的資料庫文件,如a1.bak。
7、點擊「確定」,返回「還原資料庫」窗口。
8、點擊「選項」卡,進入選項設置。
9、鉤選:「在現有資料庫上強制還原」。
10、修改「移到物理文件名」為:「c:\a1.ldf」、「c:\a1.mdf」。
11、點確定,即可導入備份文件中的數據到臨時資料庫a1中。
12、此時,你可以將數據從a1導入到另外一真正要導入的資料庫中,如doe資料庫。
(下面的數據導入操作為sql2000企業管理器的一般數據導入導出操作。)
13、在「sql企業管理器」中選擇「doe」資料庫。
14、右擊doe資料庫,選擇:所有任務->導入數據。
15、在「dts導入/導出向導」窗口的「選擇數據源」中,數據源選擇剛才建立並導入數據的臨時資料庫a1。點擊下一步。
16、在「選擇目的」中,系統已經默認為doe資料庫。
17、連續點擊「下一步」,直到完成。
經過上面的操作,你已經成功地將備份文件a1.bak中數據導入doe資料庫中,並且doe資料庫原有數據不變。
此時,你可以刪除臨時資料庫a1。
② 如何導入mysql資料庫
MySQL資料庫的導入,有兩種方法:
1) 先導出資料庫SQL腳本,再導入;
2) 直接拷貝資料庫目錄和文件。
在不同操作系統或MySQL版本情況下,直接拷貝文件的方法可能會有不兼容的情況發生。
所以一般推薦用SQL腳本形式導入。下面分別介紹兩種方法。
2. 方法一 SQL腳本形式
操作步驟如下:
2.1. 導出SQL腳本
在原資料庫伺服器上,可以用phpMyAdmin工具,或者mysqlmp命令行,導出SQL腳本。
2.1.1 用phpMyAdmin工具
導出選項中,選擇導出「結構」和「數據」,不要添加「DROP DATABASE」和「DROP TABLE」選項。
選中「另存為文件」選項,如果數據比較多,可以選中「gzipped」選項。
將導出的SQL文件保存下來。
2.1.2 用mysqlmp命令行
命令格式
mysqlmp -u用戶名 -p 資料庫名 > 資料庫名.sql
範例:
mysqlmp -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文件。
提示輸入密碼時,輸入該資料庫用戶名的密碼。
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/*
打字不易,如滿意,望採納。