mycat部署在本地, mysql也在本地的情况下, 连接mycat会报错

ERROR 3009 (HY000): java.lang.IllegalArgumentException: Invalid DataSource:0

原因:

https://www.jianshu.com/p/f15d64fcb2f3

mycat部署在本地以zk方式启动的时候, 初始化zk的时候, ./init_zk_data 会报错:

错误: 找不到或无法加载主类 io.mycat.config.loader.zkprocess.xmltozk.XmltoZkMain

因为是mac系统, 没有权限读取mycat的jar包, 导致zk无法正常加载....弃用, 购买阿里云ecs

关于自增id, 这篇博客讲的可以:

https://blog.csdn.net/yijiayi810/article/details/80094218

macos完全卸载mysql:

https://blog.csdn.net/u012721519/article/details/55002626

踩过的坑:

mycat1.6不支持单库分表;

最少要mycat1.6.5版本才支持单库分表;,

下载地址:

http://dl.mycat.io/1.6.5/

mycat自增主键的解决方案:

https://segmentfault.com/a/1190000015862596?utm_source=tag-newest

https://www.cnblogs.com/chinesern/p/7954373.html

https://blog.csdn.net/yelllowcong/article/details/79073608

忘记root密码;

①关闭服务:

  1. sudo service mysql stop;

②安全模式+免验证启动服务

  1. sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
 

  1.   ①新开一个终端,连接服务器:
    新开一个终端:
  1. mysql -u root
  2.  
  3.  ②切换到mysql数据库:
  1. use mysql;
 
③修改密码 
  1. update user set password = password('123456') where user='root';
4.重启mysql;
service mysqld restart; 
 
5.允许所有ip访问:
 
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
 
 
主从复制:

1、配置master(主服务器)

  1. vim /etc/my.cnf
  2. #[必须]启用二进制日志
  3. log-bin=mysql-bin
  4. #[必须]服务器唯一ID,默认是1,一般取IP最后一段
  5. server-id=60
  1. 重启
    service mysqld restart
 
2.查询master(主服务器)的状态
  1. mysql -uroot -p
    show master status;
 

3.在主服务器上创建备份专用帐户

  1. mysql -uroot -p123456 -e "GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO 'backup'@'%' IDENTIFIED BY '123456';"
  2. mysql -uroot -p123456 -e "flush privileges;"
 

2、配置slave(从服务器)

  1. vim /etc/my.cnf
  2. # 启用二进制日志
  3. log-bin=mysql-bin
  4. #[必须]服务器唯一ID,默认是1,一般取IP最后一段
  5. server-id=35
 

3、重启mysql服务

  1. service mysqld restart
 

4、配置Slave启动主从复制
a、进入到mysql命令窗口之中:mysql -uroot -p123456
b、如果现在你已经启动从主机,先关闭:stop slave;

c、如果停止之后还想重新启动,则必须清除所有的日志信息:flush logs;

d、启动从服务器复制功能

  1. //注意master_log_pos值经常会变化,记得执行如下命令前先执行"show master status;",得到最新的Position列,154数字前后无单引号。
  2. change master to master_host='192.168.1.60',master_user='backup',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=154; start slave;
参数描述:
master_host=主服务器IP
master_user=在主服务器上创建的备份用户名
master_password=备份用户密码
master_log_file=查询master(主服务器)的状态得到的File列的值
master_log_pos=Position列的值
start slave:启动从服务器复制功能
 
 

5、检查从服务器复制功能状态

  1. mysql -uroot -p123456 -e "show slave status\G;"
 

主要查看以下两项:

  1. Slave_IO_Running: Yes
  2. lave_SQL_Running: Yes

Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
以上操作过程,主从服务器配置完成。

我在一次配置过程中忘记在主服务器上创建备份用户,Slave_IO_Running 就一直处于“connect”状态;或者防火墙没关闭导致无法连接master服务器。

在b数据库测试a数据库的backup账户是否可用:

mysql -ubackup -p123456 -h192.168.72.210

 
 
相关命令:

mysql -uroot -p123456 -e "GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO 'backup'@'%' IDENTIFIED BY '123456';"

mysql -uroot -p123456 -e "flush privileges;"

change master to master_host='11.8.39.198',master_user='backup',master_password='123456',master_log_file='mysql-bin.000003',master_log_pos=120;
start slave;

mysql -uroot -p123456 -e "show slave status\G;"

GRANT ALL PRIVILEGES ON *.* TO 'backup'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

 
学习链接:
 
主主同步:
  1.  
    读写分离策略理解:
    https://www.cnblogs.com/kevingrace/p/9365840.html

mycat搭建环境的更多相关文章

  1. Mycat搭建负载均衡,读写分离的Mysql集群

    Mycat搭建负载均衡,读写分离的Mysql集群 准备环境 1.mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 2.Mycat-server-1.6.7.4-te ...

  2. Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行

    如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!好了,废话不多说,就开始吧, ...

  3. AspectJ基础学习之二搭建环境(转载)

    AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...

  4. app整体搭建环境:tabBar切换不同控制器的封装(自定义导航+自定义uiviewcontroler+系统自带tabbar+自定义tabbarController)

    首先,一个app的搭建环境非常重要.既要实现基本功能,又要考虑后期优化的性能. 现在很多应用不仅仅是系统自带的控制器,由于需求复杂,基本上需要自定义多控制器来管理. 新建一个BasicNavigati ...

  5. [转]phonegap 2.9 IOS Xcode 搭建环境

    phonegap 2.9 IOS Xcode 搭建环境   一:下载phoneGap2.9和安装Xcode5(目前最新版) 选择2.9是因为3.0以上坑爹版本编译神马的要在有网络情况. 二: 下载ph ...

  6. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.7. 配置资源与参数

    2.7.配置资源与参数 2.7.1. 修改主机名称 [root@linuxrac1 ~]# cd /etc/sysconfig [root@linuxrac1 sysconfig]# vi netwo ...

  7. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.6. 安装Oracle所依赖的必要包

    2.6. 安装Oracle所依赖的必要包 2.6.1. 检查Oracle所依赖的必要rpm包 [root@localhost /]#rpm -q binutils compat-libstdc elf ...

  8. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.5. 配置网络

    2.5. 配置网络 2.5.1. 配置网络 Oracle Rac数据库涉及到公用网络和私有网络,因此要做网络划分和IP地址规划,下表列出了要安装的RAC数据库对应的IP地址.主机名以及网络连接类型: ...

  9. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.4. 安装JDK

    2.4.安装JDK 2.4.1.准备JDK 在百度搜索:JDK下载 2.4.2.上传JDK put E:\软件安装文件\jdk-8u11-linux-x64.rpm /home/linuxrac1/D ...

随机推荐

  1. c函数指针和指针函数如何使用何定义;如何调用使用

    #include <stdio.h> int * sum(int x); //声明一个 指针函数 返回类型位一个指针变量 可以通过*p来获取值 int (*pfun)(int,int);/ ...

  2. UOJ310. 【UNR #2】黎明前的巧克力 [FWT]

    UOJ 思路 显然可以转化一下,变成统计异或起来等于0的集合个数,这样一个集合的贡献是\(2^{|S|}\). 考虑朴素的\(dp_{i,j}\)表示前\(i\)个数凑出了\(j\)的方案数,发现这其 ...

  3. php-fpm 参数调优

    php-fpm 进程池优化方法 php-fpm进程池开启进程有两种方式,一种是static,直接开启指定数量的php-fpm进程,不再增加或者减少:另一种则是dynamic,开始时开启一定数量的php ...

  4. WSL2(Ubuntu)安装Postgres

    原文链接:https://www.xu.ci/2019/12/wsl2ubuntupostgres.html 原文作者:博客园--曲高终和寡 *******************如果你看到这一行,说 ...

  5. markdown 插入链接

    插入链接 []里面写链接的标题或描述,可以省略不加不写 , () 里面是链接,必须有必须写 例如 [百度](https://www.baidu.com) 百度 参考文章 Markdown 插入链接

  6. JVM 线程上下文类加载器

    当前类加载器(Current ClassLoader) 每个类都会使用自己的类加载器(即加载自身的类加载器)来去加载其他类(指所依赖的类) 如果ClassX引用了ClassY,那么ClassX的类加载 ...

  7. Diffie-Hellman算法简介

    一.DH算法是一种密钥交换协议,它可以让双方在不泄漏密钥的情况下协商出一个密钥来. DH算法基于数学原理,比如小明和小红想要协商一个密钥,可以这么做: . 小明先选一个素数和一个底数,例如,素数p=, ...

  8. mkimage工具的用法

    1. mkimage都支持哪些压缩格式 none, gzip, bzip2等 2. 参考资料 这里

  9. Vue绑定属性 绑定Class 绑定style

    <template> <div id="app"> <h2>{{msg}}</h2> <br> <div v-bi ...

  10. typescript属性类型接口

    /* typeScript中的接口 - 1.属性类接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定 ...