mycat搭建环境
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版本才支持单库分表;,
下载地址:
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密码;
①关闭服务:
sudo service mysql stop;
②安全模式+免验证启动服务
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
①新开一个终端,连接服务器:
新开一个终端:
mysql -u root
②切换到mysql数据库:
use mysql;
update user set password = password('123456') where user='root';
1、配置master(主服务器)
vim /etc/my.cnf
#[必须]启用二进制日志
log-bin=mysql-bin
#[必须]服务器唯一ID,默认是1,一般取IP最后一段
server-id=60
重启
service mysqld restart
mysql -uroot -p
show master status;
3.在主服务器上创建备份专用帐户
mysql -uroot -p123456 -e "GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO 'backup'@'%' IDENTIFIED BY '123456';"
mysql -uroot -p123456 -e "flush privileges;"
2、配置slave(从服务器)
vim /etc/my.cnf
# 启用二进制日志
log-bin=mysql-bin
#[必须]服务器唯一ID,默认是1,一般取IP最后一段
server-id=35
3、重启mysql服务
service mysqld restart
4、配置Slave启动主从复制
a、进入到mysql命令窗口之中:mysql -uroot -p123456
b、如果现在你已经启动从主机,先关闭:stop slave;
c、如果停止之后还想重新启动,则必须清除所有的日志信息:flush logs;
d、启动从服务器复制功能
//注意master_log_pos值经常会变化,记得执行如下命令前先执行"show master status;",得到最新的Position列,154数字前后无单引号。
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、检查从服务器复制功能状态
mysql -uroot -p123456 -e "show slave status\G;"
主要查看以下两项:
Slave_IO_Running: Yes
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;
读写分离策略理解:
https://www.cnblogs.com/kevingrace/p/9365840.html
mycat搭建环境的更多相关文章
- Mycat搭建负载均衡,读写分离的Mysql集群
Mycat搭建负载均衡,读写分离的Mysql集群 准备环境 1.mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 2.Mycat-server-1.6.7.4-te ...
- Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行
如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!好了,废话不多说,就开始吧, ...
- AspectJ基础学习之二搭建环境(转载)
AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...
- app整体搭建环境:tabBar切换不同控制器的封装(自定义导航+自定义uiviewcontroler+系统自带tabbar+自定义tabbarController)
首先,一个app的搭建环境非常重要.既要实现基本功能,又要考虑后期优化的性能. 现在很多应用不仅仅是系统自带的控制器,由于需求复杂,基本上需要自定义多控制器来管理. 新建一个BasicNavigati ...
- [转]phonegap 2.9 IOS Xcode 搭建环境
phonegap 2.9 IOS Xcode 搭建环境 一:下载phoneGap2.9和安装Xcode5(目前最新版) 选择2.9是因为3.0以上坑爹版本编译神马的要在有网络情况. 二: 下载ph ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.7. 配置资源与参数
2.7.配置资源与参数 2.7.1. 修改主机名称 [root@linuxrac1 ~]# cd /etc/sysconfig [root@linuxrac1 sysconfig]# vi netwo ...
- 基于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 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.5. 配置网络
2.5. 配置网络 2.5.1. 配置网络 Oracle Rac数据库涉及到公用网络和私有网络,因此要做网络划分和IP地址规划,下表列出了要安装的RAC数据库对应的IP地址.主机名以及网络连接类型: ...
- 基于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 ...
随机推荐
- 【JS】闭包的理解
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无 ...
- printf的使用和test的使用
1.printf的使用 printf的转义序列 序列 说明 \a 警告字符,通常为ASCII的BEL字符 \b 后退 \c 抑制(不显示)输出结果中任何结尾的换行字符(只在%b格式指示符控制下的参数字 ...
- Problem 7 树状数组+转化
$des$有一棵 $n$ 个点的以 $1$ 为根的树, 以及 $n$ 个整数变量 $x_i$ .树上 $i$ 的父亲是 $f_i$ ,每条边 $(i,f_i)$ 有一 个权值 $w_i$ ,表示一个方 ...
- Chapter Two
Web容器配置 ~Tomcat配置 server.port配置了Web容器的端口号 error.path配置了当项目出错时跳转去的页面 session.timeout配置了session失效的时间 c ...
- python中requests里.text和.content方法的区别
requests对象的get和post方法都会返回一个Response对象,这个对象里面存的是服务器返回的所有信息,包括响应头,响应状态码等.其中返回的网页部分会存在.content和.text两个对 ...
- TThread.Queue和TThread.Synchronize的区别
TThread.Queue和TThread.Synchronize的区别 效果上:二者的作用都是让业务代码在主线程中执行,差别: Synchronize是阻塞,Queue是非阻塞 代码上 两个方法最终 ...
- useRef获取DOM元素和保存变量(十)
useRef在工作中虽然用的不多,但是也不能缺少.它有两个主要的作用: 用useRef获取React JSX中的DOM元素,获取后你就可以控制DOM的任何东西了.但是一般不建议这样来作,React界面 ...
- 每个Web开发者都需要具备的9个软技能--ZT
本文原始链接:http://www.cnblogs.com/oooweb/p/soft-skills-every-web-developer-should-master.html 对于一份工作,你可能 ...
- Python的collections之namedtuple的使用及其优势
类实现: class User: def __init__(self, name, age, height): self.name = name self.age = age self.height ...
- shell编程系列4--有类型变量:字符串、只读类型、整数、数组
shell编程系列4--有类型变量:字符串.只读类型.整数.数组 有类型变量总结: declare命令和typeset命令两者等价 declare.typeset命令都是用来定义变量类型的 decla ...