MYSQL介绍
主从架构— —概念
binlog日志
MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间。
复制原理
- 主库操作保留binlog日志
- 从库的IO线程从主库拉取binlog日志,并生成中继日志(relay log)
- 从库的SQL线程解析中继日志,并在本身回放
状态检查主要通过判断IO线程和SQL线程是否处于Running判断复制是否正常,判断Seconds_Behind_Master参数代表数据同步是否延迟:
mysql> show slave statusG…
Slave_IO_Running: YesSlave_SQL_Running: YesSeconds_Behind_Master: 0…
主从架构— —衍生各种扩展的主从架构
1. 一主多从
2. 双主复制
- 级联复制
- 等等
读写分离大部分场景下,读的频率比写的频率会高很多。所以可以通过扩展多个SLAVE节点提高整体的使用性能。
数据备份传统的备份包括三种方式:1. lvm snapshot(LVM快照备份)2. mysqldump3. Xtarbackup那么要如何实现数据的一致性备份呢(一致性备份是所有数据/文件/磁盘 需要在同一个时间点进行备份)LVM SNAPSHOT1. 执行FTWRL(FLUSH TABLES WITH READ LOCK)1.1上全局读锁(lock_global_read_lock)1.2清理表缓存(close_cached_tables)1.3上全局COMMIT锁(make_global_read_lock_block_commit)2. 执行lvcreate 创建lv快照.3. UNLOCK TABLES解锁
MYSQLDUMP
- 开启可重复读事务隔离
- 开启事务
- 建立数据快照(可以理解为select from )
- 结束事务
XTRABACKUP
1. 不是整体采用备份锁,只有特定阶段。
2. indodb阶段不需要加锁,ACID的C(持续性)是通过Redo log实现,通过线程增量记录redo log实现。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
本文思维导图: 文章目录 Tips: 7.man指令(重要): echo指令和输出重定向,追加重定向,输入重定向 8、cp指令(重要) 9.mv指令(重要) 10.cat指令 11.more指令 12.less指令(重要) 什么是管道指令? 到底什么是指令? …