Topic:Mysql PostgreSQL Cassandra
1.搭建部署单节点
这里我们用mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz
5.6与5.7版本还是有小差异的
5.6 root进去的时候是没有密码的
5.7的密码保存在log-error中
要清空的话就把arch归档以及data目录给清空了
主从的话server-id就不能一样,具体部署文档可参考https://blog.csdn.net/weixin_43212365/article/details/99533674
2.主从架构(读写分离)及部署
单进程IO SQL 并不能完全同步
0.76 master 主 写 (业务)
server-id = 6876
expire_logs_days = 7
binlog_format = ROW
log-bin = /usr/local/mysql/arch/mysql-bin log-bin的规则
0.77 slave 从 读 (查询大的报表)
server-id = 6877
2.1 主库上创建一个复制用户
grant replication slave on *.* to repluser@'%' identified by 'ruozedata'
flush privileges;
2.2 my.conf
2.3 pos 查看命令
show master status;
2.4从库
change master to
master_host='192.168.0.76',
master_port='3306',
master_user='repluser',
master_password='ruozedata',
master_log_bin'mysql-bin.00002',
master_log_pos=989;
报错的话就创建
mkdir relay-log 中继日志
启动命令
start slave;
mysql>show slave status\G; 看状态
生产上我们只要监控下面两个指标
Slave_IO_Running:YES 拿日志
Slave_SQL_Running:YES SQL解析
重演
日志解析是没有字段名称的
3.故障案例
4.Mysql --> 如何落地到大数据(Mysql 开源)
离线
MySQL --> sqoop/datax --> Hive/HBase
MySQL --> spark bulkload --> HBase
实时数仓:
MySQL 从库 --> Maxwell 从库 json -->kafka -->Spark streaming + Phoenix–>HBase
MySQL --> streamsets --> kudu+impala
5.拓展思考
库表 做白名单(过滤)
全量刷新 增量刷新
保证高可靠 数据零丢失
数据质量 数据量是否相等
业务库数据是有顺序的 insert update delete
DML语句 但是DDL 表结构 增加字段 修改字段 删除字段
如何整条链路的的断点还原 断批还原
主从复制拓展思考 主 从 从
如何搭建一个新的从库
主从 并行以及串行
两个主往从库里写