Centos7下安装postgresql(tar包形式安装)
Centos7下安装postgresql(tar包形式安装)
1、官网下载地址:
https://www.postgresql.org/ftp/source/

2、将下载来tar包上传到linux服务器上

3、将tar包解压到指定目录下
# -C 后面是解压后存放的目录
tar -zxvf postgresql-14.4.tar.gz -C /opt/module/

4、编译,进入到postgresql-14.2目录下,执行下面的命令
- 执行编译命令前先安装依赖
- 安装C语言编译器
yum install gcc -y
- 安装编译需要的依赖
yum install -y readline-devel
yum install zlib-devel
- 执行编译命令
./configure --prefix=/usr/local/postgresql
安装完编译所需的依赖后,执行以上编译命令就可以编译成功喽!
5、安装
make && make install
执行完毕,在/usr/local目录下就会有pgsql这个目录

6、创建data和log目录
mkdir /usr/local/postgresql/data
mkdir /usr/local/postgresql/log

7、加入系统环境变量
- 打开系统环境配置文件
# 本安装示例中此处的my_env.sh是自己新建的,也可以直接在/etc/profile 中配置
vim /etc/profile.d/my_env.sh
- 配置环境变量
export PGHOME=/usr/local/postgresql
export PGDATA=/usr/local/postgresql/data
export PATH=$PATH:$JAVA_HOME/bin:$PGHOME/bin

- 使配置生效
source /etc/profile
8、增加用户 postgres 并赋权
useradd postgres
chown -R postgres:root /usr/local/postgresql/

9、初始化数据库
# 切换为自己前面创建的用户
su postgres
# 初始化数据库操作
/usr/local/postgresql/bin/initdb -D /usr/local/postgresql/data/

注:不能在 root 用户下初始数据库,否则会报错
[root@develop-env~]# /usr/local/postgresql/bin/initdb -D /usr/local/postgresql/data/
initdb: cannot be run as root
Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.
10、编辑配置文件
- 打开postgresql.conf配置文件
vim /usr/local/postgresql/data/postgresql.conf
- 修改配置信息
# 设置所有ip可连接
listen_addresses = '*'
# 设置监听端口
port = 5432

- 打开pg_hba.conf配置文件
vim /usr/local/postgresql/data/pg_hba.conf
- 修改配置信息
# 所有数据库(all)、所有用户(all)、从本机(127.0.0.1/32)均可免密访问(trust)
host all all 0.0.0.0/0 trust
注:
TYPE:pg的连接方式,local:本地unix套接字,host:tcp/ip连接
DATABASE:指定数据库
USER:指定数据库用户
ADDRESS:ip地址,可以定义某台主机或某个网段,32代表检查整个ip地址,相当于固定的ip,24代表只检查前三位,最后一位是0~255之间的任何一个
METHOD:认证方式,常用的有ident,md5,password,trust,reject。
md5是常用的密码认证方式。
password是以明文密码传送给数据库,建议不要在生产环境中使用。
trust是只要知道数据库用户名就能登录,建议不要在生产环境中使用。
reject是拒绝认证。
11、启动服务
pg_ctl start -l /usr/local/postgresql/log/pg_server.log

12、查看版本
psql -v

13、登录数据库
psql -U postgres -d postgres

14、第三方可视化工具连接
Navicat Premium


15、无法远程访问
取消了远程访问ip的限制后,还是无法远程访问的问题
可能原因:5432端口未开放
解决措施:
- 直接关闭防火墙
# 关闭防火墙
systemctl stop firewalld
# 开启防火墙
systemctl start firewalld
# 查看防火墙状态
systemctl status firewalld
# 重启防火墙
systemctl restart firewalld
- 配置防火墙,开启5432端口
- 开放5432端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent
- 关闭5432端口
firewall-cmd --zone=public --remove-port=5432/tcp --permanent
- 让配置立即生效
firewall-cmd --reload
- 重启防火墙
systemctl restart firewalld
- 查看已开放的端口
firewall-cmd --list-ports
至此postgresql安装完成O(∩_∩)O哈哈~ヾ(◍°∇°◍)ノ゙
Centos7下安装postgresql(tar包形式安装)的更多相关文章
- inux centos7下源码 tar安装5.7.26详解
inux centos7下源码 tar安装5.7.26图文详解 官网地址 https://dev.mysql.com/downloads/mysql/ 1.卸载Linux系统上自带的mysql插件(o ...
- centos7下使用x11远程带窗口安装Oracle
目录 centos7静默安装oracle11gR2 文章目录 一.检查硬件要求 1.内存要求: 2.安装包: 二.环境准备 1.安装必要的工具 2.关闭防火墙 3.关闭Selinux 4.安装Orac ...
- 记录centos7下tomcat部署war包过程
记录centos7下tomcat部署war包过程 1.官网下载tomcat安装包.gz结尾的 2.上传到/usr/local/ ,并解压到tomcat目录下 3.进入tomcat/bin目录,运行./ ...
- linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解
之前用的rpm安装的每次安装都是最新的,,,导致每次版本不统一... 现在用tar包安装5.7.22和5.7.20一样的 5.7.20之后的和之前的版本还是有点不一样的 官网地址 https:// ...
- centos7下使用mysql离线安装包安装mysql5.7
服务器环境: centos7 x64 需要安装mysql5.7+ 一.卸载CentOS7系统自带mariadb # 查看系统自带的Mariadb [root@CDH-141 ~]# rpm -qa|g ...
- linux下gdal的python包的安装
由于python包是从C++包编译出来的,所以需要先下载源码进行编译安装.1. gdal下载http://download.osgeo.org/gdal/CURRENT/sudo ./configur ...
- Linux系统:Centos7下搭建PostgreSQL关系型数据库
本文源码:GitHub·点这里 || GitEE·点这里 一.PostgreSQL简介 1.数据库简介 PostgreSQL是一个功能强大的开源数据库系统,具有可靠性.稳定性.数据一致性等特点,且可以 ...
- Linux_CentOS软件安装调试 源代码包编译安装和 二进制包配置
Linux 下源代码(C 语言)如何编译(安装) 1. 先安装源代码编译的软件 gcc,make,openssl 如下: yum install -y gcc make gcc-c++ openssl ...
- linux安装源码包指定安装目录
当下载完一个源码包并且解压后 文件夹下会有一个重要的文件configure configure 文件是一个可执行的脚本文件,它将检查目标系统的配置和可用功能,比如一些检查依赖或者启用禁用一些模块,它有 ...
随机推荐
- STM32 移植 RT-Thread 标准版的 FinSH 组件
一.移植准备 开发版STM32F10xC8T6 准备好移植RT-Thread的移植工程 没动手移植过RT-Thread的小伙伴,可以看RT-Thread移植到stm32 我这里是将控制台信息打印到串口 ...
- 使用强大的DBPack处理分布式事务(PHP使用教程)
主流的分布式事务的处理方案 近些年,随着微服务的广泛使用,业务对系统的分布式事务处理能力的要求越来越高. 早期的基于XA协议的二阶段提交方案,将分布式事务的处理放在数据库驱动层,实现了对业务的无侵入, ...
- scrapy框架入门
scrapy迄今为止依然是世界上最好用,最稳定的爬虫框架,相比于其他直接由函数定义的程序, scrapy使用了面向对象并对网页请求的过程分成了很多个模块和阶段,实现跨模块和包的使用,大大提升了代码的稳 ...
- 重磅硬核 | 一文聊透对象在 JVM 中的内存布局,以及内存对齐和压缩指针的原理及应用
欢迎关注公众号:bin的技术小屋 大家好,我是bin,又到了每周我们见面的时刻了,我的公众号在1月10号那天发布了第一篇文章<从内核角度看IO模型的演变>,在这篇文章中我们通过图解的方式以 ...
- 循环结构-for循环和while循环
循环语句1--for for循环语句格式: for(初始化表达式①; 布尔表达式②; 步进表达式④){ 循环体③ } 执行流程 执行顺序:①②③④>②③④>②③④-②不满足为止. ①负责完 ...
- ClickHouse(04)如何搭建ClickHouse集群
ClickHouse集群的搭建和部署和单机的部署是类似的,主要在于配置的不一致,如果需要了解ClickHouse单机的安装设部署,可以看看这篇文章,ClickHouse(03)ClickHouse怎么 ...
- Solution -「树状数组」 题目集合
T1 冒泡排序 题目描述 clj 想起当年自己刚学冒泡排序时的经历,不禁思绪万千 当年,clj 的冒泡排序(伪)代码是这样的: flag=false while (not flag): flag=tr ...
- 标准的Switch语句和穿透的Switch语句
第三章 选择语句 3.1选择语句--Switch switch语句格式: ```java switch(表达式){ case 常量值1: 语句体1; break; case 常量值2: 语句体2; b ...
- linux nginx搭建与使用
安装nginx yum -y install nginx 测试是否安装正确: nginx -t 打印如下: nginx: the configuration file /etc/nginx/nginx ...
- Möbius 反演注记
目录 基本理论基础 数论函数 线性筛 Mobius 反演 Dirichlet 卷积 数论分块 / 整除分块 拆函数 时间复杂度分析 基本形式 GCD 形 万能 Prod 的莫比乌斯反演 正常例题 YY ...