银河麒麟服务器ky10 sp3 x86编译安装postgresql(包含uuid)

news2024/11/27 18:37:14

目录

下载

编译安装

 目录说明 

脚本文件说明

压缩包说明 

脚本代码


下载

 官网 PostgreSQL: The world's most advanced open source database

源码下载地址  PostgreSQL: File Browser

有多个版本可以选择,我选择的是10.23

 点击下载即可

 我下载好之后把他上传到了我的gitcode上,接下来我们直接下载gitcode上的脚本代码和程序进行编译安装

编译安装

下载脚本代码  https://gitcode.net/zenglg/postgresql.git

git clone  https://gitcode.net/zenglg/postgresql.git

后面我们会附上脚本代码

代码结构如下 

 

 目录说明 

目录说明
depends编译postgresql相关的依赖离线安装包
lib-site-packagespython离线依赖
lib64-site-packagespython离线依赖
local-lib-site-packagespython离线依赖
local-lib64-site-packagespython离线依赖
python3python3离线安装包

脚本文件说明

脚本文件说明
ky10_pgadmin_python3_install.shpgadmin 在线安装脚本
ky10_pgadmin_python3_offline_installpgadmin 离线安装脚本
ky10_postgresql_install.shpostgresql在线安装脚本
ky10_postgresql_offline_compile_install.shpostgresql离线编译安装脚本
ky10_postgresql_offline_install.shpostgresql离线安装脚本

压缩包说明 

文件说明  说明
pgadmin4-6.21.tar.gzpgadmin4-6.21源码包
postgresql-10.5-22.ky10.x86_64.rpmpostgresql 离线安装包
postgresql-server-10.5-22.ky10.x86_64.rpmpostgresql 离线安装包
postgresql-10.23.tar.gzpostgresql-10.23源码包
postgresql-12.14.tar.gzpostgresql-12.14源码包

脚本代码

ky10_postgresql_offline_compile_install.sh


version=10.23
server_ip=192.168.4.131

# 下载依赖
# yum install yum-utils -y
# yumdownloader --destdir=/root/depends --resolve readline readline-devel  zlib zlib-devel flex bison uuid-devel 

# 在线安装依赖
# yum install readline
# yum install readline-devel
# yum install zlib
# yum install zlib-devel

cd depends
# 离线安装依赖
rpm -Uvh --force --nodeps *.rpm
cd ..

tar xvf postgresql-10.23.tar.gz
cd postgresql-10.23  

# https://blog.csdn.net/u010430832/article/details/60142824
./configure --with-libxml --with-ossp-uuid --with-libs=/opt/postgresql/10.23/lib --with-includes=/opt/postgresql/10.23/include  

make
make install


# https://blog.frognew.com/2021/11/install-postgresql-from-source-code.html

# 创建用户
useradd postgres
# 创建postgresql相关目录:
mkdir /home/postgres/data
mkdir /home/postgres/init
chown -R postgres:postgres /home/postgres


touch /etc/systemd/system/pgserver.service
cat >/etc/systemd/system/pgserver.service<< EOF
    [Unit]
    Description=PostgreSQL database server

    [Service]
    User=postgres
    ExecStart=/usr/local/pgsql/bin/postgres -D /home/postgres/data
    ExecReload=/bin/kill -HUP $MAINPID
    PrivateTmp=true
    TimeoutStartSec=0
    KillMode=none

    [Install]
    WantedBy=multi-user.target
EOF

# 执行下面的命令对数据库进行初始化,数据库的初始化需要切换到postgres用户:
# 以postgres用户执行程序
rm -rf /home/postgres/data
sudo -u postgres  /usr/local/pgsql/bin/initdb -D /home/postgres/data


# 修改  postgresql.conf
sed -i '63s/#port = 5432/port = 5432/' /home/postgres/data/postgresql.conf
sed -i '59s/#listen_addresses/listen_addresses/' /home/postgres/data/postgresql.conf
sed -i '59s/localhost/*/' /home/postgres/data/postgresql.conf
sed -i '88s/#password_encryption/password_encryption/' /home/postgres/data/postgresql.conf

# 修改pg_hba.conf
sed -i '86s/127.0.0.1/0.0.0.0/'  /home/postgres/data/pg_hba.conf
sed -i '86s/32/0/'  /home/postgres/data/pg_hba.conf
# 密码md5加密
sed -i '86s/ident/md5/'  /home/postgres/data/pg_hba.conf


cd contrib/uuid-ossp
make
make install


# mv uuidossp--1.1.sql uuid-ossp--1.1.sql
# mv uuidossp--unpackaged--1.0.sql  uuid-ossp--unpackaged--1.0.sql
# mv uuidossp--1.0--1.1.sql uuid-ossp--1.0--1.1.sql
# mv uuidossp.control  uuid-ossp.control

cd /usr/local/pgsql/share/extension/
mv uuid-ossp--1.1.sql uuidossp--1.1.sql
mv uuid-ossp--unpackaged--1.0.sql  uuidossp--unpackaged--1.0.sql
mv uuid-ossp--1.0--1.1.sql uuidossp--1.0--1.1.sql
mv uuid-ossp.control  uuidossp.control


#  关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service


# 配置开机启动并启动PostgreSQL:
systemctl enable pgserver.service 
systemctl start pgserver.service 

# 修改postgres用户的密码
sudo -u postgres /usr/local/pgsql/bin/psql -U postgres -d postgres -c "alter user postgres with password '123456';"

sudo /usr/local/pgsql/bin/psql -U postgres -d postgres -c 'create extension "uuidossp";'




# systemctl status pgserver

# 重启服务,配置之后需要重启服务才能生效
systemctl restart pgserver.service


# 修改密码的shell脚本
# sudo -u postgres psql -U postgres -d postgres -c "alter user postgres with password '123456';"
# sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '123456';"

# # 启动自动生成的密码是随机的,我们可以通过下面的命令修改
# #  进入psql
# sudo -u postgres psql
# # 123456 为修改之后的密码
# ALTER USER postgres WITH PASSWORD '123456'; 
# # 退回到命令行
# \q


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/423531.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt网络编程 (udp广播和接收例)

大纲概述senderreceiver演示概述 使用两个项目 1 sender 用来广播"hello world";2 receiver 用来接收广播信息 sender 1 创建Qdialog类2 在sender.pro 中添加 QT network 一行代码3 在sender.h 中声明类 class QUdpSocket;在声明一个私有对象QUdpSocket *sender;…

ASEMI代理AD8226ARZ-R7亚德诺(ADI)车规级AD8226ARZ-R7

编辑&#xff1a;ll ASEMI代理AD8226ARZ-R7亚德诺&#xff08;ADI&#xff09;车规级AD8226ARZ-R7 型号&#xff1a;AD8226ARZ-R7 品牌&#xff1a;ADI /亚德诺 封装&#xff1a;SOIC-8 批号&#xff1a;2023 安装类型&#xff1a;表面贴装型 引脚数量&#xff1a;8 类…

VS 创建ATL组件(C++)

目录1、新建ATL项目2、添加接口类、实现接口方法3、创建自己的方法。在头文件Add.h中添加声明4、在源文件Add.cpp中添加函数实现5、在MyComTest.idl中添加方法接口设置&#xff0c;如interface IAdd:IDispatch中所示。6、解决方案配置选择release, 平台选择x64,生成。MyComTest…

【数据结构与算法】判定给定的字符向量是否为回文算法

题目&#xff1a; Qestion: 试写一个算法判定给定的字符向量是否为回文。   回文解释: 回文是指正读反读均相同的字符序列&#xff0c;如“abba”和“abdba”均是回文&#xff0c;但“good”不是回文。 主要思路&#xff1a; 因为数据要求不是很严格并且是一个比较简单的…

软件测试—基础篇

软件测试—基础篇&#x1f50e;软件测试的生命周期&#x1f50e;如何描述一个BUG&#x1f50e;如何定义BUG 的级别&#x1f50e;BUG 的生命周期&#x1f50e;测试的执行与管理测试的执行与管理如何发现更多的BUG&#x1f50e;产生争执怎么办&#x1f50e;结尾&#x1f50e;软件…

基于PaddlePaddle的词向量实战 | 深度学习基础任务教程系列

词向量是自然语言处理中常见的一个操作&#xff0c;是搜索引擎、广告系统、推荐系统等互联网服务背后常见的基础技术。 在这些互联网服务里&#xff0c;我们经常要比较两个词或者两段文本之间的相关性。为了做这样的比较&#xff0c;我们往往把词表示成计算机适合处理的方式。最…

CRM管理系统有哪些优势?在企业中有什么作用?

CRM管理系统有哪些优势&#xff1f;在企业中有什么作用&#xff1f; 其实&#xff0c;公司上crm管理系统不仅不会增加员工负担&#xff0c;还能提升员工满意度、赋能员工。当然&#xff0c;前提是一款优质的CRM管理系统。 那么&#xff0c;一款优质的CRM管理系统一般具备哪些…

45.Promise,async,await

目录 1 Promise 1.1 状态 1.2 then 1.3 任务的优先级 1.4 连续then 1.4.1 then()的返回值也是一个Promise对象 1.4.2 默认情况下&#xff0c;在第一个then之后&#xff0c;会执行第二个then的成功函数 1.4.3 then的value可以用返回值传递 1.4.4 通过then的返…

为什么老年人会经常性出现吃饭呛咳的情况 什么因素导致的

其实很多老年人在吃饭或是喝水的时候&#xff0c;都存在吞咽困难的问题&#xff0c;呛咳或者是忘了如何下咽。其实在老年人群体当中&#xff0c;这也是一种较为常见的现象&#xff0c;但是很多人都把这种现象当回事。 对于呛咳的现象是很好判断的&#xff0c;在家里老人喝水或是…

专注区块链底层技术突破,“复杂美”用技术开源推动产业未来

杭州复杂美科技有限公司&#xff08;以下简称&#xff1a;复杂美&#xff09;成立于2008年&#xff0c;是一家致力于高性能撮合技术研发的区块链底层技术提供商&#xff0c;专注于区块链撮合系统、区块链清算系统的应用与推广。 公司于2013年启动区块链、智能合约的研发应用&am…

PyTorch 深度学习实战 | 基于 ResNet 的花卉图片分类

“工欲善其事&#xff0c;必先利其器”。如果直接使用 Python 完成模型的构建、导出等工作&#xff0c;势必会耗费相当多的时间&#xff0c;而且大部分工作都是深度学习中共同拥有的部分&#xff0c;即重复工作。所以本案例为了快速实现效果&#xff0c;就直接使用将这些共有部…

36岁大龄程序员被裁,找了2个月工作,年包从100万降到50万,要不要接?

为了找到工作&#xff0c;你愿意接受降薪多少&#xff1f;一位36岁的杭州程序员问&#xff1a;36岁被裁&#xff0c;找了2个月工作&#xff0c;年包从100万降到50万&#xff0c;真心纠结&#xff0c;要不要接&#xff1f;网友们分成了旗帜鲜明的两派&#xff0c;一派人认为不要…

【数学模型】欧拉公式和证明

一、说明 在图型学中&#xff0c;欧拉公式很有用处&#xff0c;比如皮克定律也可以用欧拉公式证明。本篇介绍欧拉公式的定义和三个证明过程。 二、欧拉公式 在任何一个规则球面地图上&#xff0c;用 R记区域个 数 &#xff0c;V记顶点个数 &#xff0c;E记边界个数 &#xff0c…

BGP基础知识

今天海翎光电的小编主要介绍一下BGP的相关基础知识&#xff0c;文章浅显易懂&#xff0c;适合对BGP完全没有了解的同学。 BGP介绍 边界网关协议BGP&#xff08;Border Gateway Protocol&#xff09;是一种实现自治系统AS&#xff08;Autonomous System&#xff09;之间的路由可…

【cmake篇】选择编译器及设置编译参数

实际开发的过程中&#xff0c;可能有多个版本的编译器&#xff0c;不同功能可能需要设置不同的编译参数。 参考博客链接&#xff1a;选择编译器及设置编译器选项 目录 一、选择编译器 1、查看系统中已有的编译器 2、选择编译器的两种方式 二、设置编译参数 1、add_compi…

CSSOM和CSSOM View

CSSOM和CSSOM View这两个我都不是熟悉的领域。 1.描述样式表和规则等 CSS 的模型部分&#xff08;CSSOM&#xff09; cssom中document.styleSheets &#xff1a;获取文档中所有的样式&#xff08;只读&#xff09;&#xff0c;这个不常见&#xff0c;不做过多的介绍 2.元素视图…

科普|汽车毫米波雷达的规定和标准 微功率短距离无线电发射SRRC认证

01 — 24-24.25 GHz 上一篇提到&#xff0c;在我国《微功率短距离无线电发射设备目录和技术要求》中&#xff0c;保留了24-24.25 GHz的频段作为H类设备&#xff0c;可以用于汽车雷达&#xff0c;它的发射功率限值是&#xff1a;20mW (e.i.r.p)&#xff0c;近似为13dBm。除了…

【Open CASCADE -生成MFC和QT事例方式】

源代码目录 adm目录&#xff1a;包含编译OCCT的相关工程; adm/cmake目录&#xff1a;包含使用CMake构建OCCT的相关处理脚本; adm/msvc目录&#xff1a;包含window平台 Visual C 2010, 2012, 2013, 2015, 2017 and 2019等版本的32/64平台solutinon文件; data目录&#xff1a; 包…

ESP32驱动1.28寸GC9A01播放视频(二、程序说明和效果展示)

ESP32驱动1.28寸GC9A01播放视频&#xff08;二、程序下载和效果展示&#xff09;1.28寸GC9A01屏幕屏幕引脚定义程序说明程序更改1、Arduino_DataBus *bus和Arduino_GC9A01 *gfx要改成ESP32匹配的2、SPI库的SPI.cpp文件中的“SPIClass::begin”函数中&#xff0c;引脚定义需要跟…

分布式跟踪系统

分布式跟踪系统 背景 当代的互联网的服务&#xff0c;通常都是用复杂的、大规模分布式集群来实现的。互联网应用构建在不同的软件模块集上&#xff0c;这些软件模块&#xff0c;有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器&#xff0…