改版说明

上一次进行了PG的安装当时发现自己少加了一部分ossp的处理.
这里补充上...不然挺浪费时间的.

背景

发现基于OpenEuler的几个系统使用CentOS的rpm包
安装PG数据库时有问题. 会提示缺少依赖的so文件.
今天想着解决一下, 就百度了一下并且进行自己的总结.
源码安装PG15并且进行部分设置.

第一部分介质准备.

PG15的源码
https://www.postgresql.org/ftp/source/v15.0/
准备进行export监控的工具
https://www.postgresql.org/ftp/source/v15.0/

参数配置

Study From https://cdn.modb.pro/db/411245
我们这边一般是使用 OLTP的数据库, 所以准备进行8KB的设置.
tar -zxvf postgresql-15.0.tar.gz && cd postgresql-15.0
./configure --prefix=/usr/pgsql-15/ --with-blocksize=8 --with-ossp-uuid
# 注意我的机器配置时间大约是 16s
# 注意原文是使用的ubuntu类似的路径, 我这里使用的是CentOS类似的路径
# 注意建议能够上网的基础上安装readline yum install readline* -y
# 官网解释为:
readline 也就是命令行编辑,
关闭的话,你直接用psql 就不能编辑命令行,
如果输错指令,不能回滚命令历史记录,只能手工重新输入。

编译安装

# configure之后可以直接进行make
time make
# 注意这一步的时间可长可短.
#我的机器要花5min才能make完
#我可以乘机泡一包泡面.
make install
# 注意 这里可以复习一下
make 是进行编译
make install 是根据 prefix的配置进行创建文件夹.
会有如下的命令出现.
/usr/bin/mkdir -p '/usr/pgsql-15/lib/pgxs/config

初始化数据库以及配置启动

# 创建用户和数据数据目录
useradd postgres
mkdir -p /var/lib/pgsql/15/data/
chown postgres:postgres /var/lib/pgsql/ -R
su - postgres
# 初始化数据库
# 注意这一步是postgres的用户
cd /usr/pgsql-15/bin
./initdb -D /var/lib/pgsql/15/data/
初始化数据库可以完成
根据提示可以使用如下命令启动数据库
./pg_ctl -D /var/lib/pgsql/15/data/ start

修改配置

  • 第一步: 修改环境变量
# 想免密登录可以使用 PGPASSWORD 也可以使用PG_HBA.
# 注意 bin data 以及 lib建议都添加上表好一些.
# 注意启动可能没有socket 文件 pg 命令需要 -h进行指定.
cat > /etc/profile.d/pg.sh <<EOF
export PATH=$PATH:/usr/pgsql-15/bin
export PGPASSWORD=Yourpassword
export PGDATA=/var/lib/pgsql/15/data/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/pgsql-15//lib
EOF

增加uuid-ossp的设置

建议还是有一个可以安装rpm包的centos8的机器然后基于同版本来拉取文件
今天凌晨进行安装时发现了两个地方.有差池.
需要.so文件以及先关的 oss的文件. 主要如下如下:
/usr/pgsql-15/share/extension/
/usr/pgsql-15/lib
需要从其他机器上面将这两个目录下面的 ossp开头的文件复制过来
不然每次安装都会报错.
并且注意 保本一定要一致,不然也会报错 ERROR: incompatible library "/usr/pgsql-15/lib/uuid-ossp.so": version mismatch

修改配置

  • 第二步: 数据库参数配置
vim /var/lib/pgsql/15/data/pg_hba.conf
增加一行:
host all all 0.0.0.0/0 md5
# 保证外面机器需要密码访问.
vim /var/lib/pgsql/15/data/postgresql.conf
修改主要是
listen 修改为 * 可以外部访问(与上面一个两相呼应)
port 修改掉注意
max_connection 可以修改为 1000-2000 (根据产品而定)

修改配置

  • 第三步 创建service文件.
  • 可以模仿之前的版本进行处理
cat >/usr/lib/systemd/system/postgresql-15.service <<EOF
[Unit]
Description=PostgreSQL 15 database server
Documentation=https://www.postgresql.org/docs/15/static/
After=syslog.target
After=network.target [Service]
Type=simple
User=postgres
Group=postgres Environment=PGDATA=/var/lib/pgsql/15/data/
OOMScoreAdjust=-1000
Environment=PG_OOM_ADJUST_FILE=/proc/self/oom_score_adj
Environment=PG_OOM_ADJUST_VALUE=0
#ExecStartPre=/usr/pgsql-15/bin/postgresql-15-check-db-dir ${PGDATA}
ExecStart=/usr/pgsql-15/bin/postmaster -D ${PGDATA}
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
KillSignal=SIGINT
TimeoutSec=0
[Install]
WantedBy=multi-user.target
EOF

设置开机启动

systemctl daemon-reload
systemctl enable postgresql-15
systemctl stop postgresql-15
# 注意这一步 必须使用非root用户进行关闭.
su - postgres -c pg_ctl -D /var/lib/pgsql/15/data/ stop
systemctl restart postgresql-15

设置密码

登录pg数据库
psql -U postgres
设置postgres 默认账户的密码
alter user postgres with password 'Testxxxxxxxx' ;

麒麟信安V3.4 安装PG15的过程V2.0的更多相关文章

  1. 【Oracle RAC】Linux系统Oracle12c RAC安装配置详细记录过程V2.0(图文并茂)

    [Oracle RAC]Linux系统Oracle12c RAC安装配置详细过程V2.0(图文并茂) 2 Oracle12c RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件下载3 ...

  2. 原因是未找到“sgen.exe”,或未安装 .NET Framework SDK v2.0

    visual studio编译出现错误:错误 2 任务失败,原因是未找到“sgen.exe”,或未安装 .NET Framework SDK v2.0.该任务正在注册表项 HKEY_LOCAL_MAC ...

  3. Deepin15.8系统下安装QorIQ Linux SDK v2.0 yocto成功完美运行的随笔

    2019.2.17日:最终安装成功,完美解决! 2019.2.16日:最终安装未成功,但是过程中排除 了几个bug,前进了几步,仅供参考. 写在最前面,yocto安装是有系统要求的,Deepin 15 ...

  4. 信安周报-第03周:DB系统表

    信安之路 第03周 前言 这周自主研究的任务如下: 任务附录的解释: 文件读写在通过数据库注入漏洞获取webshell的时候很有用 系统库和表存放了很多关键信息,在利用注入漏洞获取更多信息和权限的过程 ...

  5. 信安周报-第02周:SQL基础

    信安之路 第02周 Code:https://github.com/lotapp/BaseCode/tree/master/safe 前言 本周需要自行研究学习的任务贴一下: 1.概念(推荐) 数据库 ...

  6. 信安周报-第04周:系统函数与UDF

    信安之路 第04周 前言 这周自主研究的任务如下: 附录解释: SQLi的时候应对各种限制,可以使用数据库自带的系统函数来进行一系列变换绕过验证 eg:字符串转换函数.截取字符串长度函数等 注入的时候 ...

  7. NSIS使用教程(安装包制作安装文件教程,如何封装打包文件) 中文版

    nsis中文版(Nullsoft Scriptable Install System)是一个专业的开源的可以用来封闭Windows程序的实用工具,是一个开源的 Windows 系统下安装程序制作程序. ...

  8. linux rpm问题:怎样查看rpm安装包的安装路径

      x rpm问题:怎样查看rpm安装包的安装路径 2010-07-12 21:19:15 标签:rpm linux 路径 休闲 职场 rpm -qpl xxxxxx.rpm 1.如何安装rpm软件包 ...

  9. .net安装包自动安装Mysql数据库

    原文:.net安装包自动安装Mysql数据库 在制作.Net安装包的时候,如果项目有用到数据库,怎么能够把数据库打包安装呢?网上已经有很多自动安装Sql Server数据库的例子,但是自动安装mysq ...

  10. Win10下 VS2017 安装失败 未能安装包“Microsoft.VisualStudio.AspNet45.Feature,version=15.0.26208.0”

    事情的起因是这样的,前段时间,VS2017发布当天,想在自己的Win10上安装VS2017,然而,由于自己的系统很久没有更新(PS:自己关闭了Windows更新). 安装提示:未能安装包“Micros ...

随机推荐

  1. 聊聊LiteOS事件模块的结构体、初始化及常用操作

    摘要:本文通过分析LiteOS事件模块的源码,深入掌握事件的使用. 事件(Event)是一种任务间通信的机制,可用于任务间的同步.多任务环境下,任务之间往往需要同步操作,一个等待即是一个同步.事件可以 ...

  2. Mysql开发实践:error while loading shared libraries: libaio解决方案

    摘要:Mysql出现问题:error while loading shared libraries: libaio解决方案. 本文分享自华为云社区<Mysql出现问题:error while l ...

  3. 华为云MVP程云:知识化转型,最终要赋能一线

    摘要:如今的智能语音助手,可以帮助我们完成日常生活中的一些常规动作.同样,在企业中,智能问答机器人也在扮演着同样的角色. 本文分享自华为云社区<[亿码当先,云聚金陵]华为云MVP程云:知识化转型 ...

  4. 拥抱时序数据库,构筑IoT时代下智慧康养数据存储底座

    摘要:在HDZ城市行广州站中,来自华为云华为云数据库创新Lab向宇从时序数据库的技术角度,解读一下华为云时序数据库GaussDB(for Influx)如何应用在智慧健康养老行业. 本文分享自华为云社 ...

  5. 协同文档:OT与CRDT实现协同编辑笔记

    讲协同编辑,先回顾下从BBS.邮件,到IM 信息的异步传播 信息的生产和消费异步发生. 典型的场景如论坛,博客,文档库,邮件.我在写这篇文档的时候,你们看不到.你们看的时候,我早已写完.异步场景下,信 ...

  6. iOS上架报错:无法添加以供审核

    ​ 无法提交以供审核 要开始审核流程 必须提供以下项目 您必须为要添加的 app 提供版权信息. 您在提交 app 审核时遇到的问题是因为需要提供版权信息,而您的 app 缺少相关的版权信息.以下是解 ...

  7. Grafana--双Y轴

    grafana版本:6.5.2 背景:同一面板里想展示各实例与集群在一段时间范围内,平均每秒执行命令数,但是由于数值差异太大,曲线图抖动不明显,实例的更近乎于一条直线,所以设置双Y轴,可更直观的展示线 ...

  8. three.js 火焰效果

    代码是网上找的代码,通过调参.修改.封装实现的. 代码: /** * 火焰 */ import * as THREE from '../build/three.module.js'; let MyFi ...

  9. 为什么加上<log4j2.version>配置就可以更新log4j2的版本?

    最近log4j2的核弹级漏洞席卷了大部分互联网公司,升级版本成了这两周的核心任务.对于要升级到什么版本,最新版本2.16.0是最佳选择.那么如何快速升级,之前也给出了Spring Boot项目升级版本 ...

  10. 【3rd Party】Cpp 中使用 Protobuf

    前置条件: [Protoc]VS2019 (VS平台) 使用 CMake 编译安装.使用 Protobuf 库 [ToolChains]CLion(VS2019) + CMake + Vcpkg 的使 ...