PostgreSQL 9.1 ile Yeni Yöntem
Aşağıdaki RK tavsiyesi sayesinde, bu eğiticiye bir göz attım ve PostgreSQL 9.1 için yapmanız gereken tek şey uzantıları eklemek postgis
ve postgis_topology
pgAdmin bağlam menülerini kullanarak mevcut bir veritabanına eklemek . Bir postgis şablonu oluşturmak için adında yeni bir veritabanı oluşturdum template-postgis
ve bu uzantıları ekledim. Daha sonra bu şablonu kullanarak diğer veritabanımı oluşturdum. Kullanırken pg_dump
, sadece bu satırları içerdiği ve uzatma işlevlerini dökmediği gibi, ihracatın boyutunun çok daha küçük olduğunu gördüm:
CREATE EXTENSION IF NOT EXISTS postgis WITH SCHEMA public;
CREATE EXTENSION IF NOT EXISTS postgis_topology WITH SCHEMA topology;
Eski Yedekli Yöntem:
Burada .sql dosyaları kullanarak sona erdi:
/Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/postgis.sql
/Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/spatial_ref_sys.sql
/Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/topology.sql
Ayrıca, mevcut bir PostGIS veritabanını bu şablondan yapılmış yeni bir veritabanına içe aktardığımda bu hatayı aldım:
ERROR: type "spheroid" already exists
Buradaki talimatları izledim ve ON_ERROR_ROLLBACK=on
"template_postgis" adlı boş bir veritabanı oluşturduktan sonra şablonu ayarlamak için kullandım :
psql -U postgres -d template_postgis -1 -f /Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/postgis.sql -v ON_ERROR_ROLLBACK=on
psql -U postgres -d template_postgis -1 -f /Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/spatial_ref_sys.sql -v ON_ERROR_ROLLBACK=on
psql -U postgres -d template_postgis -1 -f /Applications/Postgres.app/Contents/MacOS/share/contrib/postgis-2.0/topology.sql -v ON_ERROR_ROLLBACK=on
Ve sonra benim yedek db ithal, örneğin:
psql -U someuser -d somedb -1 -f somefile.sql -v ON_ERROR_ROLLBACK=on
Daha Eski Yöntem:
Bunu ben yaptım:
createdb -E UTF8 -T template0 template_postgis
createlang -d template_postgis plpgsql
psql --quiet -d template_postgis -f /Applications/Postgres.app/Contents/MacOS/share/extension/postgis--2.0.1.sql
postgis--2.0.1.sql
Kurulum yolu , kurulumunuza bağlı olarak farklı olacaktır.