# PostgreSQL
## 下载地址
PostgreSQL官网地址：
https://www.postgresql.org/

PostgreSQL官网下载地址：
https://www.postgresql.org/download/

CentOS版PostgreSQL下载安装地址：
https://www.postgresql.org/download/linux/redhat/

## 安装依赖包
### 安装Python
如果系统已经安装Python3，或不需要数据库支持Python3，则跳过该安装过程。

CentOS7默认软件源中没有Python3，要安装Python3需首先安装epel软件源。
```
[root@localhost ~] yum install epel-release
```

安装Python3.6。
```
[root@localhost ~] yum install python36
```

## 添加PostgreSQL软件件源地址
使用yum命令添加PostgreSQL软件源。
```
[root@localhost ~] yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
```

## 安装PostgreSQL
使用yum命令安装PostgreSQL。

```
[root@localhost ~] yum install postgresql12
[root@localhost ~] yum install postgresql12-server
[root@localhost ~] yum install postgresql12-contrib
```

初始化数据库。

```
[root@localhost ~] /usr/pgsql-12/bin/postgresql-12-setup initdb
```

配置开机启动与启动
```
[root@localhost ~] systemctl enable postgresql-12
[root@localhost ~] systemctl start postgresql-12
```

## 配置远程访问
### 修改密码
首先，切换到postgres用户。然后执行修改用户密码SQL语句。其中“postgres”为要修改密码的用户，“123456”为用户的密码。
```
[root@localhost ~] su - postgres
bash-4.2$ psql -c "alter user postgres with password '123456'"
```

### 修改配置文件

打开并编辑文件“/var/lib/pgsql/12/data/postgresql.conf”。将“#listen_addresses = 'localhost'”改为“listen_addresses = '*'”
![PostgreSQL远程连接配置](../static/images/db/postgresql_001.png)

打开并编辑文件“/var/lib/pgsql/12/data/pg_hda.conf”。在文件的末尾添加“host  all  all  0.0.0.0/0  md5”。
![PostgreSQL远程连接配置](../static/images/db/postgresql_002.png)

## 安装Python3支持包
如果不需要数据库Python3支持，则忽略该步骤。

```
[root@localhost ~] yum install postgresql12-plpython3
```
