1.解压
tar -xvf postgresql-10.5-1-linux-x64-binaries.tar.gz
将解压文件重命名
mv pgsql postgresql
2.创建用户和用户组
由于PostgreSQL无法在root用户下安装
所以我们在安装的时候需要先新建一个用户、用户组
新增postgres用户组:
groupadd postgres
新增postgres用户并且设置这个用户属于上面创建的postgres用户组:
useradd -g postgres postgres
修改postgres用户密码:(这里设置密码为postgres)
passwd postgres
3.在解压后的文件夹内创建pgsql数据目录
cd postgresql/
mkdir pgsql_data
由于是在root用户下解压的,需要使用普通用户(postgres)去初始化数据库,所以需要把解压的文件夹授权给对应的用户
chown -R postgres:postgres postgresql/
4.初始化数据库
切换为普通用户
su postgres
然后在bin目录下执行
./initdb -D /aifs01/iam/iam_soft/postgresql/pgsql_data
出现上述提示说明初始化成功,其中./pg_ctl -D /aifs01/iam/iam_soft/postgresql/pgsql_data/ -l logfile start
为pgsql数据库的启动命令
5.配置数据库参数
进入/postgresql/pgsql_data/ 目录,使用命令vim postgresql.conf,配置数据库参数(设置服务器监听整个网络,设置端口号为8432)。
6.配置对数据库的访问控制
进入/postgresql/pgsql_data/目录,使用命令vim pg_hba.conf,新增节点ip地址和本机ip。
host all all ip/32 trust
host all all ip/32 trust
host all all 0.0.0.0/0 md5
7.启动数据库
在postgresql/bin目录下
./pg_ctl -D /aifs01/iam/iam_soft/postgresql/pgsql_data -l logfile start
8.查看进程是否存在
ps -ef | grep postgres
9.停止数据库
./pg_ctl -D /aifs01/iam/iam_soft/postgresql/pgsql_data/ -l logfile stop
10.登录数据库
./psql -h ip -d postgres -p 8432
11.创建数据库
CREATE USER kong;
ALTER USER kong WITH PASSWORD 'kong' ;
ALTER USER postgres WITH PASSWORD 'postgres';
CREATE DATABASE kong OWNER kong;
\q退出
遇到的问题:
1.在执行启动命令的时候提示 psql.bin: FATAL: no pg_hba.conf entry for host “ip”, user “postgres”,
database “postgres”, SSL off
完成后重新启动pgsql然后登录成功
./pg_ctl -D /aifs01/iam/iam_soft/postgresql/pgsql_data/ -l logfile restart
2.在创建完成后,使用Navicat连接pgsql发现报错no pg_hba.conf entry for host
解决办法:
需要在PostgreSQL数据库的安装目录下找到/pgsql_data/pg_hba.conf,找到“# IPv4 local connections:”
在pg_hba.conf文件内加入
host all all 0.0.0.0/0 md5