openEuler 22.03 LTS 上源码安装 PostgreSQL 15

安装PostgreSQL 15

1 安装必要的依赖

#yum install -y readline-devel zlib-devel gcc

2、下载源码

# wget https://ftp.postgresql.org/pub/source/v15.6/postgresql-15.6.tar.gz
# tar -xzvf postgresql-15.6.tar.gz

3 配置

# cd postgresql-15.6/
# ./configure

4 编译安装

# ./configure
# make
# make install

5 创建用户和用户组

# groupadd postgres
# useradd -g postgres postgres
# passwd postgres
更改用户 postgres 的密码 。
新的密码: 
重新输入新的密码: 
passwd:所有的身份验证令牌已经成功更新。

6 初始化数据库

6.1 创建数据目录

# mkdir /usr/local/pgsql/data
# chown postgres /usr/local/pgsql/data

6.2 切换到 postgres 操作系统用户

# su - postgres

6.3 初始化数据库

[postgres@localhost ~]$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.The database cluster will be initialized with locale "zh_CN.UTF-8".
The default database encoding has accordingly been set to "UTF8".
initdb: could not find suitable text search configuration for locale "zh_CN.UTF-8"
The default text search configuration will be set to "simple".Data page checksums are disabled.fixing permissions on existing directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Asia/Shanghai
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... okinitdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.Success. You can now start the database server using:/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

6.4 启动数据库

[postgres@localhost ~]$ /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start
waiting for server to start.... done
server started
[postgres@localhost ~]$ 

把 start 改为 stop 就是停止。

7 安装后的操作系统配置

7.1 以管理员的身份配置/etc/profile

在/etc/profile.d 目录下新增 postgresql.sh 文件,内容如下

[root@localhost profile.d]# cat postgresql.sh 
export PATH=$PATH:/usr/local/pgsql/bin

7.2 设置开机自动启动

(1)创建启动文件

在/usr/lib/systemd/system 下创建文件 postgresql.service,内容如下:

# vim postgresql.service
[Unit]
Description=PostgreSQL database server
After=network.target
[Service]
Type=forkingUser=postgres
Group=postgres
OOMScoreAdjust=-1000
Environment=PGDATA=/usr/local/pgsql/data
Environment=PGPORT=5432ExecStart=/usr/local/pgsql/bin/pg_ctl start -D ${PGDATA} -l ${PGDATA}/logfile -s -o "-p ${PGPORT}" -w -t 300 
ExecStop=/usr/local/pgsql/bin/pg_ctl stop -D ${PGDATA} -l ${PGDATA}/logfile -s -m fast
ExecReload=/usr/local/pgsql/bin/pg_ctl reload -D ${PGDATA} -l ${PGDATA}/logfile -sTimeoutSec=300[Install]
WantedBy=multi-user.target

(2)设置自动启动

# chmod a+x postgresql.service 
# systemctl enable postgresql.service
# systemctl start postgresql.service

7.3 设置远程访问

PostgreSQL安装后,默认是只接受本地机器连接访问。如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置。以下是我配置远程连接PostgreSQL数据库方式:

(1)pg_hba.conf 配置PostgreSQL数据库的访问权限

修改配置文件:(PostgreSQL安装路径下的data,也是安装时data的默认路径)data目录下的 pg_hba.conf 和 postgresql.conf。

# cd /usr/local/pgsql/data
# vim pg_hba.conf

找到“# IPv4 local connections:“后,回车另起一行,添加参数行如下,保存。
host all all 0.0.0.0/0 trust
其中0.0.0.0/0表示运行任意ip地址访问

image

(2)postgresql.conf 配置PostgreSQL数据库服务器的相应的参数

找到“listen_addresses“参数后,设置listen_addresses = ‘*’,保存。

# vim postgresql.conf

image

设置好后重启服务即可被远程连接。

8 问题

8.1 远程连接失败解决方案

一般服务器端防火窗入站规则打开后,如果外部物理机远程连接失败。 建议在服务器端安装Navicat检查是否能够连接成功。如果可以连接成功,请在服务器进行安全组端口开放。

开放端口

# systemctl start firewalld.service(开启防火墙)
# systemctl stop firewalld.service(关闭防火墙)
# systemctl status firewalld(查看防火墙是否开启)

如需要开放80和443端口,如下:

# firewall-cmd --zone=public --permanent --add-port=80/tcp
# firewall-cmd --zone=public --permanent --add-port=443/tcp
# firewall-cmd --reload

查看所有开启的端口:

# firewall-cmd --list-ports

常用命令介绍:

firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac东西拷不进硬盘怎么回事 mac东西拷不进硬盘怎么办 mac硬盘读不出来怎么解决 mac拷贝不了东西到u盘

有时候我们在使用mac的过程中,可能会遇到一些问题,比如mac东西拷不进硬盘。这是一种很常见的情况,但是会影响我们的工作和生活。那么,mac东西拷不进硬盘是怎么回事呢?mac东西拷不进硬盘又该怎么办呢?本文将…

Flutter 动画(显式动画、隐式动画、Hero动画、页面转场动画、交错动画)

前言 当前案例 Flutter SDK版本:3.13.2 显式动画 Tween({this.begin,this.end}) 两个构造参数,分别是 开始值 和 结束值,根据这两个值,提供了控制动画的方法,以下是常用的; controller.forward() : 向前…

自助点餐系统微信小程序,支持外卖、到店等

总体介绍 系统总共分为三个端:后端,后台管理系统、微信小程序。 基于当前流行技术组合的前后端分离商城系统: SpringBoot2MybatisPlusSpringSecurityjwtredisVue的前后端分离的商城系统, 包含分类、sku、积分、多门店等 预览图…

【动态规划专栏】专题一:斐波那契数列模型--------4.解码方法

本专栏内容为:算法学习专栏,分为优选算法专栏,贪心算法专栏,动态规划专栏以及递归,搜索与回溯算法专栏四部分。 通过本专栏的深入学习,你可以了解并掌握算法。 💓博主csdn个人主页:小…

深度学习基础——卷积神经网络(一)

卷积操作与自定义算子开发 卷积是卷积神经网络中的基本操作,对于图像的特征提取有着关键的作用,本文首先介绍卷积的基本原理与作用,然后通过编写程序实现卷积操作,并展示了均值、高斯与sobel等几种经典卷积核的卷积效果&#xff…

变分自编码器(VAE)PyTorch Lightning 实现

✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心&…

290. Word Pattern(单词规律)

题目描述 给定一种规律 pattern 和一个字符串 s &#xff0c;判断 s 是否遵循相同的规律。 这里的 遵循 指完全匹配&#xff0c;例如&#xff0c; pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。 提示: 1 < pattern.length < 300 pa…

安装VMware+安装Linux

以上就是VMware在安装时的每一步操作&#xff0c;基本上就是点击 "下一步" 一直进行安装 安装Linux VMware虚拟机安装完毕之后&#xff0c;我们就可以打开VMware&#xff0c;并在上面来安装Linux操作系统。具体步骤如下&#xff1a; 1). 选择创建新的虚拟机 2). 选…

C. LR-remainders

思路&#xff1a;正着暴力会tle&#xff0c;所以我们可以逆着来。 代码&#xff1a; #include<bits/stdc.h> #define int long long #define x first #define y second #define endl \n #define pq priority_queue using namespace std; typedef pair<int,int> p…

如何确定分库还是 分表?

分库分表 分库分表使用的场景不一样&#xff1a; 分表因为数据量比较大&#xff0c;导致事务执行缓慢&#xff1b;分库是因为单库的性能无法满足要求。 分片策略 1、垂直拆分 水平拆分 3 范围分片&#xff08;range&#xff09; 垂直水平拆分 4 如何解决数据查询问题&a…

[计算机网络]---UDP协议

前言 作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、端口号…

老师不能有副业吗为什么

当老师走进教室&#xff0c;他们的每一句话、每一个动作都可能影响着几十上百个孩子的未来。这样的责任&#xff0c;难道是可以轻易分担的吗&#xff1f; 或许有人会说&#xff0c;老师为什么不能有副业&#xff1f;他们也有自己的生活&#xff0c;也需要经济支持。确实&#…

鸿蒙-基于ArkTS声明式开发的简易备忘录,适合新人学习,可用于大作业

本文地址&#xff1a;https://blog.csdn.net/qq_40785165/article/details/136161182?spm1001.2014.3001.5502&#xff0c;转载请附上此链接 大家好&#xff0c;我是小黑&#xff0c;一个还没秃头的程序员~~~ 不知不觉已经有很长一段时间没有分享过自己写的东西了&#xff0…

使用Postman拦截浏览器请求

项目上线之后&#xff0c;难免会有BUG。在出现问题的时候&#xff0c;我们可能需要获取前端页面发送请求的数据&#xff0c;然后在测试环境发送相同的数据将问题复现。手动构建数据是挺麻烦的一件事&#xff0c;所以我们可以借助Postman在浏览器上的插件帮助拦截请求&#xff0…

基于微信小程序的校园跑腿系统的研究与实现,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

第一件事 什么是 Java 虚拟机 (JVM)

1、什么是虚拟机&#xff1f; - 这个其实是一个挺逗的事情&#xff0c;说白了&#xff0c;就是基于某个硬件架构&#xff0c;在这个硬件部署了一个操作系统&#xff0c;再构架一层虚拟的操作系统&#xff0c;这个新构架的操作系统就是虚拟机。 不知道的兄弟姐妹们&#xff0c;…

[word] 怎么把word表格里的字放在正中间? #职场发展#知识分享#知识分享

怎么把word表格里的字放在正中间&#xff1f; word表格中文字在中间的处理方式如下&#xff1a; 1、在表格中选择需要居中的文字的单元格&#xff0c;具体如下图。 2、全选后&#xff0c;鼠标在工具栏中找到&#xff1a;对齐方式&#xff0c;点击它后面的倒三角&#xff0c;如…

头部新势力新车型将全系标配!4D成像雷达元年真来了?

4D成像雷达赛道又热闹起来了。 自2023年2月&#xff0c;森思泰克2片级联4D成像雷达STA77-6全球首发量产车型——理想L7正式发布上市&#xff0c;立下了国产4D成像雷达产品在乘用车前装量产的重要里程碑事件&#xff0c;业界普遍认为2023年将迎来4D成像雷达规模化量产元年。 尽…

重复导航到当前位置引起的。Vue Router 提供了一种机制,阻止重复导航到相同的路由路径。

代码&#xff1a; <!-- 侧边栏 --><el-col :span"12" :style"{ width: 200px }"><el-menu default-active"first" class"el-menu-vertical-demo" select"handleMenuSelect"><el-menu-item index"…

江淮瑞风RF8强势出圈,瀚思通与华为联手打造智能MPV新标杆

1月31日&#xff0c;江淮瑞风RF8正式上市&#xff0c;新车定位为“新国潮智能电混MPV”&#xff0c;引发市场高度关注。 新车共推出4款配置车型&#xff0c;售价区间为16.99-23.99万元。该车型基于中国品牌首个MPV专属架构—江淮瑞风 MUSE 共创智电架构打造。智能化层面&#x…