微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

关于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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐