博客
关于我
Mysql集群
阅读量:318 次
发布时间:2019-03-04

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

Mysql集群与MyCat安装配置指南

1. 安装MySQL

1.1 说明

在虚拟化环境下,基于CentOS7操作MySQL安装。建议参考CentOS7官方文档或相关教程进行虚拟化环境搭建。

1.2 安装步骤

  • 下载MySQL安装包

  • 上传安装包

    • 使用secureCRT连接Linux系统,执行命令:
      sftp> put C:\Users\11712\Downloads\mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar
  • 解压安装包

    • 创建目录并解压:
      mkdir mysqltar -xvf mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar -C mysql/
  • 安装客户端

    • 进入目录并安装:
      cd mysql/rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm --force --nodeps
  • 安装服务端

    • 安装服务组件:
      rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm --force --nodeps
  • 配置默认字符集

    • 编辑/etc/my.cnf,添加以下内容:
      [mysqld]character-set-server=utf8collation-server=utf8_general_ci
  • 启动MySQL服务

    • 启动服务:
      service mysqld start
  • 登录MySQL

    • 使用命令登录:
      mysql -u root -p
    • 初始化密码可通过查看/var/log/mysqld.log获取。
  • 修改登录密码

    • 执行命令:
      set global validate_password_policy=0;set global validate_password_length=1;set password=password('123456');
  • 授权远程访问

    • 执行SQL语句:
      grant all privileges on *.* to 'root'@'%' identified by '123456';flush privileges;
    • 重启MySQL服务:
      service mysqld restart
  • 关闭防火墙

    • 停止防火墙服务:
      systemctl stop firewalld
  • 使用SQLYog连接

    • 默认用户名:root,密码:123456,端口:3306。
  • 2. MyCat简介

    2.1 MyCat概述

    MyCat是基于开源Cobar演变而来的数据库中间件,由多家公司的架构师和开发人员维护。支持MySQL及其他关系型数据库,提供高性能的数据分片集群解决方案。

    2.2 MyCat功能

    • 支持MySQL集群,提供读写分离和高可用性。
    • 简单易于部署,开发人员几乎无感知。
    • 支持多种数据库类型和数据存储方式。

    2.3 安装步骤

  • 下载安装包

  • 上传安装包

    • 使用secureCRT上传:
      put C:\Users\11712\Downloads\Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz
  • 解压并授权

    • 解压:
      tar -zxvf Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz mycat/cd mycatchmod -R 777 mycat
  • 配置环境变量

    • 编辑/etc/profile,添加以下内容:
      export JAVA_HOME=/root/jdk/jdk1.8.0_291export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/libexport MYCAT_HOME=/root/mycatsource /etc/profile
  • 启动MyCat

    • 进入目录并启动:
      cd /root/mycat/bin./mycat start
  • 查看端口

    • 使用命令查看端口:
      netstat -ant | grep 8066
  • SQLYog连接

    • 默认用户名:root,密码:123456,端口:8066。
  • 3. 集群配置

    3.1 环境准备

  • 服务器准备

    • 主从服务器集群,部署在两台Linux系统上。
  • 虚拟机配置

    • 使用桥接模式,无需修改MAC地址。
  • MySQL配置

    • 修改/var/lib/mysql/auto.cnf,设置server-uuid。
  • 服务启动

    • 关闭防火墙:
      systemctl stop firewalld
    • 启动MySQL服务:
      service mysqld restart
    • 启动MyCat服务:
      cd /root/mycat/bin./mycat restart
  • 端口验证

    • 查看MySQL和MyCat端口:
      netstat -ant | grep 3306netstat -ant | grep 8066
  • 测试连接

    • 确保能成功连接主从服务器。
  • 3.2 主从复制配置

  • 主服务器配置

    • 修改/etc/my.cnf
      [mysqld]log-bin=mysql-binserver-id=1innodb_flush_log_at_trx_commit=1sync_binlog=1
  • 从服务器配置

    • 修改/etc/my.cnf
      [mysqld]server-id=2
  • 执行SQL语句

    • 清除旧表:
      use mysql;drop table slave_master_info;drop table slave_relay_log_info;drop table slave_worker_info;drop table innodb_index_stats;drop table innodb_table_stats;source /usr/share/mysql/mysql_system_tables.sql;
    • 设置主从关系:
      change master to master_host='192.168.0.128', master_port=3306, master_user=root, master_password=123456, master_log_file='mysql-bin.000001', master_log_pos=154;start slave;
  • 3.3 读写分离配置

  • 修改server.xml

    • 配置用户名和密码:
      123456
      TESTDB
  • 修改schema.xml

    • 定义数据节点和表结构:
      select user()}
  • 重启MyCat

    • 进入目录并启动:
      cd /root/mycat/bin./mycat restart
  • 3.4 分库分表

    水平拆分

  • 主服务器配置

    • 修改server.xml
      0
    • 修改sequence_conf.properties
      #global sequence settingsGLOBAL.HESD=10001GLOBAL.MAXID=20000
  • 定义水平拆分表

    • 修改schema.xml
    • 定义数据节点:
  • 水平拆分表数据

    • 执行SQL语句:
      insert into product(id,name) values(next value for mycatseq_global, '华为');
  • 垂直拆分

  • 定义垂直拆分表
    • 修改schema.xml
    • 定义数据节点:
  • 常见问题解决

    网络配置问题

    解决方案:

    • 恢复默认网络配置:
      systemctl enable NetworkManager-wait-online.service

    MAC地址问题

    • 确保虚拟机配置正确,避免MAC地址冲突。

    防火墙问题

    • 停止并禁用防火墙服务:
      systemctl stop firewalldsystemctl disable firewalld

    通过以上步骤,可以实现MySQL集群和MyCat的高性能数据管理解决方案。

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

    你可能感兴趣的文章
    Objective-C实现fermat little theorem费马小定理算法(附完整源码)
    查看>>
    Objective-C实现FermatPrimalityTest费马素数测试算法(附完整源码)
    查看>>
    Objective-C实现fft2函数功能(附完整源码)
    查看>>
    Objective-C实现FFT快速傅立叶变换算法(附完整源码)
    查看>>
    Objective-C实现FFT算法(附完整源码)
    查看>>
    Objective-C实现fibonacci search斐波那契查找算法(附完整源码)
    查看>>
    Objective-C实现fibonacci斐波那契算法(附完整源码)
    查看>>
    Objective-C实现fibonacci斐波那契算法(附完整源码)
    查看>>
    Objective-C实现FIFO(附完整源码)
    查看>>
    Objective-C实现FigurateNumber垛积数算法(附完整源码)
    查看>>
    Objective-C实现finding bridges寻找桥梁算法(附完整源码)
    查看>>
    Objective-C实现first come first served先到先得算法(附完整源码)
    查看>>
    Objective-C实现FIR滤波器(附完整源码)
    查看>>
    Objective-C实现fischer yates shuffle洗牌算法(附完整源码)
    查看>>
    Objective-C实现fisherYates洗牌算法(附完整源码)
    查看>>
    Objective-C实现frequency finder频率探测器算法(附完整源码)
    查看>>
    Objective-C实现FTP文件上传(附完整源码)
    查看>>
    Objective-C实现fuzzy operations模糊运算算法(附完整源码)
    查看>>
    Objective-C实现Gale-Shapley盖尔-沙普利算法(附完整源码)
    查看>>
    Objective-C实现gamma recursive伽玛递归算法(附完整源码)
    查看>>