когда я использую pg_upgrade, проверьте обновление postgresql 9.0 beta2 до postgresql 9.3 beta1. ошибка появляется ниже:
[email protected]> cat loadable_libraries.txt
Could not load library "$libdir/postgis-2.0"
ERROR: could not load library "/opt/pgsql9.3beta1/lib/postgis-2.0.so": /opt/pgsql9.3beta1/lib/postgis-2.0.so: undefined symbol: GETSTRUCT
подробная процедура:
- установить 9.3
- initdb 9.3
- установить так (pgfincore, pg_stat_statements, postgis, не устанавливать схему sql)
- проверка
My LD_LIBRARY_PATH
:
LD_LIBRARY_PATH=/opt/pgsql9.3beta1/lib:/opt/postgis-2.0.3-for9.3/lib:/opt/gdal-1.10.0/lib:/opt/geos-3.3.8/lib:/opt/json-c-git20130520/lib:/opt/proj-4.8.0/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib /opt/pgsql9.3beta1/bin/pg_upgrade -c -b /opt/pgsql9.0beta2/bin -B /opt/pgsql9.3beta1/bin -d /pgdata1099 -D /pgdata2099 -p 1099 -P 2099 -u postgres -v
И затем ошибка:
Checking for presence of required libraries fatal
Your installation references loadable libraries that are missing from the
new installation. You can add these libraries to the new installation,
or remove the functions using them from the old installation. A list of
problem libraries is in the file:
loadable_libraries.txt
Failure, exiting
ПОСТАНОВИЛИ:
это ошибка postgis для postgresql 9.3. и разрешил его.
спасибо.
http://trac.osgeo.org/postgis/changeset/10321
vi/opt/soft_bak/postgis-2.0.3/postgis/geometry_estimate.c
//add
#if POSTGIS_PGSQL_VERSION >= 93
#include "access/htup_details.h"
#endif
а затем gmake
, gmake install
Теперь выполняется pg_upgrade.