1. 线程
1.1. MySQL服务端是多线程软件。它的每个组件都使用线程
1.2. 每个线程至少有两个唯一标识符
1.2.1. 操作系统线程ID
1.2.2. MySQL内部线程ID
2. 对象类型
2.1. OBJECT_TYPE列
2.2. EVENT
2.3. FUNCTION
2.4. PROCEDURE
2.5. TABLE
2.6. TRIGGER
3. Performance Schema
3.1. 一个经常受到批评的特性
3.1.1. 早期版本的MySQL对其的实现不够理想,导致资源消耗较高
3.2. 提供了有关MySQL服务器内部运行的操作上的底层指标
3.3. 应该启用Performance Schema,按需动态地启用插桩和消费者表,通过它们提供的数据可以解决可能存在的任何问题——查询性能、锁定、磁盘I/O、错误等
3.4. 充分利用sys schema是解决常见问题的捷径。这样做将为你提供一种可以直接从MySQL中测量性能的方法
3.5. 程序插桩(instrument)
3.6. 消费者表(consumer)
3.7. 测量结果存储在Performance Schema数据库的多个表中
3.7.1. MySQL 8.0.25社区版的performance_schema中包含110个表
3.8. 摘要是一种通过删除查询中的变量来聚合查询的方法
3.9. 实例表(Instance)
3.9.1. 实例是指对象实例,用于MySQL安装程序
3.10. 设置表(Setup)
3.10.1. 用于performance_schema的运行时设置
3.11. metadata_locks表保存关于元数据锁的数据
3.12. Performance Schema收集的数据保存在内存中
3.13. 标准MySQL发行版包括一个和performance_schema数据配套使用的sys schema,它全部基于performance_schema上的视图和存储例程组成
3.14. 要启用或禁用Performance Schema,可以将变量performance_schema设置为ON或OFF
3.15. 启用或禁用performance_schema插桩
3.15.1. 使用setup_instruments表
3.15.1.1. 使用UPDATE语句更改instruments表的对应列值
3.15.2. 调用sys schema中的ps_setup_enable_instrument存储过程
3.15.2.1. ps_setup_enable_instrument
3.15.2.2. ps_setup_disable_instrument
3.15.3. 使用performance-schema-instrument启动参数
3.15.3.1. 变量支持performance-schema-instrument=’instrument_name=value’这样的语法
3.16. 启用或禁用消费者表
3.16.1. 使用Performance Schema中的setup_consumers表
3.16.2. 调用sys schema中的ps_setup_enable_consumer或ps_setup_disable_consuper存储过程
3.16.3. 使用performance-schema-consumer启动参数
3.17. 事务执行期间会一直持有元数据锁
3.17.1. 要启用元数据锁监测,需要启用wait/lock/meta-data/sql/mdl插桩
4. 升级MySQL
4.1. 新版本和稳定性之间的权衡
4.1.1. MySQL社区的长期成员Stewart Smith创造了著名的dot-20规则
4.1.2. 一款软件在dot-20版本发布之前永远不会真正成熟。
4.2. 进行版本升级是一个有风险的过程
4.2.1. 包括备份所有数据、测试更改,然后运行升级过程
4.3. 大版本的升级可能会让人望而却步
4.4. 升级的原因
4.4.1. 安全漏洞
4.4.1.1. 随着时间的推移,这种可能性会越来越小,但人们仍然有可能在MySQL中发现安全漏洞
4.4.2. 已知的bug
4.4.2.1. 在生产环境中遇到未知或无法解释的行为时,我们建议你确定当前运行的MySQL版本,然后阅读后续版本到最新版本的发布说明
4.4.3. 新功能
4.4.3.1. MySQL并不总是遵循严格的主要(major)/次要(minor)/点(point)的版本发布策略来添加功能
4.4.4. MySQL支持周期的终止
4.4.4.1. 建议保持在受支持的版本内,以便至少仍支持安全修复
4.5. 升级步骤
4.5.1. 制订一个计划
4.5.2. 阅读该版本的发行说明,包括任何微小的更改
4.5.3. 阅读官方文档中的升级说明
4.5.4. 对新版本进行测试
4.5.5. 最后执行升级
4.6. 降级
4.6.1. 对于所有主要和次要的版本变更(例如,从8.0降级到5.7或从5.7降级到5.6),降级的唯一方法是恢复升级前的备份
4.6.2. 自从MySQL 8.0以来,不能再降级点发布版本
4.6.3. 如果你运行的是8.0.25版本,除非导出所有数据并重新导入,否则不能再降级到8.0.24
4.7. 工具
4.7.1. Percona Toolkit提供的工具pt-upgrade
4.8. 最好的使用方法是首先使用慢速查询日志或二进制日志收集最关注的查询
4.9. 与直接登录到每台服务器相比,自动化可以使升级过程易于重复,并且效率更高,而且因出现拼写错误或者到错误的服务器上执行升级而导致意外停机的概率也更低
5. Kubernetes
5.1. 在Kubernetes技术流行之前,许多公司要么完全定制技术栈来供应和管理虚拟机和物理服务器,要么只完成了将资源生命周期管理一小部分的开源项目黏合在一起
5.2. MySQL不应该是在组织中Kubernetes上运行工作负载的第一个实验对象
千百度
© 版权声明
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
THE END
暂无评论内容