Mycat Mysql8.0配置详情

首先,安装Msyql8.0的时间要使用Mysql5.0的验证方式,

其实也就是my.ini中采用这种密码验证方式,至于如何设置,这里就不说了。度娘可以解决你的问题。default_authentication_plugin=mysql_native_password

下面我会附上下载地址,其中schema.xml中 checkSQLschema 我在源码中忘记修改了。

<schema name="monthdatadb" checkSQLschema="true" sqlMaxLimit="100">
checkSQLschema="true"  
checkSQLschema 这个必须修改成true

=======================================

源码中pom.xml中已经修改了MYSQL8.0的驱动

注意使用mysql8.0.12的一些问题
1.schema.xml中的下面的配置:

<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
           writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" slaveThreshold="100">
      <heartbeat>select user()</heartbeat>
      <writeHost host="hostM1" url="jdbc:mysql://192.168.0.103:3306?useSSL=false&amp;serverTimezone=UTC" user="root" password="123456">
         <readHost host="hostS2" url="jdbc:mysql://192.168.0.103:3306?useSSL=false&amp;serverTimezone=UTC" user="root" password="123456"/>
      </writeHost>
      <writeHost host="hostS1" url="jdbc:mysql://192.168.0.103:3306?useSSL=false&amp;serverTimezone=UTC" user="root" password="123456"/>
   </dataHost>

这两个地方比较重要,采用JDBC连接,当然可以采用 dbDriver="native"方式,不过我建议用JDBC就可以了。
URL :jdbc:mysql://192.168.0.103:3306?useSSL=false&amp;serverTimezone=UTC
dbDriver="jdbc"
2.源码中细节修改
SystemConfig.java 中增加8.0
      public static final String[] MySQLVersions = {"5.5", "5.6", "5.7", "8.0"};
      private int useHandshakeV10 = 1;修改为1,不然你用JDBC连接MYCAT的时间连接不上


3.测试,我用的是JdbcTemplate来测试的,当然你可以自己用JDBC连接方式来测试。

String driver = "com.mysql.cj.jdbc.Driver";//非常重要
String url = "jdbc:mysql://localhost:8066/monthdatadb?useSSL=false&serverTimezone=UTC";
String username = "root";
String password = "123456";

DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName(driver);
ds.setUrl(url);
ds.setUsername(username);
ds.setPassword(password);
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(ds);
List list = jdbcTemplate.queryForList("select * from teacher ");

System.out.println(list.size());

 

特别重要的是有一点,你必须拿一定的时间去研究过Mycat,2天左右应该足够,多去查下资料,如果你没研究过,很多配置你根本不了解。

 

我做了这样一个功能,最后几个月数据自动选择数据源。因为我们数据量比较大,他这个按照月份分表的方式会有一个问题,你需要经常去自己维护mycat。超过了数据源就找不到dn,这样比较麻烦,我这边会按照月份做拆分。最后动态选择数据源,如果有需要的,给我留言,我发出来,这个功能是没包含在该源码中的。

源码下载地址 https://download.csdn.net/download/yangshuai518/10595358

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值