摘要: 1.高可用集群PXC yum源:https://repo.percona.com/yum/percona-release-latest.noarch.rpm 5.7:https://www.percona.com/downloads/Percona-XtraDB-Cluster-57/LATEST/ 阅读全文
posted @ 2021-08-30 17:28 EverEternity 阅读(443) 评论(0) 推荐(0) 编辑
摘要: GTID主从 Gtid概念 从 MySQL 5.6.5 开始新增了一种基于 GTID 的复制方式。通过 GTID保证了每个在主库上提交的事务在集群中有一个唯一的ID。这种方式强化了数据库的主备一致性,故障恢复以及容错能力。 在原来基于二进制日志的复制中,从库需要告知主库要从哪个偏移量进行增量同步,如 阅读全文
posted @ 2021-08-28 11:42 EverEternity 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 5.7.30 #基础知识 [mysql基础](https://www.cnblogs.com/shipment/p/12928493.html) [select基础查询](https://www.cnblogs.com/shipment/p/14373909.html) [一.mysql的一些基本概 阅读全文
posted @ 2021-08-27 17:20 EverEternity 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 安装工具包 下载地址:https://www.percona.com/downloads/percona-toolkit/LATEST/ toolkit文档:https://www.percona.com/doc/percona-toolkit/LATEST/index.html wget http 阅读全文
posted @ 2021-08-27 17:19 EverEternity 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 半同步复制 同步复制:当主库执行完客户端提交的事务后,需要等到所有从库也都执行完这一事务后,才返回给客户端执行成功。因为要等到所有从库都执行完,执行过程中会被阻塞,等待返回结果,所以性能上会有很严重的影响。一般不使用。 半同步复制:半同步复制模式,可以说是介于异步和同步之间的一种复制模式,主库在执行 阅读全文
posted @ 2021-08-27 11:21 EverEternity 阅读(218) 评论(0) 推荐(1) 编辑
摘要: 1.为什么需要并行复制 并行复制是为了减少复制延迟时间 并行复制,指的是, 在master设置组提交 在slave起用多个SQL 进程回放,减小master 与 salve 之间的延迟 实际上就是io_thread将可以并行的操作交给work线程 从5.5到5.7,并行粒度越来越小,从库到表到行,5 阅读全文
posted @ 2021-08-26 17:34 EverEternity 阅读(1234) 评论(0) 推荐(0) 编辑
摘要: 1.延迟复制 人为配置的,让从库延迟sql线程的回放动作 设置从库sql_thread延时回放,使得从库晚于主库执行; 1.1为什么从要延迟复制 删除数据时能更快恢复 主库删除后,让延迟的从库在误操作前的时间点停下,然后进行恢复 因为恢复全备恢复binlog往往会更加耗时 1.2延迟配置 开启延迟复 阅读全文
posted @ 2021-08-25 16:48 EverEternity 阅读(216) 评论(0) 推荐(0) 编辑
摘要: mysql过滤复制 两种思路: 主库的binlog上实现(不推荐,尽量保证主库binlog完整) 从库的sql线程上实现 所以主从过滤复制尽量不用,要用的也仅仅在从库上使用,因为要尽可能保证binlog的完整性 主库上实现 在Master 端为保证二进制日志的完整, 不使用二进制日志过滤。 主库配置 阅读全文
posted @ 2021-08-25 11:13 EverEternity 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 1.概念 MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特定的数据库,或者特定的表。 主从复制的逻辑有 阅读全文
posted @ 2021-08-24 17:23 EverEternity 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 1.mysqldump备份原理 mysqldump备份过程 可以临时性的general log,备份完成后观察整个日志中的备份过程 flush tables;关闭所有打开的表 flush tables with read lock;加全局读锁 set session transaction isol 阅读全文
posted @ 2021-08-24 13:42 EverEternity 阅读(679) 评论(0) 推荐(0) 编辑
摘要: 1.xtrabackup介绍 mysqldump备份方式是采用逻辑备份,其最大的缺陷就是备份和恢复速度都慢,对于一个小于50G的 数据库而言,这个速度还是能接受的,但如果数据库非常大,那再使用mysqldump备份就不太适合了。 这时就 需要一种好用又高效的工具,xtrabackup就是其中一款,号 阅读全文
posted @ 2021-08-20 10:51 EverEternity 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 1.一些安装规范 MySQL安装方式:二进制安装(源码编译安装、yum 、rpm) MySQL运行用户: mysql:mysql 注意该用户是虚拟用户,只是用于mysql进程运行使用,不允许登录、不创建家目录 useradd -s /sbin/nologin -M mysql MySQL目录规范: 阅读全文
posted @ 2021-08-14 15:22 EverEternity 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 索引概述 定义 MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构(有序) 在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用指向(类似指针)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。 左边是数据表, 阅读全文
posted @ 2021-08-13 16:52 EverEternity 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 页 mysql中和磁盘交互的最小单位称为页,页是mysql内部定义的一种数据结构,默认为16kb,相当于4个磁盘块,也就是说mysql每次从磁盘中读取一次数据是16KB,要么不读取,要读取就是16KB,此值可以修改的。 InnoDB 存储引擎中默认每个页的大小为16KB,可通过参数 innodb_p 阅读全文
posted @ 2021-08-11 15:51 EverEternity 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 官方文档:https://dev.mysql.com/doc/refman/5.7/en/cursors.html 定义 游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行遍历数据的能力。 游标也是一种面向过程的sql编程方法,所以一般在存储过程、 阅读全文
posted @ 2021-08-09 17:04 EverEternity 阅读(871) 评论(0) 推荐(0) 编辑
摘要: 存储过程 官方文档 概念 在数据库的实际操作中,经常会有需要多条 SQL 语句处理多个表才能完成的操作。而不是针对一个表或几个表的单条sql语句。 存储过程是一组为了完成特定功能的 SQL 语句集合。使用存储过程的目的是将常用或复杂的工作预先用 SQL 语句写好并用一个指定名称存储起来,这个过程经编 阅读全文
posted @ 2021-08-05 15:45 EverEternity 阅读(818) 评论(0) 推荐(1) 编辑
摘要: MySQL变量 查看配置文件中定义的变量: shell> mysqld --help --verbose 变量分类 mysql变量可分为两大类,即系统变量和用户自定义变量。 用户自定义变量 局部变量 会话变量 系统变量 会话变量 全局变量 系统变量 系统变量由系统定义的变量 系统变量分类: 全局变量 阅读全文
posted @ 2021-07-28 14:16 EverEternity 阅读(398) 评论(0) 推荐(0) 编辑
摘要: MySql视图 官方文档 视图是在mysql5之后出现的,是一种虚拟表,行和列的数据来自于定义视图时使用的一些表中,视图的数据是在使用视图的时候动态生成的,视图只保存了sql的逻辑,不保存查询的结果。 5.7伴随的新特性还有虚拟列 虚拟列跟视图的区别: **虚拟列:**一个或多个字段的数据函数处理后 阅读全文
posted @ 2021-07-26 16:26 EverEternity 阅读(177) 评论(0) 推荐(0) 编辑
摘要: #mysql配置文件读取顺序 命令查看mysqld --help --verbose|grep "my.cnf" #置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效 [root@localhost ~]# mysqld --help --verbose|grep "my.cnf" / 阅读全文
posted @ 2021-07-25 13:06 EverEternity 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 事务 什么是事务? 数据库中的事务是指对数据库执行一批操作,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功的情况。 概括的来说:事务是由一条sql语句或者多条sql语句组成执行单元,这个执行单元是不可分割的,sql语句要么全部执行成功要么全部不执行; 例子: 如果A用户给B用户转账10 阅读全文
posted @ 2021-07-23 11:07 EverEternity 阅读(113) 评论(0) 推荐(0) 编辑