##
1、常用工具推荐
SQL的优化是我的日常工作中占比最多的一项,给客户解决问题的同时,也能得到客户的认可。我会经常使用一些工具来帮助我完成性能分析和优化。
如果是Cloud或者CMS相关的数据库,那么我们可以从这些供应商给的工具中获取很多有用的信息。比如AWS的Performance Insights,是我最喜欢的工具之一。
如果是Native的情况,我最喜欢的是mysql shell和workbench以及PMM2(但一般客户不会部署,所以前两项真的很好用)。
如下是workbench分析SQL的图,可以快速帮我们找到SQL问题,并且还用颜色进行标注,这比很多人工分析更快更准确。这也是今天最推荐的工具。
2、关于群和兼职
1.兼职:我已经找到三个不错的人了,其中一个我已经沟通过项目了,但对于一些云相关的技术栈了解的不多。不能只看我列的三点,数据库相关的技术也需要。
2.群:我在很多个数据库相关的群里,可以群里私聊我沟通。
但我计划建一个MySQL DBA的群,控制下人数50个,多了没意义。瞎聊的消息多了还占手机存储。入群的标准(至少60分)。
我会把Q2的SQL语句和dump文件以及Q3的ibd文件放在百度网盘。有效期7天。搞定之后给我发私信。
链接:https://pan.baidu.com/s/1vDbftAazd_WRAlJxYChB5w?pwd=irlo 提取码:irlo
2.1、入群问题
Q1:安装问题(5分)
使用MySQL Installer for Windows成功安装MySQL之后,在cmd中查看参数出现warning。提示:这里操作系统是(Chinese-Simplified),送分题,别问。
mysql> show variables like 'sort_buffer_size';
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| sort_buffer_size | 262144 |
+------------------+--------+
1 row in set, 1 warning (0.09 sec)
mysql> show warnings;
+---------+------+--------------------------------------------------------------------------------------------+
| Level | Code | Message |
+---------+------+--------------------------------------------------------------------------------------------+
| Warning | 1366 | Incorrect string value: 'xD6xD0xB9xFAxB1xEA...' for column 'VARIABLE_VALUE' at row 1 |
+---------+------+--------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Q2:SQL优化问题(25分)
请优化文件sql_needing_optimize.txt中的SQL语句,intel CPU的要求是2秒以内。apple silicon的要求是1秒以内,这是最低要求。(提示:改写之后可以更快),欢迎极客。
Q3:数据恢复问题(30分)
这是一个mysql 8的ibd文件,正确的行数为128行。文件名为bookings.ibd。提示:需要核对行数以及值符合列类型,如果恢复出来是127行,那么肯定是不对的。
Q4:高可用问题(20分)
主从复制时,主库和从库的时间不一致,为什么Waiting for an event from Coordinator的Time不全部为负数?提示:可以自行调整操作系统时间,以验证。
下面的信息是案例
mysql>show full processlist;
+---------+-------------+-----------------+------+---------+----------+----------------------------------------------------------+-----------------------+
|Id |User |Host |db |Command |Time |State |Info |
+---------+-------------+-----------------+------+---------+----------+----------------------------------------------------------+-----------------------+
| 5|system user |connecting host |NULL |Connect |18183371 |Waiting for source to send event |NULL |
| 6|system user | |NULL |Query | 0 |Replica has read all relay log waiting for more updates |NULL |
| 7|system user | |NULL |Query | -494 |Waiting for an event from Coordinator |NULL |
| 8|system user | |NULL |Query | -490 |Waiting for an event from Coordinator |NULL |
| 9|system user | |NULL |Query | -440 |Waiting for an event from Coordinator |NULL |
| 10|system user | |NULL |Query | 6184 |Waiting for an event from Coordinator |NULL |
| 1265587|root |localhost |NULL |Query | 0 |init |show full processlist |
+---------+-------------+-----------------+------+---------+----------+----------------------------------------------------------+-----------------------+
7rows inset(0.00sec)
Q5:细节问题(20分)
慢查询日志中Bytes_sent的值就是select语句返回了多少字节数吗?提示:可以自己建表验证。
3、闲记
周六从成都回来,才让我深刻体会到两个事:
1.钞能力可以解决很多事。
2.日常规律的生活是多么重要。
周日就回归了正常的生活,一大早就和客户谈合同,签单子,独立DBA的一天。
原文始发于微信公众号(库海无涯):你不得不知的MySQL性能优化神器
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/243514.html