1、安装和启用EPEL、CRB、PostgreSQL仓库

dnf config-manager --set-enabled crb
dnf -y install epel-release
dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

备注:若提示没有config-manager命令,请执行命令:

dnf install 'dnf-command(config-manager)' -y

2、禁用系统自带PostgreSQL模块

dnf -qy module disable postgresql

3、查找PostgreSQL和PostGIS的版本情况

# dnf list postgresql12 --showduplicates | sort -r
postgresql12.x86_64                  12.9-6PGDG.rhel9                    pgdg12 
postgresql12.x86_64                  12.9-2PGDG.rhel9                    pgdg12 
postgresql12.x86_64                  12.9-2PGDG.rhel9                    @pgdg12
postgresql12.x86_64                  12.8-3PGDG.rhel9                    pgdg12 
postgresql12.x86_64                  12.13-1PGDG.rhel9                   pgdg12 
postgresql12.x86_64                  12.12-1PGDG.rhel9                   pgdg12 
postgresql12.x86_64                  12.11-1PGDG.rhel9                   pgdg12 
postgresql12.x86_64                  12.10-1PGDG.rhel9                   pgdg12 

# dnf list postgis30_12 --showduplicates | sort -r
postgis30_12.x86_64                    3.0.7-1.rhel9                     pgdg12 
postgis30_12.x86_64                    3.0.6-1.rhel9                     pgdg12 
postgis30_12.x86_64                    3.0.5-1.rhel9                     pgdg12 
postgis30_12.x86_64                    3.0.5-1.rhel9                     @pgdg12

4、安装PostgreSQL和PostGIS的需求版本

dnf -y install postgresql12-12.9-2PGDG.rhel9 postgresql12-libs-12.9-2PGDG.rhel9 postgresql12-server-12.9-2PGDG.rhel9 postgresql12-contrib-12.9-2PGDG.rhel9 postgis30_12-3.0.5-1.rhel9

5、初始化数据库

/usr/pgsql-12/bin/postgresql-12-setup initdb

6、配置文件修改

# vim /var/lib/pgsql/12/data/postgresql.conf
listen_addresses = '*'

# vim /var/lib/pgsql/12/data/pg_hba.conf
host    all             all             0.0.0.0/0               md5        #最后一行增加

7、启动服务

systemctl enable --now postgresql-12

8、其他配置

# 切换到postgres用户
su - postgres

# 创建用户
createuser cent

# 配置用户密码
psql -c "alter user cent with password 'password';"

# 创建数据库
createdb testdb -O cent

# 验证用户连接数据库权限
psql -h 10.10.10.10 -d testdb -U cent

# 查看用户
psql -c "select usename from pg_user;"

# 查看数据库
psql -l

# 还原备份数据
psql -d testdb -U postgres -f dump.sql

# 连接数据库
psql testdb
testdb=> \du     #查看用户角色
testdb=> \dt     #查看数据库表
testdb=> \q      #退出

# 删除数据库
dropdb testdb

 

posted on 2023-01-20 11:40  a120608yby  阅读(113)  评论(0编辑  收藏  举报