jeecg mysql主从复制

JEECG容器化部署 JEECG代码中有一个Dockerfile,基本思路是以CentOS为基础镜像,在其中安装了nginx、jdk、mysql和redis,将编译出来的前端文件拷贝至nginx的指定目录,后端的jar文件放至根目录,并生成nginx的配置文件和脚本启动文件,在脚本启动文件中启动redis、nginx和java -jar的后端服务,这篇文章将MySQL和Redis拿出来,作为容器化部署的一种粗糙的解决方式。 阅读详情

一、MySQL 主库配置

假设我们有一个MySQL实例作为主库(Master),IP为192.168.1.100,端口默认3306。

修改my.cnf文件:

[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=jee_cgboot1  # 第一个需要同步的数据库名
binlog-do-db=jee_cgboot2  # 第二个需要同步的数据库名
# 添加更多需要同步的数据库名

重启MySQL服务使配置生效:

sudo systemctl restart mysql

创建用于复制的用户:

登录到MySQL主库服务器,执行以下SQL命令:

CREATE USER 'replicator'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
FLUSH PRIVILEGES;

– 创建用户可以新增、插入、更新的表

GRANT SELECT, INSERT, UPDATE ON `cm_retire_business2.0`.* TO 'app_admin'@'%';

– 查看该用户所有权限(含数据库级授权)

SHOW GRANTS FOR 'app_admin'@'%';

查看二进制日志信息:

SHOW MASTER STATUS;

记下File和Position值,后续从库配置会用到。

注意:一定要多查看主从表的position值是否一致,否则数据同步会出错
SHOW MASTER STATUS;

MySQL 从库配置

假设我们有另一个MySQL实例作为从库(Slave),IP为192.168.1.101,端口默认3306

修改my.cnf文件

[mysqld]
server-id=2
relay-log=mysql-relay-bin
read-only=1
log-slave-updates=1
replicate-do-db=jee_cgboot1  # 第一个需要同步的数据库名
replicate-do-db=jee_cgboot2  # 第二个需要同步的数据库名
# 添加更多需要同步的数据库名

重启MySQL服务使配置生效:

sudo systemctl restart mysql

设置从库指向主库:

-- 停止
STOP SLAVE;

-- 重新配置(注意:这里不需要指定 host,因为我们用的是 %)
CHANGE MASTER TO
  MASTER_HOST='192.168.10.61',
  MASTER_USER='app_admin',
  MASTER_PASSWORD='123456',
  MASTER_LOG_FILE='mysql-bin.000004', -- 替换为你实际的文件名
  MASTER_LOG_POS=1087,                 -- 替换为你实际的位置
  GET_MASTER_PUBLIC_KEY=1;              -- 加上这个参数,防止公钥问题

-- 启动
START SLAVE;

-- 查看状态
SHOW SLAVE STATUS\G

确保Slave_IO_Running和Slave_SQL_Running均为Yes。然后查看数据同步情况

常见问题

Position位置不同,需要同步

1、首先查看主从的状态
SHOW MASTER STATUS;
2、第一步:主库导出(记录新位置)

– 这条命令会自动锁表、导出数据、并记录当前最新的Binlog位置

mysqldump -u root -p --all-databases --single-transaction --master-data=2 > full_backup.sql
3、在从库回复(重置同步)
# 1. 导入数据(这一步会自动包含“CHANGE MASTER TO”的配置信息)
mysql -u root -p < full_backup.sql
-- 2. 启动同步
START SLAVE;

-- 3. 检查状态(确认两个都是Yes)
SHOW SLAVE STATUS\G

二、JEECG BOOT 配置

在application.yml 中进行配置

spring:
  datasource:
    dynamic:
      primary: master
      strict: false
      datasource:
        master:
          url: jdbc:mysql://192.168.1.100:3306/jee_cgboot_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
          username: root
          password: root_password
          driver-class-name: com.mysql.cj.jdbc.Driver
        slave_1:
          url: jdbc:mysql://192.168.1.101:3306/jee_cgboot_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
          username: root
          password: root_password
          driver-class-name: com.mysql.cj.jdbc.Driver

动态数据源切换

为了实现读写分离可以在代码中根据业务需求动态切换数据源。例如,在Service层通过注解或AOP方式实现。

import org.springframework.stereotype.Service;

@Service
public class UserService {

    @DS("master")
    public void addUser(User user) {
        // 写操作
    }

    @DS("slave_1")
    public User getUserById(String id) {
        // 读操作
    }
}
Jeecg框架入门 jeecg是一套后台管理系统框架 主要技术点:springMVC,springIOC,mysql,hibernate,maven,jsp 使用方法,从官网下载源码,解压到本地,导入到ide中,我这里是idea 导入项目–maven下载所需jar文件 配置文件修改说明: dbconfig.properties 是业务数据库配置 jeecg/jeecg_database.properties 是代码生 阅读详情

相关推荐

JEECG-Boot使用(一)PostgreSQL替换Mysql数据库

最近考虑用vue3去重写Thingsboard项目前端,替换Angular技术,所以来研究这个JEECG-Boot低代码平台。在application-dev.yml文件将mysql配置注释,datasource下加入PostgreSQL配置。如果有需要将mysql表转为PostgreSQL表的,可以使用Navicat--工具--数据传输,选择表格传输。前期准备工作这边不讲了,官网有环境配置文档,主要讲一下如何替换mysql数据库,改为PostgreSQL。从官网下载前后端源码。

weixin_71146793的博客 2572

JEECG-BOOT本地开发环境快速构建

JEECG是一个国内开源的快速开发的J2EE框架,JEECG-BOOT是基于Spring Boot的版本,这篇文章介绍一下快速搭建的方式。

知行合一 止于至善 1970

jeecg-boot安装和使用(入门)

Jeecg-boot 安装与使用 官方文档地址 http://doc.jeecg.com Jeecgboot 基于springboot+代码生成器的快速开发平台 采用前后端分离架构:SpringBoot,Mybatis,Shiro,JWT,Vue&Ant Design 安装所需插件: JDK: 1.8 Maven: 3.5+ MySql: 5.7+ Redis: 3.2 + Node Js: 10.0 + Npm: 5.6.0+ Yarn: 1.21.1+ Idea的lombok 开发工具 前端

一个菜鸡儿 1万+

JeecgBoot数据库高可用终极指南:主从复制与故障转移完整解决方案

JeecgBoot是一个基于Spring Boot的Java框架,专为企业级应用快速开发设计。在企业级应用中,数据库高可用是保障业务连续性的核心需求,本文将详细介绍如何在JeecgBoot中实现数据库主从复制与故障转移的完整解决方案,帮助新手用户轻松构建稳定可靠的数据架构。 ## 为什么数据库高可用对JeecgBoot应用至关重要 🚀 在现代企业应用中,数据库是核心数据存储中心,一旦数据库出

gitblog_00977的博客 1124

JEECG-Boot实战:5分钟搞定PostgreSQL替换MySQL(附避坑指南)

本文详细介绍了如何在JEECG-Boot开发平台中快速将MySQL数据库替换为PostgreSQL,包括环境配置、数据类型转换、数据迁移步骤及常见问题解决方案。通过实战指南和避坑技巧,帮助开发者高效完成数据库迁移,充分利用PostgreSQL的强大功能。

weixin_27943395的博客 454

JEECG Hibernate深入解析与应用

本文还有配套的精品资源,点击获取 简介:JEECG是一个集成了主流开发框架的Java快速开发平台,其中Hibernate作为关键部分,实现了Java对象与数据库之间的映射。本详解将介绍Hibernate的基础概念、配置方式、映射文件、系统初始化监听器以及与Mybatis的集成特性,为开发者提供完整的Hibernate应用指导。 1. JEECG快速开发平台介绍 ...

weixin_36282234的博客 925

jeecg设置mysql数据库_JEECG环境搭建

教程参考http://www.jeecg.org/forum.php?mod=viewthread&tid=2537JAVA环境搭建和tomcat搭建不会的可以百度,这里不讲了。先把一些必要的东西下载下来 链接:http://pan.baidu.com/s/1o85GvOm 密码:galzjeecg项目下载 百度云链接:http://pan.baidu.com/s/1cJCcqU ...

weixin_29475449的博客 2004

国产麒麟系统各版本镜像下载

以上各链接均为迅雷下载,禁止商业用途!

2302_79474754的博客 6134

Jeecg项目部署

Jeecg项目部署

小何的博客 4115

银河麒麟(ky10)x86与arm双架构下编译zlmediakit的实战指南

本文提供了在银河麒麟(ky10)操作系统上,针对x86与arm双架构编译部署流媒体服务器zlmediakit的完整实战指南。文章详细阐述了从环境准备、依赖安装、代码获取到编译构建与测试的全过程,重点解析了两种CPU架构下的关键差异与注意事项,帮助开发者高效完成国产化平台上的流媒体服务搭建。

weixin_29306875的博客 100

ZYNQ平台AXI DMA传输避坑指南:如何快速定位‘errors:200‘等中断故障

本文详细解析了ZYNQ平台AXI DMA传输中常见的'errors:200'等中断故障,提供了从寄存器解析到压力测试的完整解决方案。通过深入分析XILINX_DMA中断机制、错误分类及五步排查法,帮助开发者快速定位并解决DMA传输问题,提升系统稳定性与性能。

weixin_29159613的博客 440

JEECG-BOOT环境搭建:2.1.1版

JEECG是一个国内开源的快速开发的J2EE框架,JEECG-BOOT是基于Spring Boot的版本,这篇文章介绍一下搭建的方式(JEECG-BOOT 2.1.1)。

知行合一 止于至善 2万+

RK3308B开发板WiFi+蓝牙一体模组RTL8821CS驱动移植保姆级教程(含DTS配置与避坑点)

本文提供RK3308B开发板RTL8821CS WiFi+蓝牙模组驱动移植的完整教程,涵盖SDK环境配置、DTS设备树设置、内核编译优化及功能验证全流程。重点解析引脚复用冲突、电源管理等关键配置,并给出常见错误解决方案,帮助开发者快速实现双模通信功能。

weixin_42531163的博客 398

jeecg mysql_jeecg数据库切换至mysql8.0方式

1、修改pom.xml mysql版本8.0.112、修改dbconfig.properties文件hibernate.dialect=org.hibernate.dialect.MySQL5Dialectjdbc.url.jeecg=jdbc:mysql://172.xx.xx.xx:3306/dbname?useUnicode=true&characterEncoding=UTF-...

weixin_34310726的博客 758

Robosuite实战:通过Xbox手柄实现机械臂6-DoF精准控制的完整指南

本文详细介绍了如何通过Xbox手柄实现机械臂的6-DoF精准控制,结合Robosuite仿真环境与MuJoCo物理引擎,提供从环境配置到代码实现的完整指南。文章重点解析了手柄映射原理、核心控制代码以及数据采集优化技巧,帮助开发者高效完成机械臂控制任务。

weixin_29169505的博客 419

YOLO26 实战全流程:从数据集标注到端到端无NMS推理(完整版,附ProgLoss核心调参技巧+避坑指南)

本章节是实战经验的精华❌ 数据集标注不规范,导致模型精度低 → ✅ 严格遵守工业级标注规范,标注框紧贴目标边缘,不要漏标/多标;❌ 训练时未使用预训练权重,导致收敛极慢 → ✅ 必须开启,预训练权重能让模型快速收敛;❌ ProgLoss参数调整幅度过大,导致训练崩溃 → ✅ 每次只调整一个参数,幅度±0.02即可,循序渐进;❌ 推理时强行添加NMS参数,画蛇添足 → ✅ YOLO26无需NMS,推理命令中不要加conf/iou参数,否则会降低推理速度;

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1141

Centos下部署JEECG及jdk、redis、mysql、nginx软件安装与配置

好久没有写文章了。今天在centos部署jeecg遇到了些问题,主要还是生疏造成的。记录下,以备后续查阅。对环境部署不是太熟悉的也可以参考。内容不深,共同交流。 目录 一、安装centos操作系统 二、安装软件 1,先说解释下“yum”命令的用法 2,安装 Java JDK 3,安装redis 4,安装mysql 5,安装nginx 三、软件配置 1,redis配置:(密码设置、开机自启动) 2,mysql配置(设置root密码,设置远程连接) 四、部署JEECG 一、安装

lch_cn的专栏 1714

通信原理 | 随机数仿真 | 均匀、正态、双高斯、瑞利、莱斯、对数正态、nakagami、Suzuki分布的随机数仿真(matlab)

信道建模在通信系统设计和分析中扮演着至关重要的角色。它指的是使用数学和物理模型来描述和模拟无线或有线通信路径中的信号传播特性。

若北辰 1986

jeecg设置mysql数据库_jeecg数据库切换至mysql8.0方式

1、修改pom.xml mysql版本8.0.112、修改dbconfig.properties文件hibernate.dialect=org.hibernate.dialect.MySQL5Dialectjdbc.url.jeecg=jdbc:mysql://172.xx.xx.xx:3306/dbname?useUnicode=true&characterEncoding=UTF-...

weixin_39562554的博客 853

机器人轨迹规划——梯形速度轨迹(超详细)

机器人轨迹 这一系列轨迹教程将主要包括以下内容: 点到点轨迹(P2P) 五次多项式插值轨迹 三次多项式插值轨迹 梯形速度曲线轨迹 双S形速度曲线轨迹 多个自由度轨迹的时间同步 在线轨迹规划 多项式在线轨迹规划 梯形在线轨迹规划 双S形在线轨迹规划 非线性实时轨迹滤波 多点轨迹(Multi-point) 三次样条曲线(cubic spline) 贝赛尔曲线(Bezier Curve) B样条曲线(BSpline) 时间最优轨迹 三次样条时间最优轨迹 任意路径下的时间最优轨迹 时间

出门搔白首,若负平生志 1万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

JEECG 开源项目安装与配置指南

JEECG(J2EE Code Generation)是一款基于代码生成器的智能开发平台。它主要旨在通过半智能手工MERGE开发方式,帮助解决Java项目中的重复工作,从而显著提高开发效率并减少开发成本。JEECG适用于各种J2EE项目,尤其是企业信息管理系统(MIS)、内部办公系统(OA)、企业资源计划系统(ERP)和客户关系管理系统(CRM)等。 该项目主要使用Java作为编程语言,结合了多...

gitblog_00921的博客 784

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

JEECG

JEECG(J2EE Code Generation)是一款基于代码生成器的智能开发框架,采用代码生成+手工MERGE半智能开发模式,可以帮助你解决Java项目中50%的重复工作,让你更多关注业务逻辑。 JEECG论坛:http://www.jeecg.org 在线演示:http://demo.jeecg.org 入门视频:http://www.jeecg.org/forum.php?...

qq_39261048的博客 818

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

JEECG使用CXF提供WebService服务

JEECG使用CXF提供WebService服务 一、软件版本 JEECG版本:4.0 其它 JDK版本:1.8 开发工具:IntelliJ IDEA MySQL版本:5.6.43 Apache CXF官网:https://cxf.apache.org/ 二、JEECG使用CXF 1.项目配置 1.下载源码:https://gitee.com/jeecg/jeecg 2.打开 pom.x...

Quantum-Clock 1186

JEECG-BOOT使用心得

最近为了方便自己的工作,想写一个简单的DNS资源记录的管理系统,这类管理系统其实之前也用各种编程语言、各类框架实现过,功能上虽然说不是很完善,但也能满足自己的一些系统管理工作。其实最简单的无非是把已有的拿过来改改,但这样有点繁琐,而且容易出错,不符合程序员的思维——能用代码自动完成的,就不手工去做。虽然编写代码需要时间,但是后期使用就很方便,就像我常说的磨刀不误砍柴工。 所以就想着去找一个直接通过...

liudonghua0108的博客 2392

jeecg最新版本的环境搭建详解

今天给大家介绍下最近比较流行的开源框架jeecg的环境搭建,项目信息和需要的环境如下 JEECG版本:jeecg-jeecg-master(非maven版) 服务器版本:apache-tomcat-6.0.43 MySQL版本:MySql-5.0.2...

choudangyu0057的博客 805
上一篇: LangGraph4j 入门
下一篇: RAG检索增强生成
智汇风渔AI小白
博客等级 码龄7年 1万+粉丝 179原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智汇风渔AI小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值