时隔之前技术选型已经过去了一年多,当时11才出,10也出来没多久,所以我们选择了用得最多的9.6 。现在看来9.6的功能集有些小了,有些好用的功能,12才有,不过beta版才出没多久,我们先用11吧。感觉,10是对集群的一个重大变革,11在这条路上又走远了一步。虽然我们现在还不用,不过我感觉,11,12会是比较好的一些版本。所以,我们还是先记录9.6的安装,再找时间对升级到11进行操作和测试。
这里选用的是postgresql 9.6 centos7 x86_64的版本,按照官方的安装文档进行安装(https://www.postgresql.org/download/linux/redhat/ )。
安装过程
远程安装文件:
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安装客户端:
yum install postgresql96
安装数据库服务:
yum install postgresql96-server
官网的说明如下:
These distributions all include PostgreSQL by default. To install PostgreSQL from these repositories, use the yum command on RHEL 5,6 and 7。大意是说:这些分发的组件包含了PostgreSQL的默认内容,在RHEL5,6,7上安装可以使用yum命令。
由于Red Hat家族套件的规则限制,PostgreSQL安装过程没办法自动启动或者自动初始化数据库。为了初始化完成数据库,需要执行如下两步:
/usr/pgsql-9.6/bin/postgresql96-setup initdb # 初始化数据库
systemctl enable postgresql-9.6 # 配置开机启动
systemctl start postgresql-9.6 # 启动服务
使用
上面安装过后,怎么连接呢?
设置密码
安装过程中其实创建了一个postgres用户,postgresql的命令行psql需要在该用户下执行。所以,切换到该用户
su - postgres
psql
ALTER USER postgres WITH PASSWORD '123456';
\q # 退出
允许远程连接
vim /var/lib/pgsql/9.6/data/postgresql.conf
listen_addresses = '*'
信任远程连接
vim /var/lib/pgsql/9.6/data/pg_hba.conf
这个文件是postgre管理自己远程连接新人策略的,默认的如下
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
我们添加一条:
host all all 0.0.0.0/0 md5
意思是信任所有地址的连接,详细意思,注释有说明,我这里就不说了,我还没看呢。
修改配置文件
经过上面配置,我们已经可以远程连接数据库了(记得配置或者关闭防火墙哈)。根据上面的配置,我们用Navicat连接。
用户名:postgres
密码:123456
数据库名:postgres(这是默认带的)
端口:5432(这是默认端口)
测试连接,成功,好啦,到此结束。
备注
经测试postgresql10的安装及配置过程也与此类似。官网https://www.postgresql.org/download/linux/redhat/ 的引导还是非常好的。
网友评论