The scripts provided by EPSG can be run "as is" even if minor SQL language differences raise some errors: the commit statements should have a begin statement, and the SET with replace() in not understandable by postgreSQL.
Optional: users who wish more readable table names may run this Ant script in order to modify the SQL scripts.
The SQL scripts must be executed in the following order:
hb_pga.conf
file:
... host EPSG 127.0.0.1 255.255.255.255 password web |
web
file:
... Geotools |
Creating the database
$ su -l postgres -c 'createuser -d -A -P Geotools' Enter password for user "Geotools": Geotools Enter it again: Geotools CREATE USER $ createdb -U Geotools -h localhost -E LATIN9 -e EPSG "EPSG for GeoTools" Password: Geotools CREATE DATABASE "EPSG" WITH ENCODING = 'LATIN9' CREATE DATABASE Password: Geotools COMMENT ON DATABASE "EPSG" IS 'EPSG sous postgreSQL' COMMENT $ psql -U Geotools -h localhost -f EPSG_v67.mdb_Tables.sql EPSG Password: Geotools psql:EPSG_v67.mdb_Tables.sql:8: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'pk_alias' for table 'epsg_alias' ... $ psql -U Geotools -h localhost -f EPSG_v67.mdb_Data.sql EPSG Password: Geotools ... UPDATE 0 psql:EPSG_v67.mdb_Data.sql:273608: ERROR: parser: parse error at or near "," ... psql:EPSG_v67.mdb_Data.sql:273806: ERROR: parser: parse error at or near "," psql:EPSG_v67.mdb_Data.sql:273807: NOTICE: COMMIT: no transaction in progress ... # # These errors won't break the database. The SQL statements are : # UPDATE epsg_table # SET a_field = replace(a_field, CHAR(182), CHAR(10)); # COMMIT $ psql -U Geotools -h localhost -f EPSG_v67.mdb_FKeys.sql EPSG Password: Geotools psql:EPSG_v67.mdb_FKeys.sql:2: NOTICE: ALTER TABLE will create implicit trigger(s) for FOREIGN KEY check(s) ALTER ... $ vacuumdb -U Geotools -h localhost -f -z EPSG Password: Geotools NOTICE: Skipping "pg_group" --- only table or database owner can VACUUM it NOTICE: Skipping "pg_database" --- only table or database owner can VACUUM it NOTICE: Skipping "pg_shadow" --- only table or database owner can VACUUM it VACUUM # # Security matters : Geotools now only selects ! # $ psql -U Geotools -h localhost -c 'revoke all on epsg_alias, epsg_area, epsg_change, epsg_coordinateaxis, epsg_coordinateaxisname, epsg_coordinatereferencesystem, epsg_coordinatesystem, epsg_coordoperation, epsg_coordoperationmethod, epsg_coordoperationparam, epsg_coordoperationparamusage, epsg_coordoperationparamvalue, epsg_coordoperationpath, epsg_datum, epsg_deprecation, epsg_ellipsoid, epsg_namingsystem, epsg_primemeridian, epsg_supersession, epsg_unitofmeasure, epsg_versionhistory from "Geotools"' EPSG Password: Geotools REVOKE $ psql -U Geotools -h localhost -c 'grant select on epsg_alias, epsg_area, epsg_change, epsg_coordinateaxis, epsg_coordinateaxisname, epsg_coordinatereferencesystem, epsg_coordinatesystem, epsg_coordoperation, epsg_coordoperationmethod, epsg_coordoperationparam, epsg_coordoperationparamusage, epsg_coordoperationparamvalue, epsg_coordoperationpath, epsg_datum, epsg_deprecation, epsg_ellipsoid, epsg_namingsystem, epsg_primemeridian, epsg_supersession, epsg_unitofmeasure, epsg_versionhistory to "Geotools"' EPSG Password: Geotools GRANT $ su -l postgres -c "psql -c 'alter user \"Geotools\" with NOCREATEDB' EPSG" ALTER USER |
Deleting the database
$ su -l postgres -c 'dropdb EPSG' DROP DATABASE $ su -l postgres -c 'dropuser Geotools' DROP USER |
hb_pga.conf
file:
... host EPSG 0.0.0.0 0.0.0.0 password web |
Author: Didier Richard
Created: 2005-05-29
Revised: 2005-05-31
Copyright © 1996–2024 Geotools. All rights reserved.