Settings
- Ubuntu 12.04
- Postgresql 9.1
- Postgis 2.0
- Tiger 2011 Data
- sudo apt-get install python-software-properties
- sudo apt-add-repository ppa:sharpie/for-science
- sudo apt-add-repository ppa:sharpie/postgis-nightly
- sudo apt-get update
- sudo apt-get install postgresql-9.1-postgis
- sudo apt-get install build-essential postgresql-9.1 postgresql-server-dev-9.1 libxml2-dev proj libjson0-dev xsltproc docbook-xsl docbook-mathml gettext postgresql-contrib-9.1 pgadmin3
- sudo apt-add-repository ppa:olivier-berten/geo
- sudo apt-get update
- sudo apt-get install libgdal-dev
- sudo apt-get install g++ ruby ruby1.8-dev swig swig2.0 unzip
- wget http://download.osgeo.org/geos/geos-3.3.3.tar.bz2
- tar xvfj geos-3.3.3.tar.bz2
- cd geos-3.3.3
- ./configure --enable-ruby --prefix=/usr
- make
- sudo make install
- wget http://postgis.refractions.net/download/postgis-2.0.0.tar.gz
- tar zxvf postgis-2.0.0.tar.gz
- cd postgis-2.0.0
- ./configure --with-gui
- make
- sudo make install
- sudo ldconfig
- sudo make comments-install
- sudo ln -sf /usr/share/postgresql-common/pg_wrapper /usr/local/bin/shp2pgsql
- sudo ln -sf /usr/share/postgresql-common/pg_wrapper /usr/local/bin/pgsql2shp
- sudo ln -sf /usr/share/postgresql-common/pg_wrapper /usr/local/bin/raster2pgsql
- createdb postgis2
- psql -d postgis2
- psql>create extension postgis;
- psql>create extension postgis_topology;
- createdb -T postgis2 geocoder
- wget http://postgis.refractions.net/download/postgis-2.1.0SVN.tar.gz
- tar zxvf postgis-2.1SVN.tar.gz
- EDIT postgis-2.1SVN/extra/tiger-geocoder/tiger2011/tiger_loader.sql
export PGBIN=/usr/bin
export PGPORT=5432
export PGHOST=localhost
export PGUSER=postgres
export PGPASSWORD=XXX
export PGDATABASE=geocoder
PSQL=${PGBIN}/psql
SHP2PGSQL=${PGBIN}/shp2pgsql - EDIT postgis-2.1SVN/extra/create_geocode.sh
PGPORT=5432
PGHOST=localhost
PGUSER=postgres
PGPASSWORD=XXX
THEDB=geocoder
PGSQL_CMD=/usr/bin/psql
PGCONTRIB=/usr/share/postgresql/9.1/contrib
//unmark the following two lines
${PGSQL_CMD} -d "${THEDB}" -c "CREATE EXTENSION fuzzystrmatch.sql"
${PGSQL_CMD} -d "${THEDB}" -c "ALTER DATABASE ${THEDB} SET search_path=public,tiger;" - sh ./create_geocode.sh
- sudo mkdir -p /gisdata/temp
- sudo chown -R postgres:postgres /gisdata
- psql -d geocoder
- psql>\a
- psql>\t
- psql>\o nation.sh
- psql>select loader_generate_nation_script('sh');
- psql>\q
- sh ./nation.sh
- psql -d geocoder
- psql>\a
- psql>\t
- psql>\o all_states.sh
- psql>select loader_generate_script(ARRAY['AK','AR','AS',...],'sh');
- psql>\q
- sh ./all_states.sh
- psql -d geocoder
- psql>select install_missing_indexes();
- psql -d geocoder
- get geocode of "27 Waterview Drive, Shelton, CT 06484)psql>select g.rating,ST_X(geomout) AS lon,ST_Y(geomout) AS lat, (addy).* from geocode('27 Waterview Drive, Shelton, CT 06484') AS g;
- get reverse-geocode of point(-73.0811694362766 41.2931353732512)psql>select pprint_addy(r.addy[1]) as st1, pprint_addy(r.addy[2]) as st2, pprint_addy(r.addy[3]) as st3, array_to_string(r.street,',') as cross_streets from reverse_geocode(st_geomfromtext('POINT(-73.0811694362766 41.2931353732512)',4269),true) as r;
No comments:
Post a Comment