`

mysql 读写分离

阅读更多

 mysql 读写分离

1. 引入包

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
    <version>3.5.1</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.32</version>
</dependency>

 

2. yml配置

spring:
  datasource:
    dynamic:
      datasource:
        master:
          poolName: write-pool
          url: jdbc:mysql://192.168.10.10:6001/db?useUnicode=true&characterEncoding=UTF-8&noAccessToProcedureBodies=true&autoReconnect=true&failOverReadOnly=false&rewriteBatchedStatements=true&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
          username: user_1
          password: password1
          driver-class-name: com.mysql.cj.jdbc.Driver
          hikari:
            max-pool-size: 100
            min-idle: 50
        slave:
          poolName: read-pool
          url: jdbc:mysql://192.168.10.10:6002/db?useUnicode=true&characterEncoding=UTF-8&noAccessToProcedureBodies=true&autoReconnect=true&failOverReadOnly=false&rewriteBatchedStatements=true&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
          username: user_1
          password: password2
          driver-class-name: com.mysql.cj.jdbc.Driver
          hikari:
            max-pool-size: 100
            min-idle: 50

 

3. 配置bean:MasterSlaveAutoRoutingPlugin ,此插件自动完成dataSource配置读取与创建,自动封装增删改查拦截器

@Configuration
@MapperScan(basePackages = {"com.iv.**.mapper"})
public class DynamicDataSourceConfiguration {

    /**
     * 读写分离插件
*
     * @return MasterSlaveAutoRoutingPlugin
     */
@Bean
public MasterSlaveAutoRoutingPlugin masterSlaveAutoRoutingPlugin() {
        return new MasterSlaveAutoRoutingPlugin();
}

}

 

4.如果无法启动,则exclude,DataSourceAutoConfiguration.class


@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})

 

分享到:
评论

相关推荐

    springboot+mysql读写分离

    springboot结合mysql主从来实现读写分离 一、实现的功能 1、基于springboot框架,application.yml配置多个数据源,使用AOP以及AbstractRootingDataSource、ThreadLocal来实现多数据源切换,以实现读写分离。mysql...

    spring mysql 读写分离

    Spring与MySQL读写分离** Spring作为一个灵活的Java应用程序框架,提供了多种方式来支持数据库的读写分离。通过配置数据源、事务管理器以及AOP(面向切面编程)等机制,Spring可以帮助我们透明地处理读写操作的路由...

    mysql 读写分离软件

    常见的MySQL读写分离软件有MySQL Proxy、MaxScale、HAProxy、AMQP等。每款软件都有其特点和适用场景,比如MySQL Proxy轻量级但功能相对简单,MaxScale是MySQL公司官方出品,功能强大且易于集成,HAProxy则常用于网络...

    springboot 实现mysql读写分离

    在IT行业中,数据库读写分离...总之,通过SpringBoot实现MySQL读写分离,不仅提高了系统的可扩展性和稳定性,还降低了单点故障的风险。在实际项目中,需要根据业务需求和系统规模,灵活选择合适的技术方案和配置策略。

    使用mysql-proxy实现mysql读写分离

    ### 使用mysql-proxy实现MySQL读写分离 随着业务规模的不断扩大,数据库系统往往成为整个系统中的瓶颈之一。为了提高系统的响应速度以及数据处理能力,一种常用的技术手段就是采用**读写分离**的方式。读写分离的...

    MySQL读写分离

    MySQL 读写分离实现原理和解决方案 MySQL 读写分离是指将数据库的读写操作分离到不同的服务器上,以提高数据库的性能和可用性。MySQL 读写分离可以通过主从复制实现,即一个主库和多个从库。主库负责写操作,从库...

    spring之mysql读写分离

    本文将深入探讨如何利用Spring AOP(面向切面编程)实现应用层的MySQL读写分离,并结合一主多从的配置来进行详细讲解。 首先,我们需要理解MySQL的主从复制机制。在主从复制中,数据的写操作(INSERT、UPDATE、...

    突破Java面试(50)-MySQL读写分离及主从同步延时解决方案.docx

    ### MySQL读写分离及主从同步延时解决方案 #### 一、引言 在现代互联网应用中,随着用户量的增长和业务复杂度的提高,单一数据库服务器往往难以满足高并发场景下的性能需求。为了有效应对这种挑战,许多企业选择了...

    基于SpringBoot,来实现MySQL读写分离技术.zip

    基于SpringBoot,来实现MySQL读写分离技术.zip基于SpringBoot,来实现MySQL读写分离技术.zip基于SpringBoot,来实现MySQL读写分离技术.zip基于SpringBoot,来实现MySQL读写分离技术.zip基于SpringBoot,来实现MySQL...

    mysql读写分离

    MySQL读写分离是一种数据库优化策略,它通过将数据库的读操作和写操作分离到不同的服务器上,以提高系统的并发处理能力和整体性能。在高流量的Web应用中,数据库经常成为性能瓶颈,读写分离可以有效地解决这个问题。...

    MySQL读写分离集群最佳实践

    ### MySQL读写分离集群最佳实践 #### 一、概述 在现代互联网应用中,随着数据量的不断增长以及用户访问量的激增,单一数据库服务器往往难以满足高性能、高可用性的需求。为了应对这一挑战,一种常见的解决方案是...

    mysql读写分离配置

    在进行MySQL读写分离配置前,我们需要确保有一个稳定的环境。本次配置环境为CentOS 7.2,并使用MySQL 5.7版本。 - **主数据库服务器(Master)**:192.168.206.100 - **从数据库服务器(Slave)**:192.168.206.200...

    mysql读写分离amoeba配置文件

    mysql读写分离 中间件amoeba配置文件配置号的改几个参数就可以直接用https://blog.csdn.net/z13615480737/article/details/79951505 参考这个改2个文件就可直接用

    mysql读写分离实现

    ### MySQL读写分离实现 #### 一、MySQL读写分离概述 MySQL的读写分离是一种常用的数据库优化技术,主要用于提高数据库系统的并发处理能力和可用性。它通过将数据查询(读操作)与数据更新(写操作)分布在不同的...

    mysql读写分离的中间件

    在linux下用于部署读写分离的中间件maxscale。它是实现mysql数据库的读写分离的

    基于Mycat实现Mysql读写分离以及分库分表.doc

    基于Mycat实现Mysql读写分离以及分库分表详解 本文档详细介绍了基于Mycat实现Mysql读写分离以及分库分表的技术,涵盖了Mycat安装、配置、读写分离、分库分表等多方面的知识点。 一、读写分离 Mycat读写分离是指将...

    构建高性能web之路mysql读写分离实战

    构建高性能web之路mysql读写分离实战 本文将详细介绍如何构建高性能的Web应用程序之路的MySQL读写分离实战。读写分离是MySQL高性能解决方案之一,将读写操作分离到不同的数据库服务器上,以提高数据库的性能和可...

    实现mysql读写分离+使用视频

    本教程将通过一系列视频和文档,详细讲解如何在MySQL环境中实现读写分离。 首先,我们来看“11-主从复制的原理.avi”。主从复制是实现读写分离的基础,它是指在一个MySQL集群中,一个节点(主节点)负责数据的写入...

    MySQL读写分离架构与实践--mysql-proxy

    MySQL主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy/Amoeba)来提升数据库的并发负载能力 这样的方案来进行部署与实施的

Global site tag (gtag.js) - Google Analytics