ArcSDE PostgreSQL for CentOS


ArcGIS for Server Basic Ent (ArcSDE)は、RedHat / Suseのみ対応


いつまで有効か分からないリンク

RefHatとCentはほぼ同一とは言え自己責任になるので注意

とりあえずやってみた記録
ArcGISは10.0
Centは5.8
PGは8系統
若干 古目なので注意

※192.168.0.1はとりあえず環境次第と言う事で

【1】
CentOSのインストール

■検証環境
GUI抜き
Firewall off
5.8

【2.】
とりあえずログイン
ifconfgでIP確認

puttyで接続:ログイン

【3.】

yum update

とりあえず更新

【4.】
PostgreSQLをインストール

一応確認

psql –version

■リザルト[ -bash: psql: command not found]

rpm -qa | grep postgresql
yum –disableplugin=priorities info postgresql-server

■リザルト 8.1.23が標準 – 古い

リストでみる

yum list | grep postgresql

■リザルト 8.3系統がない

以下から8.3 x86 64のCentOS用を探す
http://yum.postgresql.org/repopackages.php

http://yum.postgresql.org/8.3/redhat/rhel-4-x86_64/pgdg-centos-8.3-7.noarch.rpm
※赤帽用の8.3.8 SDEが記憶によると 3.8だった気がするのであえて赤い扉を選ぶ

http://yum.postgresql.org/8.3/redhat/rhel-5-x86_64/pgdg-redhat-8.3-8.noarch.rpm

リポジトリにセットする

wget -P /tmp http://yum.postgresql.org/8.3/redhat/rhel-5-x86_64/pgdg-redhat-8.3-8.noarch.rpm
sudo rpm -ivh /tmp/pgdg-redhat-8.3-8.noarch.rpm

ダウンロードしたのを消す

rm /tmp/pgdg-redhat-8.3-8.noarch.rpm

リストでみる

yum list | grep postgresql

postgresql-server.x86_64 8.3.20-1PGDG.rhel5 pgdg83

3.20になってるが…やはりCent用が良かったかと思いつつ

インストール

sudo yum –disableplugin=priorities install postgresql-server.x86_64

とりあえずパス設定

passwd postgres

rootと同じパスに設定
psql –version でみると何故か8.3.20 いいのかこれ?
消しとくべきだったかcent用にすべきだったか..

サービス名確認

sudo /sbin/chkconfig –list | grep postgresql

■リザルト
postgresql 0:off 1:off 2:off 3:off 4:off 5:off 6:off

自動起動をONにしてDB初期化

sudo /sbin/chkconfig postgresql on
sudo /sbin/service postgresql initdb

DB出来たら、設定ファイルができるのでいじる

vi /var/lib/pgsql/data/pg_hba.conf

コメントアウトしてフルトラスト(検証環境なので気にしないことにする)
#host all all 127.0.0.1/32 ident sameuser
host all all 0.0.0.0/0 trust

起動してみる

sudo /sbin/service postgresql start

つなげない
listenしてないらしいので再設定

vi /var/lib/pgsql/data/postgresql.conf

listen_addresses = ‘localhost’を
listen_addresses = ‘*’にしてコメント化解除
port = ‘5432’をコメント化解除

sudo /sbin/service postgresql restart

他のPCからpgAdminで接続を確認

【5.】 ArcSDE

メディアをマウントする

mount /dev/cdrom /mnt
source /mnt/linux/pg_64/pg/setup_pgdb.sde

なにも考えずにやったがpostgresユーザでやれと言われる
sdeロールは作られた?

id sde

そんなユーザいねぇ

useradd sde
passwd sde

とりあえずrootとおなじ

su – postgresscreateuser -U postgres -P sde
createDB Y newr oles Y
source /mnt/linux/pg_64/pg/setup_pgdb.sde

sdeロールを作る時に、すでにいると言われかつ、sdeのauthentication failedなので

su – sdesource /mnt/linux/pg_64/pg/setup_pgdb.sde

今度は、sdeデータベースできたっぽい

cp /mnt/linux/pg_64/pg/libst_raster_pg.so /usr/lib64/pgsql/libst_raster_pg.so
cp /mnt/linux/pg_64/pg/st_geometry.so /usr/lib64/pgsql/st_geometry.so

ライブラリをコピーしておく

Win機のほうで(SDE PG入り)sde setupコマンドを実行
sdesetup -o install -d POSTGRESQL -s 192.168.0.1 -D sde
-u sde -l “\\製品メディアのパス\EDN開発ライセンス.ecp”

superuserがないぜ!

Centで

su – postgrespsql
alter role sde superuser;

再度Win機でsdesetup 成功っぽい

カタログで
sde:postgresql:192.168.0.1
sde

sdeユーザにて接続
japan_ver71を入れると見えるのでOK

カテゴリー: 開発環境 タグ: , , パーマリンク