免編程,3步搞定純真ip數(shù)據(jù)導(dǎo)入到MySQL詳解
作者: dawoniu.com
前提: 你會(huì)用vi。 很明顯,本文是在linux下測試通過的。本文用的是MySQL命令行工具,如果你不會(huì),用phpMyAdmin應(yīng)該也可以。
第1步: 下載純真IP數(shù)據(jù),解壓存成ip.txt。
詳解:這一步不用詳解了吧。如果你這一步都不會(huì),下面就不用看了。
第2步: 用vi 編輯 ip.txt。
# vi ip.txt
在vi界面下輸入如下命令:
:%s//s/+/;/
一共重復(fù)輸入3次。
存盤退出:
:wq
詳解:ip.txt有4列。分別是起始ip,結(jié)束ip,地區(qū),說明。列之間用不等數(shù)量的空格間隔。為了將此文本文件到入到mysql,需要處理掉這些空格。但是只能處理掉前3列的空格,最后一列中的空格要保留。vi中輸入的命令意思是,把每一行第一個(gè)和其連續(xù)的空格替換成字符';'。
%s代表全局搜索替換。/s代表空格。/+代表盡可能多地匹配前面的字符。;代表替換成';'
第3步: 導(dǎo)入MySQL
創(chuàng)建MySQL表
CREATE TABLE `ips` . `ip` ( 
`ip_start` VARCHAR ( 16 ) NOT NULL , 
`ip_end` VARCHAR ( 16 ) NULL , 
`region` VARCHAR ( 128 ) NULL , 
`comments` VARCHAR ( 512 ) NULL 
) ENGINE = MYISAM 
為避免出現(xiàn)亂碼, region和comments字段的Collation設(shè)為gbk_chinese_ci
導(dǎo)入ip.txt到ips數(shù)據(jù)庫的ip表
# mysqlimport -p你的密碼 --local --delete --fields-terminated-by=';'  ips ip.txt
完成!
詳解:mysqlimport可以導(dǎo)入一個(gè)文本文件到數(shù)據(jù)庫的表中。前提是表的名字與文本文件名相同,并且表的字段與文本文件也對應(yīng)起來。
--fields-terminated-by=';' 意思是字段用';'間隔開來。
--delete意思是,如果表已存在,導(dǎo)入前清空表中數(shù)據(jù)。
新聞熱點(diǎn)
疑難解答
圖片精選