CentOS 8-stream 安装Postgresql 详细教程
一、下载Postgresql
- 打开postgresql数据库官网
- 我这里是用的Linux CentOS 操作系统,也可以根据的系统来选择,步骤基本都一样
二、安装Postgresql
- 然后就是选择对应版本就可以了
- 然后就执行下面的脚本就行,官网出下方也有对应的脚本,若选择的与我的不一样,还是运行官网上面的脚本,避免报错~
# Install the repository RPM:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Disable the built-in PostgreSQL module:
sudo dnf -qy module disable postgresql
# Install PostgreSQL:
sudo dnf install -y postgresql14-server
# Optionally initialize the database and enable automatic start:
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
- 进入数据库
su postgres
- 修改postgres用户密码
psql
ALTER USER postgres WITH PASSWORD '(密码)';
\q
退出数据库
三、开启远程连接
- 修改postgres配置,使用Navicat远程连接
# 查询配置文件所在位置
find . -name 'pg_*'
# 进入文件配置目录
cd /var/lib/pgsql/14/data/
# 编辑配置文件 pg_hba.conf 最后一行 添加如图 host all all 0.0.0.0/0 md5
vim pg_hba.conf
# 编辑配置文件 postgresql.conf 修改 如图
vim postgresql.conf
# listen_addresses="*"
# port=5432
- 修改完配置文件后,esc :wq 保存并退出,重启数据库服务
sudo systemctl restart postgresql-14
四、防火墙关闭或者开放端口
- 虚拟机搭建的服务器,记得要把防火墙中的端口开放,阿里云或者腾讯云什么的可以在管理控制台的防火墙规则中打开,不然连接不上
注意:开放,关闭端口后都要重启防火墙生效
# 开放防火墙端口3306
firewall-cmd --zone=public --add-port=5432/tcp --permanent
# 开放一段端口
firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
# 关闭防火墙端口
firewall-cmd --remove-port=3306/tcp --permanent
# 查看开放的端口列表
firewall-cmd --zone=public --list-ports
# 重启防火墙
systemctl restart firewalld 或者 firewall-cmd --reload
五、虚拟机配置主机IP端口映射
- 最后一步就到了最关键的时候了,由于我这里是用的公司的内网搭建虚拟机,然后公司分配的地址是xxx.xxx.17.22,但是虚拟机的ip地址是xxx.xxx.139.128,但是我想要连接虚拟机使用的ip地址是xxx.xxx.17.22,就要在虚拟机的编辑->虚拟网络编辑器设置一下,需要配置一个端口转发,不然也是访问不到虚拟机的数据库的,貌似后面跟端口有关的服务都要配置一下,如果直接连接虚拟机本身的ip应该是不用配置这些的。
- 配置完成就可以啦。
然后就可以启动Navicat连接了,密码为自己设置的密码