实战mycat读写分离和分库分表(1)-本地mysql多实例搭建

来源:互联网 发布:mysql创建唯一约束 编辑:程序博客网 时间:2024/06/06 23:10

前言

出于学习的目的在本地搭建了一套基于mycat的mysql集群环境的流程,可以做到多主-多从,分库分表来应对大单表过千万数量级的瓶颈。软件环境为win10+mycat1.6+mysql-5.7.18

  1. 下载mysql for windows压缩包版本,然后创建4个目录分别为mysql-m1、mysql-s1、mysql-s2、mysql-s3,为一主多从做准备,接下来把压缩包分别压缩至这4个目录,并分别创建my.ini文件在目录下。
  2. my.ini配置准备
    mysql-m1:
    [mysqld] log_bin = log basedir = D:\\Program Files\\mysql-m1 datadir = D:\\Program Files\\mysql-m1\data port = 3306 character_set_server=utf8 server_id = 10
    mysql-s1:
    [mysqld] #log_bin = log 从库可以不开启binlog basedir = D:\\Program Files\\mysql-s1 datadir = D:\\Program Files\\mysql-s1\data port = 3307 character_set_server=utf8 server_id = 11
    mysql-s2:
    [mysqld] #log_bin = log 从库可以不开启binlog basedir = D:\\Program Files\\mysql-s2 datadir = D:\\Program Files\\mysql-s2\data port = 3308 character_set_server=utf8 server_id = 12
    mysql-s3:
    [mysqld] #log_bin = log 从库可以不开启binlog basedir = D:\\Program Files\\mysql-s3 datadir = D:\\Program Files\\mysql-s3\data port = 3309 character_set_server=utf8 server_id = 13
  3. 初始化mysql实例
    以管理员身份(不然会提示权限错误)运行命令提示符,cd至mysql-m1/bin目录下,执行mysqld install mysql-m1 --defaults-file="D:\Program Files\mysql-m1\my.ini",提示服务安装成功。接着初始化数据,执行mysqld --defaults-file="D:\Program Files\mysql-m1\my.ini" --initialize,稍等片刻,执行成功没有任何提示。另外三个库也以此类推安装并初始化。然后即可启动4个mysql服务,可以在操作系统的服务中找到启动也可用命令行的方式:net start mysql-m1
    注:--defaults-file属性一定要,并且要对应相关目录下的my.ini不然可能会导致mysql服务无法启动。
  4. 重置mysql的root用户密码
密码默认生成在data目录下xxx.err文件中有一行A temporary password is generated for root@localhost:xxx,就是密码了,然后cd到bin目录下执行命令,mysql -P3306 -uroot -pxxx,登录进去。执行以下命令修改root用户密码为123456,依次类推修改另外三个库的。
注:mysql -P 一定要加上,指定对应的端口号,不然是默认的3306
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
原创粉丝点击