- 1. アクセス許可設定
1. アクセス許可設定
「PostgreSQL」のデータベースは、デフォルトの設定ではホスト内のユーザのみにアクセスを許可しています。
ホスト外のユーザに対してオープンするには、以下のファイルを編集します。
データベース・設定ファイルの置き場所も以前のバージョンと異なっています。
/var/db/postgres/data96/pg_hba.conf
/var/db/postgres/data96/postgresql.conf
「/var/db/postgres/data96/pg_hba.conf」は
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres trust
#host replication postgres 127.0.0.1/32 trust
#host replication postgres ::1/128 trust
の個所を編集します。
編集の際は、「postgres」ユーザ権限で編集しないと後で権限の問題が発生しますので、「root」ユーザで
su postgres -c "vim /var/db/postgres/data96/pg_hba.conf"
で編集します。
データベースをどこの誰からでも参照可能にするには、1カラム目のコメント用「#」をはずすだけですが、これでは危険極まりないので、許可するアドレスを下記の要領で設定します。
TYPE |
localは UNIX のドメインソケット使用の接続を示し host は TCP/IP を使用した接続を示します。 |
DATABASE | データベース名を記述します all を指定すると全データベースを指定することになります
| USER | ロール名を指定します
| CIDR-ADDRESS |
標準のドット区切り10進表記でのIPアドレスとCIDRマスクの長さを指定します |
METHOD | ユーザ認証を行う方法を指定します
ident | ident(RFC1413)による認証を行う |
trust | 認証処理を行わず、スルーでパスさせる |
reject | 接続を拒否する |
password [password_file] |
パスワードファイルによる認証を行う |
crypt |
PostgreSQL のシステムテーブル pg_shadow による認証を行う |
kbr4/kbr5 | Kerberos V4/V5 による認証を行う |
|
「pg_hba.conf」は、上から順に見ていき、条件にマッチした行が見つかると、それが適用されます。
「/var/db/postgres/data96/postgresql.conf」は
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
#port = 5432 # (change requires restart)
max_connections = 100 # (change requires restart)
の記述を変更することで、「ODBC」接続できるようになります。
これも編集の際は、「postgres」ユーザ権限で編集しないと後で権限の問題が発生しますので、「root」ユーザで
su postgres -c "vim /var/db/postgres/data96/postgresql.conf"
で編集します。
サーバアドレスを「192.168.0.2」とすれば、「ODBC」接続を可能にするには
listen_addresses = 'localhost,192.168.0.2'
port = 5432
と、ポート番号「5432」を有効にし、「listen_addresses」に ','(カンマ)区切りで、サーバの「IP」アドレスなり、ドメイン名なりを加えます。
3.2 ODBC 接続
クライアントマシンが「Windows」で、「Microsoft Office」の「Access」を持っていれば、「ODBC」を使って「PostgreSQL」上のデータを参照したり操作したりすることが出来ます。
「ODBC」ドライバのダウンロード・インストール等については「postgreSQL - ODBC 接続」に記載しましたので、そちらをご参照ください。
|
|