mysql 分库分表 建表_【分库分表】sharding-jdbc实践—分库分表入门

一、准备工作

1、准备三个数据库:db0、db1、db2

2、每个数据库新建两个订单表:t_order_0、t_order_1

DROP TABLE IF EXISTS`t_order_x`;CREATE TABLE `t_order_x` (

`id`bigint NOT NULLAUTO_INCREMENT,

`user_id` bigint NOT NULL,

`order_id`bigint NOT NULL,

`order_no`varchar(30) NOT NULL,

`isactive`tinyint NOT NULL DEFAULT ‘1‘,

`inserttime`datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,

`updatetime`datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY(`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

二、分库分表配置

数据源的配置可以使用任何链接池,本例用druid为例。

1、引言依赖包:

引用最新的maven包

2.0.1

io.shardingjdbc

sharding-jdbc-core

${sharding-jdbc.version}

2、配置DataSource:

@Bean(name = "shardingDataSource", destroyMethod = "close")@Qualifier("shardingDataSource")publicDataSource getShardingDataSource() {//配置真实数据源

Map dataSourceMap = new HashMap<>(3);//配置第一个数据源

DruidDataSource dataSource1=createDefaultDruidDataSource();

dataSource1.setDriverClassName("com.mysql.jdbc.Driver");

dataSource1.setUrl("jdbc:mysql://localhost:3306/db0");

dataSource1.setUsername("root");

dataSource1.setPassword("root");

dataSourceMap.put("db0", dataSource1);//配置第二个数据源

DruidDataSource dataSource2=createDefaultDruidDataSource();

dataSource2.setDriverClassName("com.mysql.jdbc.Driver");

dataSource2.setUrl("jdbc:mysql://localhost:3306/db1");

dataSource2.setUsername("root");

dataSource2.setPassword("root");

dataSource2.setName("db1-0001");

dataSourceMap.put("db1", dataSource2);//配置第三个数据源<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值