AiFlutter 文档AiFlutter 文档
视频教程
入门指南
更新日志
官网
市场
社区
低代码平台
GitHub
视频教程
入门指南
更新日志
官网
市场
社区
低代码平台
GitHub
  • 入门指南

    • AiFlutter 简介
      • 产品介绍
    • 快速开始
    • 工作空间概览

      • 工作台
      • 进入工作台
      • 工作台结构
      • 账户设置
      • 订单中心
      • 项目
      • 团队
      • 资源
    • 操作界面说明

      • 操作界面简介
      • 素材管理
      • 日志管理
      • 主题设置
      • App设置
      • 小部件面板
      • 自定义组件
      • 页面管理
      • 页面编辑窗口
      • 流程图
    • 组件介绍

      • 页面布局
      • 内容展示
      • 动画图表
      • 交互行为
      • 表单元素
      • 页面导航
      • 系统工具
    • 集成硬件
    • API管理
    • 自定义管理
    • 数据库
    • 云端数据库私有化部署
    • App 多平台上架操作流程
    • 应用宝(腾讯开放平台)开发者账号申请
    • 应用宝 AiFlutter
    • 应用宝 手动上架
    • Apple Developer 账号申请
    • Apple Store Connect 自动上架
    • Apple Store Connect 手动上架
    • Google Play 谷歌开发者账号申请
    • Google Play 自动上架
    • Google Play 手动上架
    • 邓白氏编码(D-U-N-S Number)申请全流程
    • APP 备案全流程
    • 百度网盘获取Token教程
    • 阿里云盘获取Token教程
    • Cron 表达式使用教程
    • 实践案例

      • 老板要求两天开发一个App,半天搞定!!!

云端数据库私有化部署

概述

本文档用于指导PostgreSQL 16 + Java 后端一体化云端私有化部署,包含云服务器搭建、Linux/Windows 双环境数据库安装、后端服务部署全流程,统一规范操作命令、配置项、风险约束与校验步骤,降低部署出错概率。

一、前置资源规划(云服务器可选)

若需部署至公有云服务器,按本节规范创建实例;本地服务器部署可跳过本节。

1.1 服务器基础规格要求

配置项标准参数补充说明
操作系统AlmaLinux 9.x仅推荐该镜像,适配 PostgreSQL 官方 yum 源
最低性能2 核 4G仅测试环境使用
生产推荐性能4 核 8G数据库 + 后端服务同机部署标准配置
存储空间≥30G 系统盘,数据库独立盘≥100G数据持续增长,生产环境建议扩容
部署载体公有云 ECS 云服务器支持阿里云、腾讯云等主流厂商

1.2 安全组开放端口清单

端口服务用途访问权限控制建议
22SSH 远程连接仅固定办公 IP 放行,禁止 0.0.0.0/0 全开放
5432PostgreSQL 数据库内网互通放行,公网默认禁止访问
8080Java 后端服务业务客户端公网放行

1.3 云服务器创建步骤

  1. 登录云厂商服务器控制台,选择业务就近地域,降低网络延迟
  2. 点击「创建实例 / 启动实例」,镜像选择 AlmaLinux 9.0
  3. 实例规格选择生产推荐 4 核 8G(测试环境可降级 2 核 4G)
  4. 设置服务器 root 登录密码,保存密码妥善保管
  5. 确认配置后启动实例,等待服务器初始化完成
  6. 进入安全组配置,按上表放行业务所需端口,收紧源 IP 访问规则

参考资料

  • 阿里云服务器申请
  • 云服务器安全组和防火墙开放端口

二、PostgreSQL 16 数据库部署

数据库规范

配置项标准要求安全说明
数据库版本PostgreSQL 16统一版本,避免兼容性问题
内置管理员账号postgres系统默认账号
数据库名aiflutter_test初始化脚本固定库名
数据库端口5432端口占用可自定义修改
存储最低容量≥100G独立数据盘,禁止存放系统日志
外部公网访问默认关闭仅内网互通,防止暴力破解
密码复杂度≥8 位,包含大小写字母 + 数字 + 特殊符号禁止简单弱密码

2.1 Linux(AlmaLinux 9)部署流程

步骤 1:安装 PostgreSQL 官方 YUM 源

# 导入pg16官方yum源
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# 屏蔽系统内置低版本PostgreSQL模块
sudo dnf -qy module disable postgresql

# 更新全部软件源
sudo yum update -y

# 安装pg16服务端
sudo yum install -y postgresql16-server

# 初始化数据库数据目录
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb

步骤 2:修改数据库连接配置(开启内网全地址访问)

  1. 修改主配置 postgresql.conf
sudo vi /var/lib/pgsql/16/data/postgresql.conf

修改核心参数:

listen_addresses = '*'
log_timezone = 'UTC'
timezone = 'UTC'
  1. 修改访问鉴权文件 pg_hba.conf
sudo vi /var/lib/pgsql/16/data/pg_hba.conf

替换文件末尾连接规则:

# 本地套接字登录
local   all             all                                     peer
# IPv4 所有内网地址加密访问
host    all             all             0.0.0.0/0          scram-sha-256
# IPv6 本地回环访问
host    all             all             ::1/128            scram-sha-256

步骤 3:设置开机自启并启动数据库

# 设置开机自启
sudo systemctl enable postgresql-16
# 启动数据库服务
sudo systemctl start postgresql-16
# 校验服务运行状态
sudo systemctl status postgresql-16

步骤 4:初始化数据库

数据库文件下载:前往AIFlutter的目标项目中点击 导出云端数据库,最终会得到一个table_info.sql文件

image-20260711222112972

# 切换postgres超级用户
sudo -i -u postgres
# 进入数据库命令行
psql

# 1. 创建业务数据库
CREATE DATABASE aiflutter_test;
# 2. 退出pgsql
\q
# 3. 导入初始化 SQL 脚本
psql -d aiflutter_test -f /脚本存放路径/table_info.sql

步骤 5:创建用户并授权

# 1. 创建业务访问用户(自定义高强度密码)
CREATE USER aiflutter WITH PASSWORD 'aiflutter2026';

# 2. 分配数据库连接权限
GRANT CONNECT ON DATABASE aiflutter_test TO aiflutter;

# 3. 分配公共模式使用权限
GRANT USAGE ON SCHEMA public TO aiflutter;

# 4. 分配表CRUD权限
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public TO aiflutter;

# 5. 分配自增序列完整权限
GRANT ALL ON ALL sequences IN SCHEMA public TO aiflutter;

# 退出psql
\q

2.2 Windows 环境部署流程

前置硬件 / 系统要求

  • 操作系统:Windows 10 及以上版本
  • 内存:≥4GB
  • 磁盘剩余空间:≥2GB,建议单独分配大容量磁盘存放数据

步骤 1:下载安装包

官方下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

选择版本:PostgreSQL 16.X Windows x64 安装包

步骤 2:安装向导配置

  1. 双击 postgresql-x.x.x-windows-x64.exe,一路 Next

  2. 组件勾选:

    全选

    • PostgreSQL Server
    • pgAdmin 4
    • Stack Builder
    • Command Line Tools
  3. 安装路径自定义(不推荐 C 盘),记录安装目录;数据目录单独分配大容量磁盘

  4. 设置 postgres 超级用户密码,妥善留存

  5. 数据库端口默认 5432,端口占用可自定义修改

  6. 语言选择英文,避免中文编码乱码问题

  7. 等待 5~10 分钟安装完成,取消 Stack Builder 勾选,点击 Finish

步骤 3:创建库、用户并导入初始化脚本

数据库文件下载:前往AIFlutter的目标项目中点击 导出云端数据库,最终会得到一个table_info.sql文件

image-20260711222112972

打开 CMD 命令提示符执行:

# 进入pg安装bin目录
cd C:\Program Files\PostgreSQL\16\bin
# 使用超级用户登录
psql -U postgres
# 创建业务库
CREATE DATABASE aiflutter_test;
\q
# 导入初始化SQL脚本
psql -U postgres -d aiflutter_test -f "脚本完整路径\table_info.sql"

权限分配 SQL 与 Linux 环境完全一致,登录 psql 后执行同上文权限语句。

三、Java 后端服务部署

3.1 运行环境标准

组件指定版本补充说明
JDKOpenJDK 21后端运行唯一指定版本
构建工具Maven 3.6.3打包编译使用
运行系统AlmaLinux 9 / Windows10+双环境兼容
后端端口8080可自定义修改

OpenJDK21 官方下载地址:https://learn.microsoft.com/zh-cn/java/openjdk/download?cid=kerryherger#openjdk-21

3.2 JDK 环境安装

Linux AlmaLinux 9

sudo yum install java-21-openjdk.x86_64 -y
# 验证安装
java -version

Windows

访问官方链接下载 Windows x64 版本安装包,双击安装并配置系统环境变量JAVA_HOME。

3.3 上传部署文件至服务器

部署文件下载链接:部署文件包

Linux 服务器上传

使用 rz 命令上传 4 个核心文件至同一目录:

rz -bey
# 需要上传文件清单
# 1. sql-father.jar  后端程序包
# 2. application.yml 生产配置文件
# 3. logback.xml     日志配置文件
# 4. start.sh        Linux启动脚本

Windows 部署

图形化拖拽解压,将 4 个文件放置在同一文件夹。

3.4 生产配置文件修改(application.yml)

配置文件与 jar 包同级存放,核心修改数据库连接信息:

spring:
  application:
    name: sql-father-backend
  profiles:
    active: prod
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher
  datasource:
    driver-class-name: org.postgresql.Driver
    # 修改为数据库服务器内网IP
    url: jdbc:postgresql://数据库IP:5432/aiflutter_test
    # 替换为业务账号aiflutter
    username: aiflutter
    # 替换数据库账号高强度密码
    password: 自定义数据库密码
server:
  address: 0.0.0.0
  port: 8080 # 可自定义业务端口
  servlet:
    session:
      timeout: "P30D"
      cookie:
        same-site: none
        secure: true

3.5 后端服务启动命令

Linux 后台启动

# 后台静默运行,日志输出至空设备
nohup java -jar -Dspring.profiles.active=prod sql-father.jar >/dev/null 2>&1 &

Windows 后台启动

javaw -Dspring.profiles.active=prod -jar sql-father.jar

3.6 部署验证

服务启动完成后访问接口地址,能正常返回即部署成功:

http://服务器IP:8080/api/

四、部署安全规范

  1. PostgreSQL 数据库禁止直接暴露公网,仅内网互通访问;如需外部调试,通过 SSH 隧道连接。
  2. 所有数据库账号、服务器 root 账号必须使用高强度密码,定期轮换。
  3. 云服务器安全组最小权限原则,仅放行业务必需端口,限制访问源 IP。
  4. 生产环境禁止使用 postgres 超级用户对接后端业务,统一使用业务专用账号aiflutter。
  5. 服务器 SSH 端口 22 仅办公固定 IP 放行,关闭全网无限制访问。
上次更新:
上一篇
数据库
下一篇
App 多平台上架操作流程