把 shp 文件和 tif 文件导入到 PostgreSQL (Postgis) 中
工具准备
数据库准备
最重要的是要加载 postgis 和 postgis_raster 两个插件到目标数据库中
以 postgres 角色进入 pqsl
$ sudo -u postgres psql
创建数据库,请把 test 换成你想要的数据库,后文不再提示
CREATE DATABASE test;
进入数据库,并加载 postgis 和 postgis_raster 两个插件
\c test;
CREATE EXTENSION postgis;
CREATE EXTENSION postgis_raster;
工具准备
需要安装 postgis 以获取 shp2pgsql 和 raster2pgsql 两个工具
$ sudo apt update
$ sudo apt install postgis
导入 shp 矢量文件
准备好相应的文件,并使用以下命令
$ shp2pgsql -s <SRID> -I <输入文件路径>.shp <表名> | sudo -u postgres psql -d <数据库名> -U <用户名>
表名不要求是现存的表,会自动创建表名的表
导入 tif 栅格文件
准备好相应的文件,并使用以下命令
$ raster2pgsql -s <SRID> -I -C -M -F <输入文件路径>.tif <表名> | sudo -u postgres psql -d <数据库名> -U <用户名>
表名的补充说明同 shp 中的
如果文件过大无法导入,则需要使用 -t <大小> 参数将其切割成指定大小的瓦片,如
$ raster2pgsql -s <SRID> -I -C -t 256x256 -M -F <输入文件路径>.tif <表名> | sudo -u postgres psql -d <数据库名> -U <用户名>

浙公网安备 33010602011771号