在實(shí)際工作中,有時(shí)經(jīng)常地時(shí)行mysql數(shù)據(jù)庫(kù)的導(dǎo)入和導(dǎo)入操作,但對(duì)于大型sql文件導(dǎo)入時(shí),phpmyadmin是不行的,有太多限制,比如記錄,內(nèi)存等!

創(chuàng)新互聯(lián)公司專(zhuān)注于企業(yè)全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、安康網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為安康等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
比較好的辦法仍是用mysql的source命令:
一、在客戶端下操作:
1、進(jìn)行入客戶端
2、mysqluse
數(shù)據(jù)庫(kù)名(如果沒(méi)有,先建一個(gè))
3、mysqlset
names
'utf8';
(一般看導(dǎo)入的是什么格式的文件)
4、mysqlsource
d:\aaa.sql;
即可正常導(dǎo)入,如果有錯(cuò),可以看出錯(cuò)提示
二、PHP文件操作:
建立a.php
里面有下面內(nèi)容
mysql_connet('xxxx');
mysql_query("set
names
'utf8'");
mysql_query("source
d:\aaa.sql'");
原理同上,主要方便了無(wú)法使用命令行用戶的操作
第一步:打在開(kāi)始界面中找到mysql
第二步:雙擊打開(kāi)mysql軟件。,并輸入密碼。
第三步:如果sql文件的內(nèi)容中有創(chuàng)建數(shù)據(jù)庫(kù)的語(yǔ)句或者你想將表存放在你已有的數(shù)據(jù)庫(kù),在這里就不用創(chuàng)建數(shù)據(jù)庫(kù)。
第四步:輸入“show databases;”就能看到自己創(chuàng)建的數(shù)據(jù)庫(kù)。
第五步:輸入“use 數(shù)據(jù)庫(kù)名”,開(kāi)始使用這個(gè)數(shù)據(jù)庫(kù)。
第六步:開(kāi)始導(dǎo)入sql文件,輸入“source sql文件的路徑”(注意你的文件路徑要是復(fù)制來(lái)的,要將"\"全部換成“/”)
第七步:輸入“show tables”,你就會(huì)看到你導(dǎo)入的表了。
方法如下,舉例說(shuō)明:
1、創(chuàng)建測(cè)試表,即為要被導(dǎo)入的表:
create table person(
id int not null auto_increment,
name varchar(40) not null,
city varchar(20),
salary int,
primary key(id)
)engine=innodb charset=gb2312;
2、接著寫(xiě)一個(gè)用于導(dǎo)入的文本文件:c:\data.txt。
張三
31
北京
3000
李四
25
杭州
4000
王五
45
\N
4500
小明
29
天津
\N
每一項(xiàng)之間用Tab鍵進(jìn)行分隔,如果該字段為NULL,則用\N表示。
3、導(dǎo)入數(shù)據(jù)
輸入命令,進(jìn)行導(dǎo)入。
load
data
local
infile
“c:/data.txt”
into
table
person(name,age,city,salary);
導(dǎo)入數(shù)據(jù)截圖如下:
其中l(wèi)ocal表示本地。執(zhí)行后,可以看到NULL數(shù)據(jù)也被正確地導(dǎo)入。
1、在MySQL數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)用戶表user,包含三個(gè)最基礎(chǔ)字段:主鍵id,姓名name和年齡age。
CREATE TABLE USER(id INT UNSIGNED NOT NULL AUTO_INCREMENT,name VARCHAR(32) NOT NULL,age tinyint UNSIGNED,PRIMARY KEY (id))ENGINE=InnoDB CHARSET=utf8;
2、制作一個(gè)user.txt文件,每一條內(nèi)容用Tab鍵進(jìn)行分隔不同的屬性,多條換行。如果該字段為NULL,則用/N表示。 里面包含內(nèi)容如下:
雷雪松 31
raykaeso 25leixuesong 45barbie /N
3、使用MySQL命令導(dǎo)入txt文本,指定本地路徑和對(duì)應(yīng)表中的字段。
LOAD DATA LOCAL INFILE "H:/user.txt" INTO TABLE USER(name,age);
mysql在linux命令行下導(dǎo)入txt文件
mysql導(dǎo)入txt的命令如下
但如果在終端中通過(guò)
登陸的話,輸入以上命令會(huì)報(bào)錯(cuò):
ERROR 1148 (42000): The used command is not allowed with this MySQL version
大家不要被報(bào)錯(cuò)的表面翻譯給誤導(dǎo)了,這其實(shí)是個(gè)權(quán)限問(wèn)題,解決方法如下
在通過(guò)終端輸入時(shí),加上一個(gè)參數(shù)--local-infile = 1 詳細(xì)解釋請(qǐng)自行百度。
用下面語(yǔ)句登陸后再進(jìn)行導(dǎo)入,就成功了
mysqlimport方法導(dǎo)入文件:
其實(shí)無(wú)論是load data還是mysqlimport,導(dǎo)入是事務(wù),如果不是則設(shè)置引擎支持事務(wù)。
如何解決大文件導(dǎo)入?當(dāng)有十幾甚至幾十G文件需要導(dǎo)入時(shí),因?yàn)閷?dǎo)入中間可能會(huì)失敗,如果一次性導(dǎo)入,導(dǎo)入失敗會(huì)導(dǎo)致回滾,代價(jià)太高,從幾十G文件中尋找問(wèn)題也是很頭疼的事情。因此,需要先將大文件拆成小文件,比如split命令,按2萬(wàn)行一個(gè)單位拆成小文件,以后綴編號(hào)區(qū)分,編寫(xiě)腳本進(jìn)行自動(dòng)導(dǎo)入。如果發(fā)生的錯(cuò)誤,只需要從小文件中定位問(wèn)題即可。然后重啟導(dǎo)入腳本。
在MySQL Qurey Brower中直接導(dǎo)入*.sql腳本,是不能一次執(zhí)行多條sql命令的,在mysql中執(zhí)行sql文件的命令:
mysql source d:/myprogram/database/db.sql;
另附mysql常用命令:
一) 連接MYSQL:
格式: mysql -h主機(jī)地址 -u用戶名 -p用戶密碼
1、例1:連接到本機(jī)上的MYSQL
首先在打開(kāi)DOS窗口,然后進(jìn)入mysql安裝目錄下的bin目錄下,例如: D:/mysql/bin,再鍵入命令mysql -uroot -p,回車(chē)后提示你輸密碼,如果剛安裝好MYSQL,超級(jí)用戶root是沒(méi)有密碼的,故直接回車(chē)即可進(jìn)入到MYSQL中了,MYSQL的提示符是:mysql
2、例2:連接到遠(yuǎn)程主機(jī)上的MYSQL (遠(yuǎn)程:IP地址)
假設(shè)遠(yuǎn)程主機(jī)的IP為:10.0.0.1,用戶名為root,密碼為123。則鍵入以下命令:
mysql -h10.0.0.1 -uroot -p123
(注:u與root可以不用加空格,其它也一樣)
3、退出MYSQL命令
exit (回車(chē))
(二) 修改密碼:
當(dāng)前題目:mysql怎么導(dǎo)入文本,數(shù)據(jù)庫(kù)怎么導(dǎo)入文本
本文來(lái)源:http://chinadenli.net/article4/dsijgie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、App開(kāi)發(fā)、網(wǎng)頁(yè)設(shè)計(jì)公司、響應(yīng)式網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)