<返回更多

Linux部署postgresql并开启远程访问

2022-05-11    java柚子茶
加入收藏

一、服务器资源

服务名称:linux服务器

IP:[请查看资源分配文档]

操作系统:centos 7.8 x64

二、postgresql安装

2.1、postgresql下载

下载地址:
www.postgresql.org/ftp/source/

Linux部署postgresql并开启远程访问

 


Linux部署postgresql并开启远程访问

 

2.2、将压缩包放到 tools目录下并解压

把postgresql-13.4.tar.gz上传到/opt/tools目录下,并解压

# cd /opt/tools

# tar -zxvf postgresql-13.4.tar.gz

2.3、解压后进行配置

# cd /opt/tools/postgresql-13.4

# ./configure --prefix=/opt/App/postgresql

注: /opt/app/postgresql/:安装目录

configure 配置时出错:

Linux部署postgresql并开启远程访问

 

执行配置脚本前需安装gcc、readline-devel、zlib-devel(rpm -qa | grep readline查看有无安装)

命令:yum -y install gcc yum -y install readline-devel yum install -y zlib-devel

服务器无法联网,可以找一台可以联网的服务器下载gcc、readline-devel、zlib-devel。

yum install --downloadonly --downloaddir=/download readline-devel、

yum install --downloadonly --downloaddir=/download zlib-devel(只下载不安装)

2.4、配置后进行编译安装

# cd /opt/tools/postgresql-13.4

# make && make install   #(耐心等待)

2.5、配置环境变量

# vi /etc/bashrc

在文件末尾添加以下内容:

export PATH=$PATH:/opt/app/postgresql/bin

使修改马上生效:

# source /etc/bashrc

测试psql命令:

# psql --help

2.6、初始化数据

创建psql的用户和密码

# useradd postgres

# passwd postgres  

创建数据目录

# cd /opt/app/postgresql

# mkdir data

创建日志目录

# cd /opt/app/postgresql

# mkdir logs

设置postgresql文件夹的所有者和所属组为postgres

# chown -R postgres:postgres /opt/app/postgresql

切换到postgres用户来操作数据库,pgsql数据库以postgres为默认用户

# su postgres

初始化数据库

先切换postgres用户,进入安装目录(/opt/app/postgresql),然后进行初始化数据库的命令

# bin/initdb -D /opt/apps/postgresql/data

注: /opt/app/postgresql/data/:数据目录

2.7、启动postgresql数据库

# bin/pg_ctl -D /opt/apps/postgresql/data -l /opt/apps/postgresql/logs/logfile start

注: 这里-l指定日志文件位置,这里直接输出到
/opt/app/postgresql/logs/logfile中

登录测试:

# psql
Linux部署postgresql并开启远程访问

 

以上表示登录成功!!!^_^

Linux部署postgresql并开启远程访问

 

修改postgre密码:

# ALTER USER postgres WITH PASSword 'dbPassw0rd';
Linux部署postgresql并开启远程访问

 

2.8、停止postgresql数据库

# bin/pg_ctl -D /opt/app/postgresql/data stop

2.9、配置系统服务service

进入postgresql源码包的解压目录****

# cd /opt/tools/postgresql-13.4

复制启动脚本到init.d下

# cp contrib/start-scripts/linux /etc/init.d/postgresql

修改postgresql

# vi /etc/init.d/postgresql
Linux部署postgresql并开启远程访问

 

赋予该文件执行权限

# chmod +x /etc/init.d/postgresql

设置服务开机自启

# chkconfig --add postgresql

启动数据库服务

# service postgresql start

这样,咋们就可以用service服务启动pgsql了,简单!!!^_^

二、远程访问

默认情况下,pgsql在linux服务器上面,已经是安装和启动成功了,也能连上。

但是本地window环境下,是无法连接上pgsql服务器的,这个确实是个大麻烦!!!

Linux部署postgresql并开启远程访问

 

下面,咋们就得开启pgsql的远程访问了!!!

3.1、修改postgresql.conf

# vi /opt/app/postgresql/data/postgresql.conf
Linux部署postgresql并开启远程访问

 

注: 取消 listen_addresses 的注释,将参数值改为“*”

3.2、修改pg_hba.conf

# vi /opt/app/postgresql/data/pg_hba.conf
Linux部署postgresql并开启远程访问

 

注: 找到host all all 127.0.0.1/32 trust这行,然后在下面添加一行:host all all 0.0.0.0/0 trust即可

3.2、重启服务

# bin/pg_ctl -D /opt/app/postgresql/data -l /opt/app/postgresql/logs/logfile restart

# service postgresql restart

三、配置防火墙

4.1、开启5432端口

# firewall-cmd --zone=public --add-port=5432/tcp --permanent # 开放5432端口
# firewall-cmd --zone=public --remove-port=5432/tcp --permanent #关闭5432端口

#配置立即生效

# firewall-cmd --reload 

#重启防火墙

# service firewalld restart 

#查看已开放的端口

# firewall-cmd --list-ports 

好了,以上就是linux部署postgresql并开启远程访问的全过程了,就是这样了!!!^_^

今天就先到这里了,溜了溜了溜了!!!^_^

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>