当前位置: 首页 > news >正文

EasyGBS/EasyNVR高并发适配!PostgreSQL部署指南

EasyGBS/EasyNVR高并发适配!PostgreSQL部署指南

在某些部署场景中,例如当客户新部署的EasyGBS或EasyNVR系统需要接入大量设备,或面临高并发访问压力时,我们默认采用的SQLite数据库可能因性能限制而不再适用。为确保系统稳定运行,此时需要选用性能更强的PostgreSQL数据库。

本文档将详细说明如何安装和配置PostgreSQL,以供大家参考。

1、安装数据库

sudo apt install postgresql postgresql-contrib

此命令是用来安装PostgreSQL contrib软件包的(centos请用yum install),可以提供PostgreSQL数据库系统的一些额外特性。当安装完成后,数据库会自动启动。

安装的包不是很大,通常很快就能完成安装和启动服务了。

image

2、配置PostgreSQL

1)在命令台上输入sudo -u postgres psql -c "SELECT version();"即可查询当前安装的数据库版本。

image

2)接着再配置本地计算机可以访问数据库,sudo -u postgres psql这个命令就是在本地计算机上连上PostgreSQL数据库。

SELECT version(); 这个就是在连上数据库后执行的 SQL 或者命令。

image

3、远程连接

默认情况下PostgreSQL是不接受远程连接的。服务器仅仅监听本地网络接口:127.0.0.1。

为了允许远程访问你的PostgreSQL服务器,打开配置文件postgresql.conf并且在 CONNECTIONS AND AUTHENTICATION一节添加listen_addresses = ‘*’。

接着保存并且重启数据库。

image

操作路径:

vi /etc/postgresql/18/main/postgresql.conf

重启数据库命令:

systemctl restart postgresql

接着我们需要修改HBA文件接受远程连接,使用命令行(sudo -u postgres psql)登录pgsql后,运行命令:

show hba_file;

服务器上将会显示下面的HBA文件的地址输出:

image

接着编辑HBA文件进行编辑,命令如下:

vi /etc/postgresql/18/main/pg_hba.conf

添加下面2行到这个文件的末尾:

host    all        all          0.0.0.0/0           scram-sha-256
host    all        all          ::/0                 scram-sha-256

接着保存并且重启数据库。

4、修改数据库登录密码

在服务器中通过sudo -u postgres psql进入数据库中,输入ALTER USER postgres WITH PASSWORD ‘******’;(*为你需要修改的密码) 修改后用连接工具看看能不能登录上。

image

image

登录上就代表安装成功了,接着在EasyGBS文件夹里的configs.toml的dsn配置栏里面配置连接的信息就可以启动了。

image

image

以上就是PostgreSQL数据库完整部署指南,希望能帮你顺利解决多设备接入、高并发场景下的数据库适配问题~

若操作中遇到疑问,欢迎在评论区留言交流,后续也会分享更多产品适配干货,记得持续关注哦!

http://www.rkmt.cn/news/45512.html

相关文章:

  • 详细介绍:K8S(七)—— Kubernetes Pod 进阶配置与生命周期管理全解析
  • 2025 11 10
  • 2025年工业制冷优质供应商Top 5榜单:专业评测与推荐
  • 2025年餐盒吸塑机批发厂家综合实力榜单:水果盒吸塑机/吸塑成型设备/酒托吸塑成型机源头厂家精选
  • PDG常见问题
  • 2025年工业制冷供应商综合实力排行榜:专业评测与选择指南
  • P10581 [蓝桥杯 2024 国 A] 重复的串 题解
  • AQS 是什么?
  • nginx详细配置
  • 污点和容忍度
  • 天气和预报
  • 2025年11月学习机品牌推荐:权威排行揭示清北双师与AI精准学差异
  • python: 一些ModuleNotFoundError报错的解决
  • 2025年11月学习机品牌推荐:销量排行榜聚焦双师1对1与同步课标
  • python报错:ModuleNotFoundError: No module named _sqlite3
  • 2025年苏式月饼礼盒供货厂家权威推荐榜单:五仁月饼/礼盒月饼/月饼价格源头厂家精选
  • 配对序列P11187: 线性dp
  • 2025年新疆广告公司权威推荐榜单:geo服务商/广告加盟/营销推广公司机构精选
  • 计算机毕设java的仓库管理系统 基于Java的智能仓库管理平台研发 Java技术驱动的仓库信息化管理系统设计与实现
  • 2025年大棚专用农膜供应商权威推荐榜单:双色大棚膜/大棚eva农膜/三层共挤大棚膜源头厂家精选
  • 【GitHub每日速递 20251110】开源AI编码神器OpenCode来袭!多平台安装,多模型适配,终端体验拉满
  • Gitee战略升级:从代码托管到AI驱动的工程效率平台
  • 2025年立式护散炉定制厂家权威推荐榜单:8英寸立式退火炉/立式合金炉/磷扩散炉源头厂家精选
  • 详细介绍:物联网常见通信Cat-1、NB-IoT、Cat-4、LoRa
  • 2025年11月中国伸缩门制造企业推荐排行榜单:智能出入管理解决方案权威指南
  • 100% 用 AI 做完一个新项目,从 Plan 到 Finished 我学到了这些
  • Gitee:构建国产化DevSecOps生态的领航者
  • 2025年重庆互联网公司排行榜单:诚信服务商top10
  • 深入解析:层次隐马尔可夫模型:理论与应用详解
  • volatile关键词:Java 可见性问题详解与示例:为什么线程写了值,另一个线程却看不见?