• 深入mysql


    集群搭建之读写分离

    MySQL-Proxy下载

    https://downloads.mysql.com/archives/proxy/

     MySQL-Proxy安装

    准备一台机器作为MySQL-Proxy
    上传压缩包
     解压缩包
     tar -zxvf /software/mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz -C /usr/local/
     

     

    名字太长,把名字改成mysql-proxy

    mv mysql-proxy-0.8.5-linux-el6-x86-64bit/ mysql-proxy

    MySQL-Proxy配置

    创建mysql-proxy.cnf文件

    修改mysql-proxy.cnf文件的权限:chmod

    修改rw-splitting.lua脚本

    启动测试

    在当前目录下,执行mysql-proxy命令,后面跟着配置文件地址mysql-proxy.cnf(因为就在当前目录下,所以写的相对路径,可改成绝对路径)

    ./mysql-proxy --defaults-file=mysql-proxy.cnf

     执行ok后

     这样再使用连接测试,发现已经能连接了

    mysql -uroot -proot -h192.168.68.4 -P4040

     

    然后update数据,发现主从服务器的数据已跟着发生改变

    分库分表之MyCat实现

    什么是MyCAT?

    MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。

    MyCat有哪些作用

    目前虽然传统关系数据库存在一些列的先天弊端,但NoSQL数据库又将其替代,但是如果传统数据库易于扩展和分拆就可以极大的避免单机单库在数据增删改查方面的缺陷。

    MyCAT的关键特性

     支持 SQL 92标准

    支持Mysql集群,可以作为Proxy使用

    支持JDBC连接ORACLE、DB2、SQL Server,将其模拟为MySQL  Server使用

    支持galera for mysql集群,percona-cluster或者mariadb cluster,提供高可用性数据分片集群

    自动故障切换,高可用性

    支持读写分离,支持Mysql双主多从,以及一主多从的模式

    支持全局表,数据自动分片到多个节点,用于高效表关联查询

    支持独有的基于E-R 关系的分片策略,实现了高效的表关联查询

    多平台支持,部署和实施简单

    MyCAT架构

    如图所示:MyCAT使用Mysql的通讯协议模拟成了一个Mysql服务器,并建立了完整的Schema(数据库)、Table (数据表)、User(用户)的逻辑模型,并将这套逻辑模型映射到后端的存储节点DataNodeMySQL Instance)上的真实物理库中,这样一来,所有能使用Mysql的客户端以及编程语言都能将MyCAT当成是Mysql Server来使用,不必开发新的客户端协议。

    Mycat解决的问题

    性能问题

    数据库连接过多

    E-R分片难处理

    可用性问题

    成本和伸缩性问题

    Mycat读写分离

    Mycat读写分离和自动切换机制,需要mysql的主从复制机制配合。

  • 相关阅读:
    mybatis使用Example进行条件查询
    博客园页面DIY
    内网穿透
    使用ResponseEntity进行返回json数据
    spring中的ResponseEntity理解
    springboot整合mybatis通用Mapper
    解决pip安装过慢的问题
    【记录】linux 命令拷贝文件到远程服务器,linux下载文件到本地
    【记录】ELK之logstash同步mysql数据到Elasticsearch ,配置文件详解
    【记录】logstash 命令解释
  • 原文地址:https://www.cnblogs.com/ptxxc/p/12132629.html
Copyright © 2020-2023  润新知