へっぽこヘタレシステム管理者もどきの管理人です。
今回は、仕事の関係でとあるシステムのテスト環境構築のため
CentOSにpostgresサーバーを立てたので、その方法を忘備録として掲載します。
クライアントからA5:SQLを使ってpostgresに接続しSQLを叩くまでやってみました。
とりあえずCentOSを立てる
兎にも角にも、まずはCentOSを立てる必要があります。
WindowsPCに【VM Ware WorkStation Player】をインストールしCentOSを立てます。
VM Ware WorkStation Playerのダウンロードはこちら
CentOSにSSHをインストールする
CentOSをインストールしたら【Open SSH】をインストールして【teraterm】から接続できるようにします。
CentOSにrootでログインしターミナルを立ち上げます。
次のコマンドを入力しCentOSを最新状態にアップデートします。
yum update
次のコマンドを入力し【Open SSH】がインストールされているか確認します。
yum list installed | grep ssh
インストールされていない場合は次もモジュールをインストールする。
yum install openssh.x86_64
yum install openssh-server.x86_64
yum install openssh-clients.x86_64
yum install libssh2.x86_64
teratermでSSH接続できるか確認する
IPアドレスを確認するために【net-tools】をインストールする
インストールされている場合は飛ばす。
yum install net-tools
IPアドレスを確認する。
ifconfig
接続できればOK
teratermからpostgresをインストールする
teratermからSSH接続ができれば、あとは全てteratermから操作します。
次のコマンドでpostgresのバージョンを確認します。
yum info postgresql
とりあえず次のコマンドで最新のバージョンをインストールします。
1行ずつ実行してください。
yum install postgresql.x86_64
yum install postgresql-server.x86_64
yum install postgresql-libs.x86_64
yum install postgresql-devel.x86_64
yum install postgresql-contrib.x86_64
DBを初期化
postgresサーバーのインストール完了したらDBの初期化を次のコマンドで実行します。
postgresql-setup initdb
サービスを自動起動する
DBの初期化が完了したら次のコマンドで自動起動を設定します。
サービス起動
systemctl start postgresql.service
サービスの起動確認
systemctl status postgresql.service
サービスの自動起動を設定
systemctl enable postgresql.service
ファイアウオールのポートを開放する
続いて次のコマンドで、ファイアウオールのポートを開放します。
ポート開放
firewall-cmd --zone=public --add-port=5432/tcp
firewall-cmd --add-service=postgresql --zone=public --permanent
ファイアウオールをリロードする
firewall-cmd --reload
ポートの解放を確認する
firewall-cmd --list-all
postgresの設定を変更する
次のコマンドでコンフィグファイルの場所を探す
find . -name "postgresql.conf"
viでコンフィグファイルを編集し次の行を追加する
listen_addresses = '*'
次のコマンドでコンフィグファイルの場所を探す
ァイルの場所を探す
find . -name "pg_hba.conf"
viでコンフィグファイルを編集し次の行を追加する
host all all 0.0.0.0/0 trust
さらに【peer】を【trust】に変更しておく
postgresユーザーにパスワードを設定する
ここで、一端【VM Ware WorkStation Player】の【CentOS】に【root】ログインします。
次のコマンドで【postgres】ユーザーにログインします。
psql -U postgres
次のコマンドでパスワードを変更します。
\password
パスワードの入力が2回求められるます。
とりあえず【postgres】と設定しておきます。
次のコマンドで【postgres】からログアウトします。
\q
exit
次のコマンドで【postgres】を再起動します。
systemctl restart postgresql.service
再度、次のコマンドで【postgres】ユーザーにログインします。
パスワードが求められたら先ほど入力したパスワード【postgres】を入力します。
psql -U postgres
次のSQLを入力して日時が取得できることを確認します。
SELECT CURRENT_DATE;
現在日時が表示されればOK
次のコマンドでコンフィグファイルの場所を探す
ァイルの場所を探す
find . -name "pg_hba.conf"
viでコンフィグファイルを編集し次の行を追加する
さきほど【trust】に変更した部分を【md5】に変更しておく
次のコマンドで【postgres】を再起動します。
systemctl restart postgresql.service
A5:SQLでクライアントPCからpostgresに接続する
まず、A5:SQLをダウンロードします。
VETCORからZIP版をダウロードすればOKです。
A5:SQLを起動します。
データベースの追加で・・・
- サーバー名:CentOSのIPアドレス
- データベース名:postgres
- ユーザー名:postgres
- パスワード:postgres
を追加して、テスト接続します。
テスト接続ができることが確認できたら接続します。
SQLを新規作成し・・・次のSQLを実行し・・・
select current_date;
現在日時が表示されればOKです。
コメント