GNU/Linux >> Linux の 問題 >  >> Debian

Debian9およびDebian8にPostgreSQL11/10をインストールする方法

PostgreSQL(単にPostgresと呼ばれる)は、オブジェクトリレーショナルデータベース管理システム(ORDBMS)であり、Linux、Microsoft Windows、FreeBSD、HP-UX、AIX、Solaris、MacOSなどの多くのプラットフォームで利用できます。

PostgreSQLは、個人のボランティアや企業のグループであるPGDG(PostgreSQL Global Development Group)によって開発された、無料のオープンソースのパーミッシブソフトウェアライセンスであるPostgreSQLライセンスの下でリリースされています。

この投稿では、Debian 9 /Debian8へのPostgreSQL11/10のインストールについて説明します。

PostgreSQLリポジトリを追加

PostgreSQLはDebianベースのプラットフォーム用のdebパッケージを公開しており、それらのパッケージはOSベースリポジトリで利用可能なものよりも新しいものです。

PostgreSQL署名キーをインポートします。

wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O- | sudo apt-key add -

PostgreSQLリポジトリ情報を/etc/apt/sources.list.d/postgresql.listに追加します ファイル。

### Debian 9 ### 

echo "deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

### Debian 8 ### 

echo "deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list

PostgreSQLのインストール

PostgreSQLリポジトリを追加したら、次のコマンドを実行してリポジトリインデックスを更新します。

sudo apt-get update

apt-getコマンドを使用してPostgreSQLをインストールします。

### PostgreSQL 11 ###

sudo apt install -y postgresql-11

### PostgreSQL 10 ###

sudo apt install -y postgresql-10

PostgreSQLサービスの制御

PostgreSQLサービスを開始するには、次を実行します:

sudo systemctl start postgresql

PostgreSQLサービスを停止するには、次を実行します:

sudo systemctl stop postgresql

PostgreSQLサービスを再起動するには、次を実行します:

sudo systemctl restart postgresql

PostgreSQLサービスのステータスを確認するには、次のコマンドを実行します。

sudo systemctl status postgresql

出力:

 postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sat 2019-02-23 01:49:54 EST; 23s ago
 Main PID: 2586 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/postgresql.service

Feb 23 01:49:54 server systemd[1]: Starting PostgreSQL RDBMS...
Feb 23 01:49:54 server systemd[1]: Started PostgreSQL RDBMS.

PostgreSQLサーバーの構成

PostgreSQLはループバックアダプタ(127.0.0.1)でのみリッスンします 。外部でホストされているアプリケーションがデータベースに接続する必要がある場合があります。そのためには、すべてのアダプターをリッスンするようにPostgreSQLを構成する必要があります。

### PostgreSQL 11 ###

sudo nano /etc/postgresql/11/main/postgresql.conf

### PostgreSQL 10 ###

sudo nano /etc/postgresql/10/main/postgresql.conf

listen_addressesを設定します *へ または<IPAddress>

listen_addresses = '*'

PostgreSQLサービスを再起動します。

sudo systemctl restart postgresql

PostgreSQLがポート5432でリッスンしていることを確認します netstatコマンドを使用します。

sudo netstat -antup | grep 5432

出力:

tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      3712/postgres
tcp6       0      0 :::5432                 :::*                    LISTEN      3712/postgres

読む Ubuntuにnetstatコマンドが見つかりません–クイックフィックス

PostgreSQLへのアクセス

データベースを管理するには、postgresユーザーとしてログインする必要があります。

sudo su -l postgres

psqlを使用してデータベースにアクセスします 指図。これは、PostgreSQLデータベースを操作するためのインタラクティブシェルです。 。

psql

出力:

postgres@server:~$ psql
psql (11.2 (Debian 11.2-1.pgdg90+1))
Type "help" for help.

postgres=#
の場合は「help」と入力します

セキュアなPostgreSQLデータベース

Linuxユーザー(postgres)のパスワードを設定します DB管理者(postgres)

Linuxユーザーのパスワードを設定します(postgres):

sudo passwd postgres

出力:

raj@mydebian:~$ sudo passwd postgres
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

DB管理者のパスワードを設定します(postgres):

su - postgres
psql

psqlシェル上 、以下のコマンドを実行して、データベース管理者パスワードを変更します。

postgres=# \password

または

postgres=# \password postgres

出力:

postgres=# \password postgres
Enter new password:
Enter it again:

PostgreSQLDBコマンド

データベースを作成するための構文は次のとおりです。

$ su - postgres

$ createdb test

ユーザー(raj)を作成するための構文は次のとおりです。

$ psql test

test=# CREATE USER raj WITH SUPERUSER LOGIN PASSWORD 'password';

新しいユーザーが作成されたかどうかを確認します。

test=# \du

出力:

test=# \du
                                   List of roles
 Role name |                         Attributes                         | Member of
-----------+------------------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 raj       | Superuser                                                  | {}

ユーザー「raj」でログインします。

psql -h localhost -d test -U raj

出力:

psql (11.2 (Debian 11.2-1.pgdg90+1))
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

test=#
の場合

データベースを一覧表示するための構文:

test=# \l

出力:

test=# \l
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 test      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
(4 rows)

それで全部です。 PostgreSQL11/10をDebian9/Debian8に正常にインストールしました。


Debian
  1. Debian9にTomcat8.5をインストールする方法

  2. Debian9にMongoDBをインストールする方法

  3. Debian 11 /Debian10にPostgreSQLをインストールする方法

  1. Debian9にPostgreSQLをインストールする方法

  2. Debian9にNginxをインストールする方法

  3. Debian9にApacheをインストールする方法

  1. Debian9にJenkinsをインストールする方法

  2. Debian9にWebminをインストールする方法

  3. Debian9にTomcat9をインストールする方法