Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- curl -O http://geolite.maxmind.com/download/geoip/database/GeoLiteCity_CSV/GeoLiteCity-latest.zip
- unzip -j GeoLiteCity-latest.zip
- */
- drop table if exists geoipci1;
- CREATE TABLE geoipci1 (
- i1 INT(10) UNSIGNED NOT NULL primary key,
- i2 INT(10) UNSIGNED NOT NULL,
- loc MEDIUMINT(6) UNSIGNED NOT NULL,
- index loc(loc)
- )
- ENGINE=MyISAM;
- truncate table geoipci1;
- load data infile '/tmp/GeoLiteCity-Blocks.csv' into table geoipci1
- FIELDS TERMINATED BY ','
- OPTIONALLY ENCLOSED BY '"'
- LINES TERMINATED BY '\n'
- IGNORE 2 lines
- (i1,i2,loc);
- drop table if exists geoipci2;
- CREATE TABLE geoipci2 (
- locId MEDIUMINT(6) UNSIGNED NOT NULL primary key,
- cc ENUM('A1','A2','AD','AE','AF','AG','AI','AL','AM','AN','AO','AP','AQ','AR','AS','AT','AU','AW','AX','AZ','BA','BB','BD','BE','BF','BG','BH','BI','BJ','BL','BM','BN','BO','BQ','BR','BS','BT','BV','BW','BY','BZ','CA','CC','CD','CF','CG','CH','CI','CK','CL','CM','CN','CO','CR','CU','CV','CW','CX','CY','CZ','DE','DJ','DK','DM','DO','DZ','EC','EE','EG','EH','ER','ES','ET','EU','FI','FJ','FK','FM','FO','FR','GA','GB','GD','GE','GF','GG','GH','GI','GL','GM','GN','GP','GQ','GR','GS','GT','GU','GW','GY','HK','HM','HN','HR','HT','HU','ID','IE','IL','IM','IN','IO','IQ','IR','IS','IT','JE','JM','JO','JP','KE','KG','KH','KI','KM','KN','KP','KR','KW','KY','KZ','LA','LB','LC','LI','LK','LR','LS','LT','LU','LV','LY','MA','MC','MD','ME','MF','MG','MH','MK','ML','MM','MN','MO','MP','MQ','MR','MS','MT','MU','MV','MW','MX','MY','MZ','NA','NC','NE','NF','NG','NI','NL','NO','NP','NR','NU','NZ','O1','OM','PA','PE','PF','PG','PH','PK','PL','PM','PN','PR','PS','PT','PW','PY','QA','RE','RO','RS','RU','RW','SA','SB','SC','SD','SE','SG','SH','SI','SJ','SK','SL','SM','SN','SO','SR','SS','ST','SV','SX','SY','SZ','TC','TD','TF','TG','TH','TJ','TK','TL','TM','TN','TO','TR','TT','TV','TW','TZ','UA','UG','UM','US','UY','UZ','VA','VC','VE','VG','VI','VN','VU','WF','WS','YE','YT','ZA','ZM','ZW') NOT NULL,
- region varchar(2),
- city varchar(50),
- postalCode varchar(8),
- lat float,
- lon float,
- metroCode varchar(3),
- areaCode varchar(3),
- index cc (cc)
- )
- ENGINE=MyISAM;
- truncate table geoipci2;
- load data infile '/tmp/GeoLiteCity-Location.csv' into table geoipci2
- FIELDS TERMINATED BY ','
- OPTIONALLY ENCLOSED BY '"'
- LINES TERMINATED BY '\n'
- IGNORE 2 lines
- (locId,cc,region,city,postalCode,lat,lon,metroCode,areaCode);
- drop view if exists geoipci;
- create view geoipci as
- select i1,i2,loc,cc,region,city,lat,lon,postalCode,metroCode,areaCode from geoipci1 inner join geoipci2 on geoipci1.loc=geoipci2.locid;
- optimize table geoipci1;
- optimize table geoipci2;
- -- select *,inet_ntoa(i1)ip1,inet_ntoa(i2)ip2 from geoipci where inet_aton('8.8.4.4') >=i1 order by i1 desc limit 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement