CentOS6 在线安装PostgreSQL10

本文主要通过实际案例介绍如何在CentOS6环境中在线安装PostgreSQL10,安装环境需具备能够使用yum在线安装功能。具体安装步骤如下,

1 下载对应版本的PGDG文件 
https://yum.postgresql.org/repopackages.php页面找到对应的版本,这里使用https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-6-x86_64/pgdg-centos10-10-2.noarch.rpm

2 安装上述PGDG文件

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

3 yum list列出可用的postgresql资源

yum list postgresql*

4 安装postgresql-server,其他工具可按需安装

yum install -y postgresql10-server.x86_64

5 数据库初始化

service postgresql-10 initdb

6 启动数据库服务

service postgresql-10 start
chkconfig postgresql-10 on

7 连接psql客户端

[root@cent-1 ~]# su - postgres
-bash-4.1$ psql
psql (10.1)
Type "help" for help.

postgres=# 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
(3 rows)

至此,PostgreSQL 10的安装已经完成,后面可以尝试不同的命令了,下面列出几个常用的命令,仅供参考:

//创建数据库
-bash-4.1$ createdb test_db
//删除数据库
-bash-4.1$ dropdb test_db

//创建用户
-bash-4.1$ createuser test_user
//删除用户
-bash-4.1$ dropuser test_user

CREATE USER admin WITH PASSWORD 'admin123';
CREATE DATABASE test_db;
GRANT ALL PRIVILEGES ON DATABASE test_db to admin;


运行此命令vi /var/lib/pgsql/10/data/postgresql.conf  ,找到端口进行修改,

在修改pg的端口号port改成2381后重启完数据库

service postgresql-10 stop
service postgresql-10 start
 

这个时候psql进库,还是进不去,报以下的错误


[postgres@node2 data]$ psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432

这时,进数据库有两种方式
1、psql 后面加上端口号
[postgres@node2 data]$ psql -p 2381 
psql (9.6.1)
Type "help" for help.

postgres=#
2、在环境变量/home/postgres/.bash_profile中加上一句
export PGPORT=5435
然后
[postgres@node2 ~]$ source ~/.bash_profile
[postgres@node2 ~]$ psql
psql (9.6.1)
Type "help" for help.

postgres=#
这样就可以直接进库了.

如果远程访问的话,还要做一步允许远程ip访问的配置

vi /var/lib/pgsql/10/data/pg_hba.conf  

加上这么一个配置

host    all             all             58.101.195.1/24         md5

这样还是登录不了,那么

vi /var/lib/pgsql/10/data/postgresql.conf

放开以下这个注释,用允许以md5加密密码的方式的方式登录

password_encryption = md5               # md5 or scram-sha-256

再次重启下数据库,最终测试连接成功。

原文地址:https://www.cnblogs.com/gradven/p/8719771.html