• Mysql8.x版本主从加读写分离(一) mysql8.x读写分离


    Mysql8.x版本主从加读写分离(一) mysql8.x主从_争取不加班!的博客-CSDN博客

    Mycata需要使用jdk    单独一台服务器部署的mycat   192.168.11.143

    手动上传jdk的包

    tar zxvf jdk-8u121-linux-x64.tar.gz  -C /usr/local/   解压

    cd /usr/local/

    mv jdk1.8.0_121/ java   

    vim /etc/profile   配置环境变量

    JAVA_HOME=/usr/local/java

    PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    source /etc/profile  刷新

    java -version  看下版本

    拉取mycat服务包

    wget https://github.com/MyCATApache/Mycat-Server/releases/download/Mycat-server-1675-release/Mycat-server-1.6.7.5-release-20200422133810-linux.tar.gz

    tar -xvf Mycat-server-1.6.7.5-release-20200422133810-linux.tar.gz  -C /usr/local/   解压

    /usr/local/mycat/conf/server.xml  前端应用程序连接 mycat 的用户信息

    /usr/local/mycat/conf/schema.xml  定义逻辑库,表、分片节点等内容

    因为版本兼容问题首先要替换一下mycat的5.x的驱动

    cd /usr/local/mycat/lib

    rm -rf mysql-connector-java-5.1.35.jar

    然后下载8.x的驱动

    wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.18/mysql-connector-java-8.0.18.jar

    mv  mysql-connector-java-8.0.18.jar  /usr/local/mycat/lib  移动到对应目录

    chmod 777 mysql-connector-java-8.0.18.jar    提权

    然后进行对应配置修改

    vim /usr/local/mycat/conf/server.xml

    如有多个库可以多配置几个代码片段 106-109的配置此片段是配置连接mycat对应的配置

    可以称作虚拟用户和虚拟库对应schema.xml 相应配置

    vim /usr/local/mycat/conf/schema.xml

    以下是配置文件中的每个部分的配置块儿

    checkSQLschema="false"     不检查sql

    sqlMaxLimit="100"          最大连接数

    dataNode="dn1" >         数据节点名称

    数据节点

    对应dataNode="dn1"

    dataHost="localhost1"            主机组虚拟的

    database="obr2022" />   真实的数据库名称

    主机组

    maxCon="1000" minCon="10"                最大最新连接

    balance="3"                              负载均衡读写分离配置3即可

    writeType="0"                            写模式配置

    dbType="mysql" dbDriver="native"            数据库配置

    switchType="1"                          当前节点不可用时自动切换节点

    slaveThreshold="100">                从节点支持线程数

       心跳检测配置

      

    writeHost host  写节点配置     readHost host    读节点配置 

    完整的配置截图

    配置完了来到主数据库创建mycat用户

    CREATE USER 'mycat'@'%' IDENTIFIED BY 'Zxcvbnm@2022';

    GRANT ALL PRIVILEGES ON *.* TO mycat;

    flush privileges;

    创建一个库以及表方便一会查看是否配置成功

    create database obr2022;    创建一个库

    create table obr (id int);  创建一个表

    insert into obr values (1); 插入数据

    启动mycat之前需要调整JVM添加一行配置

    vim wrapper.conf

    wrapper.startup.timeout=300   超时时间300秒

    /usr/local/mycat/bin/mycat start  启动mycat

    /usr/local/mycat/bin/mycat  status  查看启动状态

    配置完成后启动mycat登录

    mysql -umycat -pZxcvbnm@2022 -P8066 -h192.168.11.143 --default-auth=mysql_native_password

    因为mycat版本兼容问题都说登录要加这个参数--default-auth=mysql_native_password

    然后查看一下mycat的库,这个库是server.xml里配置的虚拟库,实际对应的是schema.xml

    配置里database="obr2022"真实库。

    进入数据库查看一下表信息

    访问和读取正常配置完成。

    配置mysql8.x的读写分离遇到了很多问题上面配置完成后如果有问题看对应报错、

    ERROR 1045 (HY000): Access denied for user 'mycat', because password is error

    如果登录mycat用户提示密码错误的话指定一下mysql的密码验证插件

    vim /etc/my.cnf

    添加配置

    default_authentication_plugin=mysql_native_password

    或者直接修改mycat用户的密码策略登录mysql

    use mysql

    select host ,user ,plugin  from user;   查看一下用户的密码策略我已经替换过了

    alter user 'mycat'@'%' identified with mysql_native_password by 'Zxcvbnm@2022';   把mycat的密码策略换成 mysql_native_password  

    还有一个错误是ERROR 1184 (HY000): Invalid DataSource:0   数据源无效

    1.如果提示数据源无效的话看看配置的逻辑库是否正确

    2.看看主节点mycat用户的权限可能是没权限

    3.mycat用户的账号密码配置一定要细!

      

  • 相关阅读:
    计算机毕业设计(附源码)python职业高中智慧教学系统
    爬虫使用Selenium生成Cookie
    Lwip之PPP、PPPoE实现(二)
    开源免费的流程设计器如何选型
    eclipse / sts 设置类注释模板
    《区块链公链数据分析简易速速上手小册》第4章:交易数据分析(2024 最新版)
    【云栖 2023】姜伟华:Hologres Serverless 之路——揭秘弹性计算组
    01|导读:背景知识对于理解文章究竟有多重要?
    【数据库系统】数据库编程
    java python php线上课程教学辅助系统 作业考试nodejs+vue+elementui
  • 原文地址:https://blog.csdn.net/W1124824402/article/details/128011084