切换到root用户
su root
在CentOS 7上安装PostgreSQL 10
PostgreSQL为所有Linux平台发布rpm包,而且它们的软件包比OS资源库中的软件包更新. 所以,你需要通过安装repo rpm来在你的机器上添加仓库。
rpm -Uvh https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
yum list postgresql10*
使用yum命令安装PostgreSQL 10。
yum install -y postgresql10-server postgresql10
初始化PostgreSQL服务器
安装PostgreSQL之后,您需要在首次使用之前对其进行初始化。
/ usr / pgsql-10 / bin / postgresql-10-setup initdb
PostgreSQL数据通常位于/ var / lib / pgsql / 10 / data /目录。
启动PostgreSQL服务器
要启动PostgreSQL服务,请运行:
systemctl start postgresql-10
要在系统启动时启用PostgreSQL,请运行:
systemctl enable postgresql-10
要检查PostgreSQL服务的状态,请运行:
systemctl status postgresql-10
Output:
● postgresql-10.service - PostgreSQL 10 database server
Loaded: loaded (/usr/lib/systemd/system/postgresql-10.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2017-10-23 17:54:14 UTC; 6min ago
Main PID: 1557 (postmaster)
CGroup: /system.slice/postgresql-10.service
├─1557 /usr/pgsql-10/bin/postmaster -D /var/lib/pgsql/10/data/
├─1560 postgres: logger process
├─1562 postgres: checkpointer process
├─1563 postgres: writer process
├─1564 postgres: wal writer process
├─1565 postgres: autovacuum launcher process
├─1566 postgres: stats collector process
└─1567 postgres: bgworker: logical replication launcher
Oct 23 17:54:14 post systemd[1]: Starting PostgreSQL 10 database server...
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.578 UTC [1557] LOG: listening on IPv6 address "::1", port 5432
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.578 UTC [1557] LOG: listening on IPv4 address "127.0.0.1", port 5432
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.584 UTC [1557] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.587 UTC [1557] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432"
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.597 UTC [1557] LOG: redirecting log output to logging collector process
Oct 23 17:54:14 post postmaster[1557]: 2017-10-23 17:54:14.597 UTC [1557] HINT: Future log output will appear in directory "log".
Oct 23 17:54:14 post systemd[1]: Started PostgreSQL 10 database server.
使用netstat命令确认PostgreSQL在端口5432上侦听。
netstat -antup | grep 5432
输出:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 21051 / postmaster
tcp6 0 0 ::: 5432 ::: * LISTEN 21051 / postmaster
访问PostgreSQL服务器 要创建数据库,请以postgres(Linux用户)身份登录。从root用户登录或重置postgres用户的登录密码
#su -l postgres
访问数据库使用psql命令,一个用于PostgreSQL数据库的交互式前端终端。
$ psql
输出:
-bash-4.2$ psql
psql (10.0)
Type "help" for help.
postgres=#
为postgres(数据库管理员)用户设置密码。 就这样。您已成功在CentOS 7 / RHEL 7上安装PostgreSQL 10。
psql 访问远程数据库
切换到root
psql -d testDB -h 10.1.2.11 -p 5432 -U postgres
如果只是安装postgresql客户端,用以访问其他数据
查看安装包
yum list postgresql10*
可以看到:
Available Packages
postgresql10.x86_64 10.3-1PGDG.rhel7 pgdg10
postgresql10-contrib.x86_64 10.3-1PGDG.rhel7 pgdg10
postgresql10-debuginfo.x86_64 10.3-1PGDG.rhel7 pgdg10
postgresql10-devel.x86_64 10.3-1PGDG.rhel7 pgdg10
postgresql10-docs.x86_64 10.3-1PGDG.rhel7 pgdg10
postgresql10-libs.x86_64 10.3-1PGDG.rhel7 pgdg10
执行安装postgresql10.x86_64 (仅客户端)
yum install -y postgresql10.x86_64
安装完毕,执行远程访问某个数据
psql -d testDB -h 10.1.1.1 -p 5432 -U postgres