1 PostgreSQL源码包下载并复制

1.1 PostgreSQL源码包下载:

访问PostgreSQL官网

选择所需版本进行下载,本次下载安装版本为v14.5

1.2 复制源码包至服务器

使用SSH终端工具,远程连接服务器,并使用终端工具提供的上传工具,把postgresql-14.5.tar.gz 上传至服务器/usr/local/postgres14.5/src 文件夹下

建目录文件夹的命令

[root@localhost local]# mkdir -p /usr/local/postgres14.5/src

2 基于PostgreSQL源码安装

2.1 解压缩源码

切换到源码目录

[root@localhost local]# cd /usr/local/postgres14.5/src

解压gz

[root@localhost src]# gunzip postgresql-14.5.tar.gz

解压tar

[root@localhost src]# tar -xf postgresql-14.5.tar

2.2 检查环境 指定安装路径

检查环境,指定安装目录和服务端口

[root@localhost postgresql-14.5]# ./configure --prefix=/usr/local/pgsql-14.5 --with-pgport=5435

注意:使用configure脚本检查,无错误或警告提示方可进行下一步编译操作,若有错误或警告提示需根据提示进行相关操作。

2.3 编译

[root@localhost postgresql-14.5]# make

2.4 安装

[root@localhost postgresql-14.5]# make install

安装位置在2.2 由 --prefix=/usr/local/pgsql-14.5中指定

3 postgresql的配置

提示:在本文档的描述的安装过程前,系统已经安装有其它版本的PostgreSQL,本次安装非升级安装。

3.1 创建用户和组

创建组

[root@localhost ~]# groupadd postgres

创建用户并加入组

[root@localhost pgsql-14.5]#useradd -g postgres postgres

3.2 创建数据库库文件存储目录、给postgres赋予权限

创建数据库库文件存储目录data

[root@localhost DISK-8T]# mkdir -p /run/media/postgres/data

data目录授权给postgres.postgres

[root@localhost DISK-8T]# chown postgres.postgres /run/media/postgres/data

3.3 初始化数据库目录

切换用户

[root@localhost bin]# su – postgres

初始化数据 -D指定初始化创建的数据库的文件路径

-bash-4.2$ /usr/local/pgsql-14.5/bin/initdb -D /run/media/postgres/data

提示:红框中标注为postgres14.5的启动方式

/usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile start

3.4 启动停止postgres14.5

3.4.1 启动

切换用户 PG是禁止使用超级管理员来运行该命令的

[root@localhost lib]# su postgres

启动数据库

-bash-4.2$ /usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile start

3.4.2 停止

切换到postgres用户

[root@localhost pgsql]# su - postgres

上一次登录:三 10月 19 13:31:02 CST 2022pts/0 上

-bash-4.2$ /usr/local/pgsql-14.5/bin/pg_ctl -D /run/media/postgres/data -l logfile stop

3.4.3 权限不足的解决方法

切换到postgres用户,运行数据库启动命令报logfile: 权限不够,可按下列方法解决:

编辑sudoers配置文件 ,按下图红框所示,给postgres用户添加提升权限的配置

[root@localhost bin]# vi /etc/sudoers

3.4.4 修改管理员密码

说明:因服务器存在多个版本的PG,因此先在/ usr / bin中创建一个postgre14.5版本对应的psql链接

[root@localhost psql]# ln -s /usr/local/pgsql-14.5/bin/psql /usr/bin/psql145

切换用户

[root@localhost psql]# su - postgres

上一次登录:三 10月 19 14:08:33 CST 2022pts/0 上

运行postgre14.5 对应的psql

-bash-4.2$ psql145

psql145 (14.5)

Type "help" for help.

postgres=#

修改管理员密码

\q再exit退出

postgres=# alter role postgres with password '123';

3.5 开启远程访问

3.5.1 开启远程访问

切换到数据库目录

[root@localhost pgsql]# cd /run/media/postgres/data

修改postgresql.conf 配置文件,开启远程访问

把listen_addresses = 'localhost',修改成 listen_addresses = '*'

可在此文件中修改服务端口

[root@localhost postgre14.5Data]# vi postgresql.conf

3.5.2 配置认证方式

修改pg_hba.conf 添加远程访问的认证方式

未尾添加 host all all 0.0.0.0/0 md5

[root@localhost postgre14.5Data]# vi pg_hba.conf

3.5.3 测试连接

使用Navicat测试数据库连接

Cenots7 离线安装部署PostgreSQL的更多相关文章

  1. Apache Hadoop集群离线安装部署(三)——Hbase安装

    Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apac ...

  2. Apache Hadoop集群离线安装部署(二)——Spark-2.1.0 on Yarn安装

    Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apac ...

  3. Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS、YARN、MR)安装

    虽然我已经装了个Cloudera的CDH集群(教程详见:http://www.cnblogs.com/pojishou/p/6267616.html),但实在太吃内存了,而且给定的组件版本是不可选的, ...

  4. 史上最全CentOS6离线安装部署Cloudera Manager5.9.3

    史上最全CentOS6离线安装部署Cloudera Manager5.9.3

  5. centos如何离线安装部署node&pm2?

    最近我们项目要上即时通讯,因为项目对安全要求比较高,所以选择了即时通讯云服务器yun2win,他们提供了数据服务器让我们自己安装部署.那么问题来了,我们服务器是放在内网,完全无法访问外网,而yun2w ...

  6. Centos 7最小化安装部署PostgreSQL

    安装 sh-4.2# yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-ce ...

  7. nodejs应用离线安装部署、卸载

    公司写的文档,直接粘贴过来了: 本文档提供node应用一键安装.部署.卸载说明,包含对应脚本文件 默认版本:1.nodejs:v6.11.2.linux-x642.全局npm包:pm2.supervi ...

  8. 离线安装部署zabbix

    一. 安装好CentOS安装过程中添加php,mariadb等所需要的依赖 二. 准备好所有所需的rpm压缩文件包在centos中解压,这里放在根目录下zabbix_rpms文件夹下 三. 安装所需r ...

  9. Redis在CentOS 7上的安装部署

    简介: Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合.支持在服务器端计算集合的并,交和补集( ...

随机推荐

  1. goalng-sync/atomic原子操作

    目录 1.go已经提供了锁,为什么还需要atomic原子操作? 2.atomic原子操作为什么比mutex快? 3.CAS 4.互斥锁与原子操作区别 5.原子操作方法 5.1 atomic.AddIn ...

  2. C++11实现可变参数泛型抽象工厂

  3. 面试常问:HTTP 1.0 和 HTTP 1.1 有什么区别?

    这篇文章会从下面几个维度来对比 HTTP 1.0 和 HTTP 1.1: 响应状态码 缓存处理 连接方式 Host头处理 带宽优化 响应状态码 HTTP/1.0仅定义了16种状态码.HTTP/1.1中 ...

  4. 统计 Word 文档字数的方式

    描述 欲统计某文档的字数,有两种方式. "审阅"选项卡--"校对"组--字符统计 点击左下角字数统计 审阅查看字数 此步骤较为复杂,在审阅选项卡中可以查询文档的 ...

  5. 设置 Git 用户名和邮箱

    安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址.因为每一个提交都会使用这些信息,如果你不完善它们,在 GitHub 远程仓库里很有可能没有你的贡献统计. 以下操作需要你打开 Git ...

  6. Atcoder ZONe Energy Programming Contest C - MAD TEAM(二分)

    文章目录 题面 Sample Input Sample output 题解 CODE 别的做法 暴力 Dynamic Programming 题面 你想从 N N N 个候选人中选 3 个人. 每个人 ...

  7. Docker实用篇

    Docker实用篇 0.学习目标 1.初识Docker 1.1.什么是Docker 微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦. 分布式系统中,依赖的组件非常多,不同组件之间 ...

  8. 超详细的格式化输出(format的基本玩法)

    一.format的基本玩法 一.什么是format format是字符串内嵌(字符串内嵌:字符串中再嵌套字符串,加入双引号或单引号)的一个方法,用于格式化字符串.以大括号{}来标明被替换的字符串 fo ...

  9. 百度ueditor工具栏配置大全

    toolbars: [[ 'source', // 源代码 'anchor', // 锚点 'undo', // 撤销 'redo', // 重做 'bold', // 加粗 'indent', // ...

  10. 【项目实战】CNN手写识别复杂模型的构造

    感谢视频教程:https://www.bilibili.com/video/BV1Y7411d7Ys?p=11 这里开一篇新博客不仅仅是因为教程视频单独出了1p,也是因为这是一种代码编写的套路,特在此 ...