关于postgis的安装使用

关于Postgis的安装使用,建议参考官方手册 http://www.postgis.org/docs/ch02.html

------------------------------------------

创建控件数据库的参考:

createdb yourdatabase

createlang plpgsql yourdatabase

psql -d yourdatabase -f postgis.sql

psql -d yourdatabase -f postgis_comments.sql

psql -d yourdatabase -f spatial_ref_sys.sql

------------------------------------------------

2.5. Create a spatially-enabled database

The first step in creating a PostGIS database is to create a simple Postgresql database.

createdb [yourdatabase]

Many of the PostGIS functions are written in the PL/pgsql procedural language. As such,the next step to create a PostGIS database is to enable the PL/pgsql language in your new database. This is accomplish by the command

createlang plpgsql [yourdatabase]

Now load the PostGIS object and function definitions into your database by loading the postgis.sql definitions file (located in [prefix]/share/contrib as specified during the configuration step).

psql -d [yourdatabase] -f postgis.sql

For a complete set of EPSG coordinate system definition identifiers,you can also load the spatial_ref_sys.sql definitions file and populate the spatial_ref_sys table. This will permit you to perform ST_Transform() operations on geometries.

psql -d [yourdatabase] -f spatial_ref_sys.sql

If you wish to add comments to the PostGIS functions,the final step is to load the postgis_comments.sql into your spatial database. The comments can be viewed by simply typing \dd [function_name] from a psql terminal window.

psql -d [yourdatabase] -f postgis_comments.sql

2.6. Create a spatially-enabled database from a template

Some packaged distributions of PostGIS (in particular the Win32 installers for PostGIS >= 1.1.5) load the PostGIS functions into a template database called template_postgis. If the template_postgis database exists in your Postgresql installation then it is possible for users and/or applications to create spatially-enabled databases using a single command. Note that in both cases,the database user must have been granted the privilege to create new databases.

From the shell:

# createdb -T template_postgis my_spatial_db

From sql:

postgres=# CREATE DATABASE my_spatial_db TEMPLATE=template_postgis

--------------------------------------------------------------

如果系统中没有存在template_postgis模板,需要自己手动创建,

$psql template1

template1=#create database template_postgis with template=template1;

template1=#update pg_database set datistemplate=TRUE where datname='template_postgis';

template1=#\c template_postgis

template_postgis=#create language plpgsql;

template_postgis=#\i /opt/locale/share/postgis/lwpostgis.sql;

template_postgis=#\i /opt/locale/share/postgis/spatial_ref_sys.sql;

template_postgis=#GRANT ALL ON geometry_columns TO PUBLIC;

template_postgis=#GRANT ALL ON spatial_ref_sys TO PUBLIC;

template_postgis=#VACUUM FREEZE;

template_postgis=#\q

对于用户,即可创建数据库

createdb test_gis_db -T template_postgis

dropdb test_gis_db

此部分参考 http://www.360doc.com/content/09/0220/11/1484_2597100.shtml

相关文章

来源:http://www.postgres.cn/docs/11/ 4.1.1. 标识符和关键词 SQL标识符和关键词必须以一个...
来源:http://www.postgres.cn/docs/11/ 8.1. 数字类型 数字类型由2、4或8字节的整数以及4或8...
来源:http://www.postgres.cn/docs/11/ 5.1. 表基础 SQL并不保证表中行的顺序。当一个表被读...
来源:http://www.postgres.cn/docs/11/ 6.4. 从修改的行中返回数据 有时在修改行的操作过程中...
来源:http://www.postgres.cn/docs/11/ 13.2.1. 读已提交隔离级别 读已提交是PostgreSQL中的...
来源:http://www.postgres.cn/docs/11/ 9.7. 模式匹配 PostgreSQL提供了三种独立的实现模式匹...