mysql把資料導入的方法:1.使用「mysql -u使用者名稱 -p密碼 < sql檔案」語句導入資料;2、使用「source sql檔案的路徑」語句導入資料;3、使用mysqlimport匯入資料。
1、mysql 指令匯入
#使用mysql 指令匯入語法格式為:
mysql -u用户名 -p密码 < 要导入的数据库数据sql文件
實例:
# mysql -uroot -p123456 < student.sql
以上指令將將備份的整個資料庫student.sql 匯入。
2、source 指令匯入
source 指令匯入資料庫需要先登入數庫終端:
mysql> create database abc; # 创建数据库 mysql> use abc; # 使用已创建的数据库 mysql> set names utf8; # 设置编码 mysql> source /home/abc/abc.sql # 导入备份数据库
3、使用LOAD DATA導入資料
MySQL 中提供了LOAD DATA INFILE語句來插入資料。以下實例中將從目前目錄讀取檔案 dump.txt ,將該檔案中的資料插入目前資料庫的 mytbl 表中。
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;
如果指定LOCAL關鍵字,則表示從客戶主機上按路徑讀取檔案。如果沒有指定,則檔案在伺服器上按路徑讀取檔案。
你能明確地在LOAD DATA語句中指出列值的分隔符號和行尾標記,但是預設標記是定位符號和換行符號。
兩個指令的 FIELDS 和 LINES 子句的語法是一樣的。兩個子句都是可選的,但是如果兩個同時被指定,FIELDS 子句必須出現在 LINES 子句之前。
如果使用者指定一個 FIELDS 子句,它的子句 (TERMINATED BY、[OPTIONALLY] ENCLOSED BY 和 ESCAPED BY) 也是可選的,不過,使用者必須至少指定它們中的一個。
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl -> FIELDS TERMINATED BY ':' -> LINES TERMINATED BY '\r\n';
LOAD DATA 預設是依照資料檔案中列的順序插入資料的,如果資料檔案中的資料列與插入表中的資料列不一致,則需要指定資料列的順序。
如,在資料檔案中的列順序是a,b,c,但在插入表的列順序為b,c,a,則資料匯入語法如下:
mysql> LOAD DATA LOCAL INFILE 'dump.txt' -> INTO TABLE mytbl (b, c, a);
4、使用mysqlimport 導入資料
mysqlimport 用戶端提供了LOAD DATA INFILEQL 語句的一個命令列介面。 mysqlimport 的大多數選項直接對應 LOAD DATA INFILE 子句。
從檔案dump.txt 中將資料匯入mytbl 資料表, 可以使用下列指令:
$ mysqlimport -u root -p --local mytbl dump.txt password *****
mysqlimport 指令可以指定選項來設定指定格式,指令語句格式如下:
$ mysqlimport -u root -p --local --fields-terminated-by=":" \ --lines-terminated-by="\r\n" mytbl dump.txt password *****
mysqlimport 語句中使用--columns 選項來設定列的順序:
$ mysqlimport -u root -p --local --columns=b,c,a \ mytbl dump.txt password *****
推薦教學:mysql影片教學
以上是mysql怎麼把資料匯入進去的詳細內容。更多資訊請關注PHP中文網其他相關文章!