赞
踩
1)英文文档:https://www.postgresql.org/docs/12/installation.html
2)中文文档:http://www.postgres.cn/v2/document
3)在CentOS 7上安装&配置PostgreSQL 12
正文
安装路径为/home/pg/,登录 root,创建用户 pg,并设置密码
# 添加用户
user add
# 为用户添加密码
passwd 用户名
1、 解压
tar -zxvf postgresql-12.2.tar.gz
2、 依次执行命令
需要的话,make 可以改为 gmake
./configure make su make install adduser pg mkdir /home/pg/data chown pg /home/pg/data su pg /usr/local/pgsql/bin/initdb -D /home/pg/data /usr/local/pgsql/bin/postgres -D /home/pg/data >logfile 2>&1 & /usr/local/pgsql/bin/createdb test /usr/local/pgsql/bin/psql test
./configure 是检查当前环境能否安装 PG,以下是我遇到的报错和解决方案,若没有,请前往下载对应的包
报错1:configure: error: no acceptable C compiler found in $PATH:
解决:
yum install gcc
报错2:configure: error: readline library not found
解决:
yum install readline-devel
离线环境需要下载对应的包
由于服务器已经安装过较新版本的 readline-6.0.4,导致依赖包无法安装,遂降级安装
rpm -Uvh --oldpackage readline-6.0-3.el6.x86_64.rpm
报错3:error: zlib library not found
解决方法
yum install zlib-devel
3、 启动或重启server
* 先确保是切换到了/pgsql/bin目录下,并且切换Linux用户postgres
cd /usr/local/pgsql/bin/
su postgres
即
启动server:
./pg_ctl start -D /home/pg/data
如果启动成功,显示信息如下
至此,PostgreSQL安装成功。
重启server:
./pg_ctl restart -D /home/pg/data
如果重启成功,显示信息如下
4、 新建数据库和可以登录数据库的用户密码
* 确保是在/usr/local/pgsql/bin/目录下
创建数据库:
./createdb mydb
创建用户(如用户名为lin,密码为LinBug)有两种方式,
1) CREATE USER或CREATE ROLE:
CREATE USER是CREATE ROLE的一个别名。 唯一的区别是CREATE USER
命令缺省是LOGIN
, 而CREATE ROLE
命令缺省是NOLOGIN
。
先进入默认的postgres数据库:
./psql
然后执行:
CREATE USER jfwg WITH PASSWORD 'jfwg';
创建成功提示如下
2) pg封装的命令方式:
./createuser -P jfwg
这会提示你输入新建用户的密码,重复输入密码后,创建成功
5、访问数据库
* 确保在/usr/local/pgsql/bin/目录下,
以默认用户名访问默认数据库(默认的用户名和数据库名都是postgres):
./psql
于是进入PG的交互终端psql
以名为lin的角色登录名为mydb的数据库:
./psql test -U jfwg
可以看出,当psql终端的提示符为**=#时,表示当前登录的是超级用户,而当提示符为=>**时则为普通用户
6、远程访问数据库设置
* 远程访问数据库的认证方式主要有很多方式,我只设置基于TCP/IP连接的trust认证方式
需设置两个配置文件,
1)修改配置文件postgresql.conf,
vim /home/pg/data/postgresql.conf
修改监听地址:
#listen_addresses=’localhost’
#将上面这行改成如下
listen_addresses=’*’
2)修改配置文件/home/pg/data/pg_hba.conf:
vim /home/pg/data/pg_hba.conf
添加一条IP授权记录(如192.168.2.23),可以对一个网段授权
# 这是在/home/pg/data/pg_hba.conf文件里加
# IPv4 myhost connections:
host all all 192.168.2.0/24 trust
即
当然,可以设置所有网段IP可以访问:
# 这是在/home/pg/data/pg_hba.conf文件里加
# IPv4 remote address connections:
host all all 0.0.0.0/0 trust
即
设置完需要重启数据库才能生效。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。