1

hstore開発中のプロジェクトのデータベースに型を導入しようとしています。しかし、問題は、開発マシンにインストールされている Postgres サーバーのバージョンが、運用マシンよりも少し新しいことです。コマンドをローカルで実行することはできますがCREATE EXTENSION、このコマンドは運用マシンでは使用できません。

hstore9.1 と 9.0 の両方にインストールするスクリプトを作成する方法はありますか?

4

2 に答える 2

1

...現在システムにインストールされているPGバージョンを判別する方法があった場合。

Postgresに質問する:

psql -c 'select version()' postgres

または、psqlのバージョンが同期していると確信している場合:

psql --version
于 2013-02-10T11:37:18.767 に答える
1

9.0 の場合、次のようなスクリプトを使用できます (例: create_hstore.sh):

#!/bin/bash

DB=$1
ARGS="-U postgres -h localhost"
CONTRIB=/usr/pgsql-9.0/share/contrib

[ $# -lt 1 ] && exit 1

# Uncomment following lines if necessary
#createdb $ARGS $DB
#createlang $ARGS plpgsql $DB
psql $ARGS -f $CONTRIB/hstore.sql $DB

そしてそれを呼び出すには:

./create_hstore.sh <db_name>
于 2012-12-14T11:02:16.257 に答える