标题 继续更新
停更了有一段时间了,也不能叫做停更,我认为更新就是大神们的学习,而我这只是一点心得而已。
由于之前的java工作上的一些不顺利让我放弃了java,这点挺好的我感觉,拿的起放的下,要学会放弃吗人才能活的轻松些。可能就是懒吧V。更具体点就是没有毅力。人生的意义就在于,撞了南墙不回能回头,但你一定拐弯。好了不多费话了,在这半年多的时间里我去学习了云计算。又要开始面试了,一想到面试我就头疼的不行,不停的改简历包装自己。现在互联网公司也是,总喊招不到人。确从未想过要招人的要求是又苛刻又不想多给钱,可能吗。费话不多说了,开始写一些上课的笔记
一、分表分库
垂直分库,水平分表
作用:为了降低数据库写数据的压力
分库:就是将软件分为几大模块,每个模块都有专属的数据库,每个模块朝着不同的数据库写数据,就叫分库
分表:将表按照不能类别数据存储到不同数据库中
二、主从复制原理
1.第一步:当有数据写入主库时,主库就会产生一个I/O线程将数据写入主库的binlog日志里
2.第二步:从库里有一个I/O线程用来监控主库的binlog日志,当有数据写入主库的binlog日志里在, 从库就会将数据读取交写入到从库的Relay log(中继日志)里
3.第三步:从库还有另外一个线程叫做SQL线程,SQL线程会读取SQl语句执行到从库中,从而完成数据同步的过程
三、主、从配置实现步骤
1.主库配置:
打开binlog日志,log-bin=mysql-bin
server _id=1(注意主库id是1,从库就不能是1)
创建主从复制专用帐号和密码
2.从库配置
配置文件:server_id=(跟主库不一样就可以)
打开中继日志:relay_log=relay-bin
写入主库信息:
1.主库IP
2.主库端口
3.主从复制帐号
4.主从复制密码
5.由于数据备份是增量备份,所以还要告诉从库哪个二制文件开始复制
6.还要告诉从库哪这个二进制什么位置开始:从库将位置记录到 master.info文件里,包括其它6个条件。从库解析SQL语句时记录到relay.info里,从而完成主从复制的过程。
7.因为是从库找主库验证,所以要激活主从复制:start slave;
如何查看主库二进制文件的位置:show master status;这个命令可以查看当前这个文件是朝哪个方向记录,记录到了什么位置
下方为原理图:
实现主从复制一定要关闭防火墙