尝试在CentOS7上安装并进行基本配置PostgreSQL10

我在Docker的CentOS7上安装和进行了postgresql的初始设置,下面将写出这个步骤。

只需要提供一个选项:前提

假定已经完成了Docker的安装和容器的创建,本文不再提及Docker。因为网络上有很多相关信息,请自行查询。

建置步驟

环境

    • CentOS 7.5

 

    PostgreSQL 10.4

安装

添加存储库

# sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

客户端和服务器的安装。

# yum -y install postgresql10 postgresql10-server

设置命令的路径

# echo "PATH=/usr/pgsql-10/bin:$PATH" >> ~/.bashrc
# source ~/.bashrc

对数据库进行初始化 in Chinese

# postgresql-10-setup initdb

只要出现“OK”表示就说明成功了!

启动数据库

# systemctl start postgresql-10   // 起動
# systemctl enable postgresql-10  // 自動起動

操作DB

通过PostgreSQL访问

# su - postgres
# psql
// 以下のプロンプトになれば成功!
postgres=#

创建用户

我們來創建一個只有創建數據庫權限的用戶,以admin作為用戶名和密碼。

postgres=# CREATE ROLE admin WITH LOGIN PASSWORD 'admin' CREATEDB;
postgres=# \du   // 作成できたか確認

                                   List of roles
 Role name |                         Attributes                         | Member of 
-----------+------------------------------------------------------------+-----------
 admin     | Create DB                                                  | {}

创建数据库

创建一个名为admin的数据库,拥有管理员admin作为所有者。

postgres=# CREATE DATABASE admin OWNER admin;
postgres=# \l   // 作成できたか確認

                             List of databases
   Name    |  Owner   | Encoding  | Collate | Ctype |   Access privileges   
-----------+----------+-----------+---------+-------+-----------------------
 admin     | admin    | SQL_ASCII | C       | C     | =Tc/admin            +
           |          |           |         |       | admin=CTc/admin

对于数据库对象的权限

给予admin用户对admin数据库的所有权限。

postgres=# GRANT ALL ON DATABASE admin TO admin\;

从PostgreSQL导出

postgres=# \q

更改认证方式

默认情况下,只允许对等体和标识进行认证,因此在这种情况下需要在操作系统中创建管理员用户。因此,注释掉默认设置,并设置基于MD5加密的密码认证。

# vi /var/lib/pgsql/10/data/pg_hba.conf   // 以下のように編集

   # TYPE  DATABASE        USER            ADDRESS                 METHOD
   # "local" is for Unix domain socket connections only
-  local   all             all                                     peer
+  local   all             all                                     md5

读取更改

# systemctl reload postgresql-10

使用admin用户进行访问

# psql -U admin

Password for user admin: 
psql (10.4)
Type "help" for help.

admin=>

如果能达到这样的状态,就是成功了!

从安装PostgreSQL到基本设置完成。

请阅读以下内容并提供一个合适的选项:

参考:

    • PostgreSQL: Linux downloads (Red Hat family)

 

    PostgreSQL: Documentation: 10: CREATE ROLE
广告
将在 10 秒后关闭
bannerAds