尝试在CentOS7.3上安装PostgreSQL9.6.3

环境

    • OS:CentOS 7.3-1611 64bit Minimal

 

    PostgreSQL:9.6.3

安装

安装PostgreSQL

我在 yum 上查看了一下能否从 base 仓库安装,结果发现版本是 9.2,过于旧了。

$ yum list | grep postgresql-server
postgresql-server.x86_64                    9.2.18-1.el7               base

因此,请按照官方网站上的指示,先添加存储库,然后进行安装。

# pgdg96リポジトリを追加する
$ sudo yum install -y https://yum.postgresql.org/9.6/redhat/rhel-7-x86_64/pgdg-redhat96-9.6-3.noarch.rpm

# PostgreSQLサーバーをインストールする
$ sudo yum install -y postgresql96-server postgresql96-contrib

确认版本

我会检查安装并确认版本,看是否安装成功。

$ psql --version
psql (PostgreSQL) 9.6.3

由于显示为9.6.3,说明安装成功。

初始化

创建一个称为数据库群集的DB集合体,以便初始化数据库。

$ sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
Initializing database ... OK

操作步骤

服务的启动

$ systemctl start postgresql-9.6.service

服务的自动启动 de

我們將設定在操作系統啟動時自動啟動PostgreSQL。

$ systemctl enable postgresql-9.6.service

创建用户

在执行`psql -l`命令时,系统提示找不到该角色的存在。

$ psql -l
psql: FATAL: ロール"{ログインユーザー名}"は存在しません

在DB初始化时会创建一个名为postgres的用户,所以要设置密码进行登录,并创建与之前登录的用户同名的角色。

# `postgres` ユーザーにパスワードを設定する
$ sudo passwd postgres

# `postgres` ユーザーでログインする
$ su - postgres

# `postgres` へ接続する
$ psql
psql (9.6.3)
"help" でヘルプを表示します.

# ロールを作成する
postgres=# create role {ユーザー名} login createdb password '{パスワード}';
CREATE ROLE

在创建角色后,我们需要将用户返回到之前登录的状态,并确认他们是否能够操作数据库。

# DBを切断する
postgres=# \q

# `postgres` ユーザーをログアウトする
$ exit
ログアウト

# DBの一覧を出力する
$ psql -l
                                         データベース一覧
   名前    |  所有者  | エンコーディング |  照合順序   | Ctype(変換演算子) |      アクセス権       
-----------+----------+------------------+-------------+-------------------+-----------------------
 postgres  | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | 
 template0 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
 template1 | postgres | UTF8             | ja_JP.UTF-8 | ja_JP.UTF-8       | =c/postgres          +
           |          |                  |             |                   | postgres=CTc/postgres
(3 行)

我现在可以顺利地进行操作了。

停止服务

$ systemctl stop postgresql-9.6.service

其他的操作方式

请参考Mac版本,关于DB的创建和连接、表格的创建和基本命令等内容都与之相同。

请查阅以下链接。

    • PostgreSQL: Linux downloads (Red Hat family)

 

    • CentOS 7にPostgreSQL最新版をインストール – 働きたくないゆとりの備忘録

 

    • PostgreSQL初期設定 in EC2 – 珈琲駆動開発

 

    UbuntuでPostgreSQLをインストールからリモートアクセスまでの手順 – Qiita
广告
将在 10 秒后关闭
bannerAds