注:我自己用的是阿里云源
首先到官网找到适合自己的版本
开始安装客户端
yum install postgresql12
安装服务端
yum install postgresql12-server
待以上都安装成功之后需要初始化数据库,在初始化数据库的时候默认的数据库地址是:
因为后续的配置文件都在这个目录里,所以在初始化之前,你可以根据实际需要进行修改
开启远程连接
修改postgresql.conf文件(在刚刚上面初始化里的数据库地址),找到#listen_addresses = 'localhost' 把前面的注释去掉 修改为 listen_addresses = '*' 保存
修改pg_hba.conf文件,增加数据库访问权限,增加的一条意思是 允许来自192.168.111.*网段的 postgres用户 访问所有数据库
启动数据库
设置用户postgres密码
注意如果有防火墙开放的话 记得关闭防火墙或开放防火墙端口哦,端口:5432
至此 postgresql已经安装成功且可以远程连接访问了
续
因为在使用到UUID的时候 发现是一个插件里的功能,但默认安装的时候是不带插件的,所以 我们需要独立安装属于自己对应版本的插件
yum search contrib 找到自己对应的安装包,然后安装
安装完成后进入/usr/pgsql-12/share/extension/ 查看所有可用的插件
如果要启用某个插件,直接
create extension pgcrypto
可以安装就可以卸载:
drop extension pgcrypto(插件的名字) 就可以卸载插件了
数据库备份与还原
目前提供三种备份还原机制1. SQL转储 2.文件系统级别备份 3.连续归档和时间点恢复(PITR)
其中1.SQL转储转储的文件较小,因为只保留了重建索引的命令而不是备份索引 2.文件系统级别备份 顾名思义就是直接找到这个目录备份这个目录就好了,这个速度快,但数据一致性差,建议在系统可以有接近零访问的系统使用 3.这个方法比较麻烦,但有很明显的有点就是时间点恢复等等
1.SQL转储
su postgresql
pg_dump DBName > DBName.sql
2.文件系统级别备份
找到数据库文件的文件系统路径,我这里12版本的路径是:/var/lib/pgsql/12/data
示例:cp /var/lib/pgsql/12/data /var/lib/pgsql/12/data_20200808
注意点:不停机的备份,停机的备份
不停机的备份还原:还原备份文件里的 base文件夹到当前数据库文件目录里即可(这个思路比较野,官方未说明,自己尝试)
停机的备份:直接还原这个目录即可