Details of the IP to City Lite database CSV file downloads
The format used in the IP to City Lite CSV database exports is compliant with the specification in RFC4180 : Common Format and MIME Type for Comma-Separated Values (CSV) Files.
The character encoding is standard Unicode UTF-8.
The IP to City Lite database downloads in the Comma Separated Values format contain the following fields :
Sample row for the IP to City Lite CSV file :
8.8.8.0,8.8.8.255,NA,US,California,"Mountain View",37.4229,-122.085
This packages contains the core DB-IP class, a CSV database import tool, and sample lookup code.
Here are the few steps needed to import a CSV file into your local database instance using the tools above :
The first step is to create a new database table to hold the imported data.
If you are updating an already populated and running database, it is recommended you create a new table and use an atomic rename to switch the old with the new once the import is finished.
This is the MySQL table creation statement for the IP to City Lite lookup table needed by our supported query library and import tool :
CREATE TABLE `dbip_lookup` (
`addr_type` enum('ipv4','ipv6') NOT NULL,
`ip_start` varbinary(16) NOT NULL,
`ip_end` varbinary(16) NOT NULL,
`continent` char(2) NOT NULL,
`country` char(2) NOT NULL,
`stateprov` varchar(80) NOT NULL,
`city` varchar(80) NOT NULL,
`latitude` float NOT NULL,
`longitude` float NOT NULL,
PRIMARY KEY (`addr_type`,`ip_start`)
) DEFAULT CHARSET=utf8mb4;
The source code package above contains a script named import.php, it is meant to be run on the command line and requires that either a PHP binary (php-cli or php-cgi) or the HHVM binary is installed :
When run without arguments, import will output its usage details :
~$ ./import.php
usage: ./import.php -f <filename.csv[.gz]> [-d <country|city|location|isp|full>] [-b <database_name>] [-t <table_name>] [-u <username>] [-p <password>]
Example command line for the IP to Country database :
~$ ./import.php -f dbip-city-lite-2024-09.csv.gz -b myapp -t dbip_lookup
finished importing 537879 records
The process can take some time depending on your database instance performance, a typical import of the full Location + ISP database should not take more than 30 minutes.
These packages are not maintained by the DB-IP team but we have selected them because they provide added functionnality or language support.
ZORAN.DB.IP.Importer is a tool that imports into Microsoft SQL Server the freely available geolocation database offered by www.db-ip.com.
Geocode IP addresses with a single Ruby if statement. No network access, no context switches, no delay, just one low-calorie lookup like
Geolocal.in_spain?(request.remote_ip)
.500,000 individual lookups per second is fairly typical performance.
This project leverages a simple Java webapp that acts as a wrapper around the db-ip.com geoip databases.
A simple to use Java library for the freely available DB-IP IP address to city dataset. Requires Java 8