aboutsummaryrefslogtreecommitdiffstats
path: root/databases/postgis/files/README.postgis
diff options
context:
space:
mode:
Diffstat (limited to 'databases/postgis/files/README.postgis')
-rw-r--r--databases/postgis/files/README.postgis214
1 files changed, 0 insertions, 214 deletions
diff --git a/databases/postgis/files/README.postgis b/databases/postgis/files/README.postgis
deleted file mode 100644
index 12163a476453..000000000000
--- a/databases/postgis/files/README.postgis
+++ /dev/null
@@ -1,214 +0,0 @@
-PostGIS - Geographic Information Systems Extensions to PostgreSQL
-~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-VERSION: 1.0.0 (2005/01/13)
-
-MORE INFORMATION: http://postgis.refractions.net
-
-INTRODUCTION:
-This distribution contains a module which implements GIS simple
-features, ties the features to rtree indexing, and provides some
-spatial functions for accessing and analyzing geographic data.
-
-Directory structure:
-
- ./ Build scripts and install directions.
- ./lwgeom Library source code.
- ./jdbc Extensions to the PostgreSQL JDBC drivers to support
- the GIS objects.
- ./doc Documentation on the code, objects and functions
- provided.
- ./loader A program to convert ESRI Shape files into SQL text
- suitable for uploading into a PostGIS/PostgreSQL database
- and a program for converting PostGIS spatial tables into
- Shape files..
- ./examples Small programs which demonstrate ways of accessing
- GIS data.
-
-
-INSTALLATION:
-
-PostGIS is compatible with PostgreSQL 7.2 and above.
-
-To install the module, move this directory to the "contrib" directory of your
-PostgreSQL source installation. Alternately, point PGSQL_SRC at your
-PostgreSQL source tree either in an environment variable or editing
-Makefile.config.
-
-You *must* have a PostgreSQL source tree, and you *must* have succesfully
-built and installed it for this to work.
-
-SEE THE NOTE ON GEOS SUPPORT BELOW FOR SPECIAL COMPILATION INSTRUCTIONS
-
-
-* PROJ4 SUPPORT (Recommended):
- The Proj4 reprojection library is required if you want to use the
- transform() function to reproject features within the database.
-
- http://www.remotesensing.org/proj
-
- Install Proj4 in the default location.
- Edit the postgis Makefile.config and change the USE_PROJ variable to 1
- and ensure that the PROJ_DIR variable points to your Proj4
- installation location (/usr/local is the default).
-
-* SPATIAL PREDICATE / GEOS SUPPORT (Recommended):
- The GEOS library provides support for exact topological tests
- such as Touches(), Contains(), Disjoint() and spatial operations
- such as Intersection(), Union() and Buffer().
-
- http://geos.refractions.net
-
- In order to use the GEOS support, you *may* need to specially compile
- your version of PostgreSQL to link the C++ runtime library.
- To do this, invoke the PgSQL configuration script this way:
-
- LDFLAGS=-lstdc++ ./configure --your-options-go-here
-
- The initial LDFLAGS variable is passed through to the Makefile and
- adds the C++ library to the linking stage.
- Once you have compiled PgSQL with C++ support, you can enable GEOS
- support in PostGIS by setting the USE_GEOS variable in the PostGIS
- Makefile.config to 1, and ensure that the GEOS_DIR variable points
- to your GEOS installation location (/usr/local is the default).
-
-
-To compile PostGIS, as root run:
-
- make
- make install
-
-PostGIS now requires the PL/pgSQL procedural language in order to operate
-correctly. To install PL/pgSQL use the 'createlang' program from the PostgreSQL
-installation. (The PostgreSQL Programmer's Guide has details if you want
-to this manually for some reason.)
-
-As postgres run:
-
- createlang plpgsql yourdatabase
- psql -f lwpostgis.sql -d yourdatabase
-
-Installation should now be complete.
-
-
-UPGRADING:
-
-Upgrading PostGIS can be tricky, because the underlying C libraries which
-support the object types and geometries may have changed between versions.
-
-For this purpose PostGIS provides an utility script to restore a dump
-produced with the pg_dump -Fc command. It is experimental so redirecting
-its output to a file will help in case of problems. The procedure is
-as follow:
-
- # Create a "custom-format" dump of the database you want
- # to upgrade (let's call it "olddb")
- $ pg_dump -Fc olddb olddb.dump
-
- # Restore the dump contextually upgrading postgis into
- # a new database. The new database doesn't have to exist.
- # Let's call it "newdb"
- $ sh utils/postgis_restore.pl lwpostgis.sql newdb olddb.dump > restore.log
-
- # Check that all restored dump objects really had to be restored from dump
- # and do not conflict with the ones defined in lwpostgis.sql
- $ grep ^KEEPING restore.log | less
-
- # If upgrading from PostgreSQL < 7.5 to >= 7.5 you might want to
- # drop the attrelid, varattnum and stats columns in the geometry_columns
- # table, which are no-more needed. Keeping them won't hurt.
- # !!! DROPPING THEM WHEN REALLY NEEDED WILL DO HURT !!!!
- $ psql newdb -c "ALTER TABLE geometry_columns DROP attrelid"
- $ psql newdb -c "ALTER TABLE geometry_columns DROP varattnum"
- $ psql newdb -c "ALTER TABLE geometry_columns DROP stats"
-
- # spatial_ref_sys table is restore from the dump, to ensure your custom
- # additions are kept, but the distributed one might contain modification
- # so you should backup your entries, drop the table and source the new one.
- # If you did make additions we assume you know how to backup them before
- # upgrading the table. Replace of it with the new one is done like this:
- $ psql newdb
- newdb=> drop table spatial_ref_sys;
- DROP
- newdb=> \i spatial_ref_sys.sql
-
-Following is the "old" procedure description. IT SHOULD BE AVOIDED if possible,
-as it will leave in the database many spurious functions. It is kept in this document
-as a "backup" in case postgis_restore.pl won't work for you:
-
- pg_dump -t "*" -f dumpfile.sql yourdatabase
- dropdb yourdatabase
- createdb yourdatabase
- createlang plpgsql yourdatabase
- psql -f lwpostgis.sql -d yourdatabase
- psql -f dumpfile.sql -d yourdatabase
- vacuumdb -z yourdatabase
-
-
-USAGE:
-
-Try the following example SQL statements to create non-OpenGIS tables and
-geometries:
-
- CREATE TABLE geom_test ( gid int4, geom geometry,name varchar(25) );
- INSERT INTO geom_test ( gid, geom, name )
- VALUES ( 1, 'POLYGON((0 0 0,0 5 0,5 5 0,5 0 0,0 0 0))', '3D Square');
- INSERT INTO geom_test ( gid, geom, name )
- VALUES ( 2, 'LINESTRING(1 1 1,5 5 5,7 7 5)', '3D Line' );
- INSERT INTO geom_test ( gid, geom, name )
- VALUES ( 3, 'MULTIPOINT(3 4,8 9)', '2D Aggregate Point' );
- SELECT * from geom_test WHERE geom && 'BOX3D(2 2 0,3 3 0)'::box3d;
-
-The following SQL creates proper OpenGIS entries in the SPATIAL_REF_SYS
-and GEOMETRY_COLUMNS tables, and ensures that all geometries are created
-with an SRID.
-
- INSERT INTO SPATIAL_REF_SYS
- ( SRID, AUTH_NAME, AUTH_SRID, SRTEXT ) VALUES
- ( 1, 'EPSG', 4269,
- 'GEOGCS["NAD83",
- DATUM[
- "North_American_Datum_1983",
- SPHEROID[
- "GRS 1980",
- 6378137,
- 298.257222101
- ]
- ],
- PRIMEM["Greenwich",0],
- UNIT["degree",0.0174532925199433]]'
- );
-
- CREATE TABLE geotest (
- id INT4,
- name VARCHAR(32)
- );
-
- SELECT AddGeometryColumn('db','geotest','geopoint',1,'POINT',2);
-
- INSERT INTO geotest (id, name, geopoint)
- VALUES (1, 'Olympia', GeometryFromText('POINT(-122.90 46.97)',1));
- INSERT INTO geotest (id, name, geopoint)
- VALUES (2, 'Renton', GeometryFromText('POINT(-122.22 47.50)',1));
-
- SELECT name,AsText(geopoint) FROM geotest;
-
-
-Spatial Indexes:
-
-PostgreSQL provides support for GiST spatial indexing. The GiST scheme offers
-indexing even on large objects, using a system of "lossy" indexing where
-a large object is proxied by a smaller one in the index. In the case
-of the PostGIS indexing system, all objects are proxied in the index by
-their bounding boxes.
-
-You can build a GiST index with:
-
- CREATE INDEX <indexname>
- ON <tablename>
- USING GIST ( <geometryfield> );
-
-Always run the "VACUUM ANALYZE <tablename>" on your tables after
-creating an index. This gathers statistics which the query planner
-uses to optimize index usage.
-