博客
关于我
深入浅出MySQL(九)一看就懂的基于MYCAT的数据库分表分库案例
阅读量:349 次
发布时间:2019-03-04

本文共 1903 字,大约阅读时间需要 6 分钟。

MyCat数据库安装与使用指南

一、MyCat的基础理论知识

关于MyCat的基础理论知识可以参考以下文章以获取更详细的信息。

二、MyCat的安装与配置

MyCat的安装过程相对简单,主要步骤如下:

  • 下载压缩包并解压:

    使用Wget命令下载相应的MyCat压缩包:

    wget http://dl.mycat.io/Mycat-server-1.4-beta-20150604171601-linux.tar.gz

    解压命令:

    tar -zxvf Mycat-server-1.4-beta-20150604171601-linux.tar.gz
  • 设置环境变量:

    在/etc/profile中添加MyCat的环境变量:

    export MYCAT_HOME=/opt/mycat/mycatexport PATH=$PATH:$MYCAT_HOME/bin

    启动MyCat服务:

    $MYCAT_HOME/bin/mycat start
  • 配置数据库规则:

    MyCat支持数据库分片,需配置rule.xml和schema.xml文件。默认配置文件已足够,但建议根据需求进行定制。

  • 三、数据库设计与创建

    MyCat的默认数据库结构如下:

    • 数据库 (db01):存储users表。
    • 数据库 (db02、db03):存储item表的分片。

    具体操作步骤如下:

  • 创建用户表:

    在db01数据库中执行:

    CREATE TABLE users (    id INT AUTO_INCREMENT PRIMARY KEY,    name VARCHAR(50) NOT NULL,    indate DATETIME DEFAULT '0000-00-00 00:00:00') ENGINE=InnoDB DEFAULT CHARSET=utf8;
  • 创建项表:

    在db02和db03中执行:

    CREATE TABLE item (    id INT AUTO_INCREMENT PRIMARY KEY,    value INT DEFAULT 0,    indate DATETIME DEFAULT '0000-00-00 00:00:00') ENGINE=InnoDB DEFAULT CHARSET=utf8;
  • 配置MyCat路由规则:

    在rule.xml中定义分片规则:

    id
    mod-long
    2
  • 四、核心配置文件说明

  • service.xml:配置MyCat服务参数,包括端口、用户认证等。

    8066
    9066
    test
    TESTDB
    user
    TESTDB
    true
  • schema.xml:定义逻辑库、表和分片规则。

  • datahost.xml:配置数据节点和高可用性设置。

  • 五、启动与验证

  • 启动MyCat服务:

    $MYCAT_HOME/bin/mycat start
  • 查看启动日志:

    日志文件位于$MYCAT_HOME/log/目录下。

  • 连接MyCat数据库:

    使用Navicat(建议使用较新版本)进行远程连接,输入数据库地址和端口号即可。

  • 数据验证:

    • 插入用户数据:
      INSERT INTO users(name, indate) VALUES('kk', NOW());
    • 插入项数据:
      INSERT INTO item(value, indate) VALUES(100, NOW());
  • 通过以上步骤,可以成功配置并验证MyCat数据库的分片功能,实现高效的数据存储与管理。

    转载地址:http://iwte.baihongyu.com/

    你可能感兴趣的文章
    Python3编写网络爬虫10-数据存储方式三-CSV文件存储
    查看>>
    python3读取redis返回数据带有'b'的问题
    查看>>
    Python3连接MySQL
    查看>>
    Python关于isinstance函数的解析 | 附Demo(全)
    查看>>
    Python3:setup.py:完成所有任务的PIP安装(Build_ext+Install)
    查看>>
    python4.0 gil_Python 并发编程系列--1、浅谈GIL历史及对多线程的影响
    查看>>
    python60行绘图程序_天底下最简单的QT画图板,就一个类,60行代码
    查看>>
    Python: AES加密与解密
    查看>>
    Python: Range() 最大尺寸;动态的还是静态的?
    查看>>
    Python: Windows下用 multiprocessing 的深坑
    查看>>
    python:Could not find platform independent libraries <prefix>解决方法
    查看>>
    Python:datetime tzinfo 时区名称文档
    查看>>
    Python:deepcopy(list) vs new_list = old_list[:]
    查看>>
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:subprocess.call,stdout to file,stderr to file,在屏幕上实时显示stderr
    查看>>
    Python:TypeError:无法连接“str“和“int“对象
    查看>>
    Python:XPath 在 ElementTree 中不可用
    查看>>
    Python:从 FTP 服务器下载文件
    查看>>
    python:从列表中创建元组列表
    查看>>