PostgreSQL はオープンソースのリレーショナルデータベース管理システムであり、高度なSQL準拠のアプリケーション開発の世界を形作るのに役立ちました。 PostgreSQLを使用する主な利点は、安定性のために最小限のメンテナンス作業で済むことです。 PostgreSQLに基づくアプリケーションは、他のデータベース管理システムと比較して所有コストが低くなっています。独自のデータ型、インデックス型、関数型言語などを定義できるように拡張できるように設計されています。
PhpPgAdmin は、PostgreSQLデータベースの管理を簡単にするWebベースのGUIアプリケーションです。 phpPgAdminを使用すると、データベース、テーブル、およびエントリを追加、削除、および管理できます。特定のSQLクエリの実行、データベースのバックアップ、レコードの検索とインポートなど。
このチュートリアルでは、phpPgAdminをインストールする方法を学びます。 CentOS 7 。
前提条件
PotgreSQLとphpPgAdminのインストールを開始する前に、CentOSサーバーへのrootアクセス権があり、パッケージをダウンロードするためにインターネットに接続していることを確認してください。
サーバーにログインした後、以下のコマンドを実行して、centos7サーバーを最新のパッチで更新します。
# yum update
ファイアウォールとSELinuxが有効になっている本番環境でPostgreSQLとphpPgAdminをセットアップする場合は、postgreSQLとapacheに使用される次のデフォルトポートを許可してください。
# firewall-cmd --permanent --add-port=5432/tcp
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload
SELinuxで許可するには、以下のコマンドを実行します。
# setsebool -P httpd_can_network_connect_db 1
PostgreSQLのインストール
デフォルトでは、Centos 7にはPostgreSQLバージョン9.2.1が付属しており、現在の最新のPostgreSQLバージョンは9.4.5であるのに対し、単純なyumコマンドを使用してインストールできます。したがって、このチュートリアルでは、PostgreSQLYumリポジトリを使用して最新バージョンのPostgreSQLをインストールします。
PostgreSQLリポジトリのインストール
最新のPostgreSQLパッケージの最新のyumリポジトリを取得するには、PostgreSQLダウンロードページを開くか、リンクをコピーして以下のwgetコマンドを実行します。
# wget http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-redhat94-9.4-1.noarch.rpm

rpmリポジトリをダウンロードした後、以下のコマンドを使用してPostgreSQLのインストールを開始する前に、まずこのrpmリポジトリをインストールする必要があります。
# rpm -i pgdg-redhat94-9.4-1.noarch.rpm
# yum install postgresql94-server postgresql94-contrib

上記のコマンドを実行した後、いくつかの依存関係を含む次のパッケージがインストールされます。インストールプロセスを続行するには、「Y」キーを押して図のように続行します。
Dependencies Resolved
========================================================================================
Package Arch Version Repository Size
========================================================================================
Installing:
postgresql94-contrib x86_64 9.4.5-1PGDG.rhel7 pgdg94 610 k
postgresql94-server x86_64 9.4.5-1PGDG.rhel7 pgdg94 3.8 M
Installing for dependencies:
libxslt x86_64 1.1.28-5.el7 base 242 k
postgresql94 x86_64 9.4.5-1PGDG.rhel7 pgdg94 1.0 M
postgresql94-libs x86_64 9.4.5-1PGDG.rhel7 pgdg94 209 k
Transaction Summary
=======================================================================================
Install 2 Packages (+3 Dependent packages)
Total download size: 5.9 M
Installed size: 25 M
Is this ok [y/d/N]: y
インストールが完了したら、以下のコマンドを実行してデータベースを初期化します。
# /usr/pgsql-9.4/bin/postgresql94-setup initdb
Initializing database ... OK
データベースサービスの開始
PostgreSQLサービスを開始し、起動時に自動有効化するように構成するには、次のコマンドを実行してからステータスを確認します。PostgreSQLサービスは起動して有効になっている必要があります。
# systemctl start postgresql-9.4
# systemctl enable postgresql-9.4

PostgreSQLコマンドラインの使用
インストールプロセス中に、PostgreSQLデータベースの管理に使用される「postgres」という名前の新しいユーザーがデフォルトで作成されました。
ユーザーをPostgreSQLユーザーに切り替えて、データベースを管理するためのPostgreSQLコマンドラインインターフェイスに接続しましょう。
# su - postgres
-bash-4.2$ psql
psql (9.4.5)
Type "help" for help.
画像に示されているようにhelpコマンドを入力すると、PostgreSQLデータベースの使用に関するヘルプをさらに得ることができます。

次のコマンドを実行して、postgresユーザーのデフォルトのパスワードを更新します。
postgres=# \password postgres
Enter new password:*****
Enter it again:*****
次に、PostgreSQLコマンドラインを使用して新しいユーザーとデータベースを作成します。そのためには、以下のコマンドを実行してみましょう。
[root@centos-7 ~]# su - postgres
Last login: Sat Oct 10 19:26:10 BST 2015 on pts/1
-bash-4.2$ createuser kashif
-bash-4.2$ createdb testdb
-bash-4.2$ psql
postgres=# alter user kashif with encrypted password 'kashif123';
ALTER ROLE
postgres=# grant all privileges on database testdb to kashif;
GRANT
システム上に作成されたすべてのデータベースを一覧表示するには、「\list」または「\l」コマンドを使用し、データベースに接続するには、以下に示すように「\cdb_name」を使用します。

phpPgAdminのインストール
このセクションでは、WebベースのPostgreSQL管理ツールをセットアップします。これを行うには、最初に、以下のyumコマンドを使用して実行できるパッケージをインストールする必要があります。
# yum install phpPgAdmin httpd
このコマンドを実行すると、phpPgadminおよびapacheWebサーバーのインストールに必要ないくつかの依存関係が表示されます。したがって、先に進むには、「Y」キーを選択して変更を受け入れ、インストールのセットアップを完了します。
Dependencies Resolved
=======================================================================================
Package Arch Version Repository Size
=======================================================================================
Installing:
httpd x86_64 2.4.6-31.el7.centos.1 updates 2.7 M
phpPgAdmin noarch 5.1-2.rhel7 pgdg94 658 k
Installing for dependencies:
apr x86_64 1.4.8-3.el7 base 103 k
apr-util x86_64 1.5.2-6.el7 base 92 k
httpd-tools x86_64 2.4.6-31.el7.centos.1 updates 79 k
libzip x86_64 0.10.1-8.el7 base 48 k
mailcap noarch 2.1.41-2.el7 base 31 k
php x86_64 5.4.16-36.el7_1 updates 1.4 M
php-cli x86_64 5.4.16-36.el7_1 updates 2.7 M
php-common x86_64 5.4.16-36.el7_1 updates 563 k
php-pdo x86_64 5.4.16-36.el7_1 updates 97 k
php-pgsql x86_64 5.4.16-36.el7_1 updates 84 k
Transaction Summary
=======================================================================================
Install 2 Packages (+10 Dependent packages)
Total download size: 8.5 M
Installed size: 30 M
Is this ok [y/d/N]:y
phpPgAdmin構成
必要なパッケージをインストールした後、必要なパラメーターを使用してphpPgAdminを構成し、デフォルトではローカルホストからのみアクセスできるように、リモートロケーションからのアクセスを許可します。
# vim /etc/httpd/conf.d/phpPgAdmin.conf

次に、任意のエディターを使用して以下の構成ファイルを開き、変更を加える前に注意深く読んでください。ほとんどのパラメーターとこのファイルは十分に説明および構成されていますが、更新する必要があるのは次のパラメーターの一部だけです。
# vim /var/lib/pgsql/9.4/data/pg_hba.conf

# vim /var/lib/pgsql/9.4/data/postgresql.conf

# vim /etc/phpPgAdmin/config.inc.php
// Hostname or IP address for server. Use '' for UNIX domain socket.
// use 'localhost' for TCP/IP connection on this computer
$conf['servers'][0]['host'] = 'localhost';
// Database port on server (5432 is the PostgreSQL default)
$conf['servers'][0]['port'] = 5432;
$conf['owned_only'] = true;
変更を保存してから、PostgreSQLとApacheの両方のサービスを再起動します。
# systemctl restart postgresql-9.4
# systemctl restart httpd
phpPgAdminWebコンソール
以下のURLを開いて、以下に示すphpPgAdminコンソールにアクセスしてみましょう。
http:// your_servers_ip / phpPgAdmin /

PostgreSQLにログインするには、図のように左上のアイコンをクリックして、前に作成したクレデンシャルを入力します。

ログインに成功すると、phpPgAdminコンソールからデータベースを作成および管理するためのアクセス権を取得します。

結論
この記事の最後で、CentOS 7でのphpPgAdminを使用したPostgreSQLのインストールと構成について学習しました。それでも、PostgreSQLには多くの機能があり、それに取り組む必要があるため、これはPostgreSQLの世界での最初のステップでした。ポイントインタイムリカバリ、テーブルスペース、非同期レプリケーション、マルチバージョン同時実行制御(MVCC)、障害耐性のための先行書き込みログなど、多くの優れた機能があります。したがって、この記事がPostgreSQLでデータベース管理を開始するのに非常に役立つことを願っています。