mysql: 安装 / 主从复制简介 / 异步复制

######1.安装mysql######

###1.获得安装包,解压###

###2.安装###

###3.查看数据库初始密码,安全初始化###

grep password   /var/log/mysqld.log      ##查看数据库初始密码
mysql_secure_installation                        ##数据库安全初始化

(密码里要含有数字、字母、符号)

 

######2.主从复制#####

###1.简介###

MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。
MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特 定的数据库,或者特定的表。

###2.MySQL主从形式###

1.一主一从
2.一主多从
一主一从和一主多从是最常见的主从架构,实施起来简单并且有效,不仅可以实现HA,而且还能读写分离,进而提升集群的并发能力。
3.多主一从:可以将多个mysql数据库备份到一台存储性能比较好的服务器上。
4.双主复制:也就是互做主从复制,每个master既是master,又是另外一台服务器的slave。这样任何一方所做的变更,都会通过复制应用到另外一方的数据库中。
5.级联复制:部分slave的数据同步不连接主节点,而是连接从节点。这样不仅可以缓解主节点的压力,并且对数据一致性没有负面影响。

###3.MySQL主从复制原理###

涉及到三个线程,一个运行在主节点(log dump thread),其余两个(I/O thread, SQL thread)运行在从节点。

1.主节点 binary log dump 线程
当从节点连接主节点时,主节点会创建一个log dump 线程,用于发送bin-log的内容。在读取bin-log中的操作时,此线程会对主节点上的bin-log加锁,当读取完成,甚至在发动给从节点之前,锁会被释放。

2.从节点I/O线程
当从节点上执行`start slave`命令之后,从节点会创建一个I/O线程用来连接主节点,请求主库中更新的bin-log。I/O线程接收到主节点binlog dump 进程发来的更新之后,保存在本地relay-log中。

3.从节点SQL线程
SQL线程负责读取relay log中的内容,解析成具体的操作并执行,最终保证主从数据的一致性。

要实施复制,首先必须打开Master 端的binary log(bin-log)功能,否则无法实现。因为整个复制过程实际上就是Slave 从Master 端获取该日志然后再在自己身上完全顺序的执行日志中所记录的各种操作。

###4.MySQL主从复制模式###

1.异步模式:主节点不会主动push bin log到从节点,这样有可能导致failover的情况下,也许从节点没有及时地将最新的bin log同步到本地,导致数据不一致,数据残缺。slave的复制是单线程的。一个事件一个事件的读取应用。而master是并发写入的,所以会出现延时。

2.GTID复制模式:当发生故障,需要主从切换,不用再找binlog和pos点,我们只需要知道主节点的ip,端口,以及账号密码就行,因为复制是自动的,MySQL会通过内部机制GTID自动找点同步。把多个表放在多个库,这样就可以使用多线程复制,解决延时问题。一个事件就是一个id,保证了数据的完整性。

3.半同步模式:需要master 和slave 安装插件开启半同步模式。主节点只需要接收到其中一台从节点的返回信息,就会commit;否则需要等待直到超时时间然后切换成异步模式再提交;这样做的目的可以使主从数据库的数据延迟缩小,可以提高数据安全性,确保了事务提交后,binlog至少传输到了一个从节点上,不能保证从节点将此事务更新到db中。性能上会有一定的降低,响应时间会变长。

4.全同步模式:主节点和从节点全部执行了commit并确认,才会向客户端返回成功。

######3.异步复制#######

####1.主库####

###1.修改配置文件###

(在文末添加第29行/第30行)

###2.授权用户###

 

###3.查看当前状态###

###4.发送安装包给从库###

####2.从库####

###1.安装mysql###

###2.修改配置文件###

(在文末添加第29行)

###3.查看数据库初始密码,安全初始化###

###4.查看数据库###

###5.设置主库,并保存###

###5.查看从库是否连接主库成功###

####3.测试####

###1.主库###

###1.新建westos数据库###

###2.新建表###

###3.插入数据###

###2.从库###

###1.查看有无新建的数据库###

###2.查看有无新建表及信息###

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值