PostgreSQL(2)-役割と認証-

前回、PostgreSQLのインストールを実施しました。

では、早速、データベースに接続してみようと思います。

sudo psql

と接続を試みたところ、

psql: FATAL: password authentication failed for user "root"

と表示されました。

権限が無い様なので、ユーザーを変更します。

su – postgres

postgresユーザーに変更されました。

それでは、もう一度、

sudo psql

psql (9.3.11)

と接続できたようです。

下記コマンドを実行すると、

\du

役割一覧が表示されます。

現在は、postgresのみ割り当てられているので、新規に追加してみます。

CREATE ROLE samplesql LOGIN CREATEDB PASSWORD '******';

もう一度、役割一覧を見てみると、samplesqlが追加されています。

posgresと違い、samplesqlはCreate DBの役割属性のみ割り当てられています。

データベースを作成してみます。

CREATE DATABASE samplesql OWNER samplesql;

CREATE DATABASE

下記コマンドでデータベースを一覧を表示します。

\l

新規にデータベースが作成された事が確認できます。

作成したDBに接続してみます。

psql --username=samplesql --password --dbname=******

psql: FATAL: Peer authentication failed for user "samplesql"

Peer認証である為、接続できません。

下記のファイルを編集して認証の設定を変更します。

/etc/postgresql/9.3/main/pg_hba.conf

参考書籍

SQL 第2版 ゼロからはじめるデータベース操作 (プログラミング学習シリーズ)

PostgreSQL(1)-インストール-

リレーショナルデータベースという種類のデータベースがあります。

アルファベットで書くとRelational Databaseとなります。

英語の意味通り、「関係データベース」とも呼ばれます。

列、行からなる表の形式でデータは管理されております。

SQL言語を使用して、データベースを操作する事が可能です。

リレーショナルデータベースとして下記のようなデータベースがあります。

①Oracle Database

②SQL Server

③DB2

④PostgreSQL

⑤MySQL

この中で、今回はPostgreSQLを使用したいと思います。

まずは、PostgreSQLのインストールです。

下記のコマンドを実行して、PostgreSQLをインストールします。

sudo apt-get install postgresql

次にPHP言語からデータベースの操作もしたいので、PHP5をインストールします。

まずは下記のコマンドを実行して、apache2をインストールします。

sudo apt-get install apache2

次に下記のコマンドを実行して、PHP5をインストールします。

sudo apt-get install PHP5

PHP5がインストールされているか確認を実施します。

下記コマンドを実行して、対話シェルを実行します。

sudo php5 -a

php > echo "abcde\n";

abcde

php > echo "abcde\n"

PHP言語が動作している事がわかります。

次にapacheのルートフォルダ(\var\www\)にPHPファイルを作成して、ブラウザ上で表示できれば、動作確認完了です。