概览:
Install
各个版本下载点:PostgreSQL binaries
以version10.9为例
1 | wget http://sbp.enterprisedb.com/getfile.jsp?fileid=11696 |
设置环境变量,仅供参考。PGDATA:PostgreSQL数据库簇路径。
1 | PGSQL_HOME="pgsql路径" # /home/mardan/PG_database/pgsql |
Check:
1 | postgres --version |
输出:postgres (PostgreSQL) 10.9
即为正确
Using
在你能做任何事情之前,你必须在磁盘上初始化一个数据库存储区域。我们称之为一个数据库集簇(SQL标准使用的术语是目录集簇)。一个数据库集簇是被一个运行数据库服务器的单一实例所管理的多个数据库的集合。在初始化之后,一个数据库集簇将包含一个名为postgres
的数据库,它表示被功能、用户和第三方应用所使用的默认数据库。数据库服务器本身并不要求postgres
数据库存在。另一个在初始化过程中为每一个集簇创建的数据库被称为template1
。顾名思义,它将被用于创建后续数据库的模板;它不应该被用于实际工作。
在文件系统术语中,一个数据库集簇是一个单一目录,所有数据都将被存储在其中。我们称它为数据目录或数据区域。在哪里存储你的数据完全由你选择。没有默认的位置,不过/usr/local/pgsql/data
或/var/lib/pgsql/data
位置比较流行。要初始化一个数据库集簇,使用和PostgreSQL一起安装的命令initdb。你的数据库集簇的文件系统位置由-D
选项指定,也即上面的环境变量PGDATA.
1 | initdb |
log信息:

连接数据库,先查看服务器IP地址
1 | ifconfig |
在客户机安装pgAdmin。并启动之,会在浏览器启动会话,如下图。

点击Servers选择创建服务器。

填写名称,只作为本地标识。
打开Connection标签
- 填写ip,以我为例:192.168.19.130
- 端口,默认5432
- 用户名,服务器用户名
- 密码,服务器,前面用户名对应的密码
启动postgresql服务


Problem
- 远程访问
- 用户不在信任列表
如果出现以下错误,pgAdmin重新连接。

就需要设置对服务器端访问网段添加信任。先Ctrl+C关闭Postgresql数据库。然后打开PGDATA目录,编辑postgresql.conf文件。将行开头都#去掉,将行内容修改为listen_addresses='*'来允许数据库服务器监听来自任何主机的连接请求,然后再次启动Postgresql,pgAdmin重新连接。

再次关闭Postgresql.
编辑PDGATA下的pg_hba.conf文件.
在其中以下段中
1 | # TYPE DATABASE USER ADDRESS METHOD |
加入
1 | host all all 192.168.19.1/24 trust |
最终加在以下文字第8行。
1 | # TYPE DATABASE USER ADDRESS METHOD |
启动Postgresql,pgAdmin重新连接。
Reference
- PostgreSQL 全球开发组 PostgreSQL 9.6.0 手册 中文手册版本:1.0 最后更新时间:2017-12-17