统信系统上的安装:
-
创建目录
[root@localhost ~]# cd /home/
[root@localhost home]# mkdir postgres
-
上传文件
-
在当前目录解压,并安装依赖包
tar zxvf postgresql-15.4.tar.gz
mv postgresql-15.4 postgresql
rpm -ivh --force --nodeps *.rpm
-
预编译
./configure --prefix=/home/postgres/postgresql
-
进行编译安装
make
# 如果编译出错之后再编译可以先执行命令删除之前的编译文件
make distclean
make install
-
创建用户和用户组
groupadd -g 2000 postgres
useradd -g 2000 -u 2000 postgres
id postgres
#如果出现2000组不在
[root@localhost postgresql]# groupmod -g 2000 postgres
[root@localhost postgresql]# usermod -u 2000 -g 2000 postgres
[root@localhost postgresql]# id postgres
用户id=2000(postgres) 组id=2000(postgres) 组=2000(postgres)
-
创建相关目录并授权
mkdir data log
chown -R postgres.postgres postgresql
-
设置环境变量
vi /etc/profile
# 数据库安装目录
export PGHOME=/home/postgres/postgresql
# 数据库存放数据目录
export PGDATA=$PGHOME/data
export PGLIB=$PGHOME/lib
export LC_ALL=en_US.UTF8
export LANG=en_US.UTF8
PATH=$PGHOME/bin:$PATH
export PATH
-
刷新环境变量
source /etc/profile
-
初始化 (操作postgreSQL不能使用root用户)
[root@localhost postgres]# su – postgres
[postgres@localhost ~]$ cd postgresql/bin/
initdb -D ../data/
-
启动数据库
[postgres@localhost bin]$ pg_ctl -D /home/postgres/postgresql/data/ -l logfile start
waiting for server to start.... done
server started
-
修改数据库相关配置
# 监听IP,代表监听所有IP地址
vi /home/postgres/postgresql/data/postgresql.conf
listen_addresses = '*'
#认证配置文件,配置了允许哪些IP访问数据库,及认证方式等信息
vi /home/postgres/postgresql/data/pg_hba.conf
# 在内容的最后添加一行
host all all 0.0.0.0/0 md5
-
重启数据库命令
pg_ctl -D /home/postgres/postgresql/data/ -l logfile restart
-
修改初始用户密码
[postgres@localhost data]$ psql -p 5432 -U postgres -d postgres
psql (15.4)
Type "help" for help.
postgres=# ALTER USER postgres WITH PASSWORD 'postgres';
ALTER ROLE
-
使用navicate连接
-
添加新用户和创建数据库
postgres=# create user root with password 'Zkxa~123';
CREATE ROLE
postgres=# create database zkxagsi with encoding='utf8' owner=root;
CREATE DATABASE
-
解决退出问题
[root@localhost ~]# cd /home/postgres/
[root@localhost postgres]# touch .psql_history
[root@localhost postgres]# chown postgres:postgres /home/postgres/.psql_history
[root@localhost postgres]# chmod 700 /home/postgres/.psql_history