ogr2ogr 读取geojson入pg时,报错: Failed to process SRS definition: EPSG:4326
查看细节发现:
PROJ: proj_create_from_database: D:\Program Files\PostgreSQL\14\share\contrib\postgis-3.2\proj\proj.db contains DATABASE.LAYOUT.VERSION.MINOR = 0 whereas a number >= 2 is expected. It comes from another PROJ installation.
gdal是去的pg里面找的srs,这样可能会兼容问题。
随后在StackOverflow中找到:
geojson - GDAL, ogr2ogr "Cannot find proj.db" Error - Stack Overflow
说明,我还需要配置下prj库的地址,也许就会好了。
于是配置了下,就ok了(假设你的gdal也安装在C:\Program Files\GDAL下):
setx GDAL_DATA "C:\Program Files\GDAL\gdal-data"
setx GDAL_DRIVER_PATH "C:\Program Files\GDAL\gdalplugins"
setx PROJ_LIB "C:\Program Files\GDAL\projlib"
setx PYTHONPATH "C:\Program Files\GDAL\"
解决。
小tips:
1. ogr读取geojson入库命令:
ogr2ogr -f "PostgreSQL" "PG:host=yourip port=yourport dbname=yourdbname user=youruser password=yourpassword" yourfile.geojson -nln targettablename