2016-10-31 10 views
0

私はPostgreSQLのでabsolutly新しいですし、私は私が私のPostgreSQLのインストールにインストールPostGISの拡張子を持っているかどうかを確認するために、このチュートリアルを次しています。PostGISがPostgreSQLデータベースに正しくインストールされているかどうかわからないのはなぜですか?

これはチュートリアルです:https://www.a2hosting.com/kb/developer-corner/postgresql/determining-the-postgresql-and-postgis-versions

私はのPostgreSQL 9.6.1を使用しています。

だから私は、コマンドラインを介して私ののPostgreSQLへのアクセス権を持っていると私は、このコマンドを実行した:

SELECT PostGIS_full_version(); 

これが得られた出力です:

C:\ Users \ユーザーアンドレア> pasql -u admin 'pasql'は、内部または外部のコマンド、 操作可能なプログラムまたはバッチファイルとして認識されません。

C:\Users\Andrea>psql -U postgres 
psql (9.6.1) 
ATTENZIONE: Il code page della console (850) differisce dal code page 
      di Windows (1252). I caratteri a 8-bit potrebbero non 
      funzionare correttamente. Vedi le pagine di riferimento 
      psql "Note per utenti Windows" per i dettagli. 
Digita "help" per avere un aiuto. 

postgres=# SELECT PostGIS_full_version(); 
ERROR: function postgis_full_version() does not exist 
RIGA 1: SELECT PostGIS_full_version(); 
      ^
NOTA: No function matches the given name and argument types. You might need to add explicit type casts. 
postgres=# 

だから私は、標準ユーザーでデータベースへのアクセスを行っているし、私は、コマンドを実行したが、PostGIS_full_version()機能が存在しないと思われてきました。

どういう意味ですか? PoistGISがまだインストールされていないか、間違っていますか? (多分私は特定のデータベースでそれを実行する必要がありますか?)

+0

それでどうやってインストールしましたか? – zerkms

+0

@zerkms PostgreSQL 9.6.1をWindowsのローカルマシンにインストールしました – AndreaNobili

+1

postgisをインストールしなかった場合、インストールされません。 – zerkms

答えて

2

少なくとも2つの問題があります。まず、すべての

Il code page della console (850) differisce dal code page 
     di Windows (1252) 

は、あなたがどこからpsqlを入力すると、この古いバージョンが検出された、ようにあなたは、インストールのPostgresの古いバージョンを持っていることを意味します。私はもうWindowsを使用しませんが、あなたの環境変数のPATHに場所が設定されていると推測しています。クライアントとサーバーの互換性のないバージョンを実行することは、一般的には悪い考えです。これを修正するには、Postgresの古いバージョン(おそらく8.xx)へのパスを削除します。

第二の問題は、あなたが)

SELECT PostGIS_full_versionを(実行していることです。 PostgresのDBから

、あなたが

のpostgres =スタート時#

から見ることができるように。 Postgisをインストールするときは、通常

CREATE EXTENSION POSTGIS;

通常は、空間的に有効にするデータベースでこれを行いますが、これはシステムテーブルなどのためのPostgresデータベースでは行いません。 Postgisはグローバルにインストールされていないことに注意してください。もう一つのオプションはPostgisの機能をtemplate1 dbにインストールすることです。これは作成するすべてのデータベースがPostgisを自動的にインストールすることを意味します。

関連する問題