为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第12天 MySQL面试指南 第4章

标签:
MySQL

课程名称:MySQL面试指南

课程章节:影响MySQL性能的关键参数

主讲老师:sqlercn

课程内容:

今天学习的内容包括:

影响MySQL性能的关键参数

课程收获:

+----+----------------------+--------------------------------------------------------------+
|    |      参数            |                        说明                                   |
+----+----------------------+--------------------------------------------------------------+
|    | max_connections      | MySQL的最大连接数,过大会超内存                                |
|| interactive_timeout  | 设置交互连接的timeout时间(交互式如:MySQL命令行)              |
|| wait_timeout         | 设置非交互连接的timeout时间(非交互式如:业务程序数据库连接)     |
|| max_allowed_packet   | 控制MySQL可以接收的数据包的大小                                |
|| sync_binlog          | 每写多少次缓冲时向磁盘同步一次binlog(主数据库最好及时写磁盘)    |
+----+----------------------+--------------------------------------------------------------+
|    |                      | 设置每个会话使用的排序缓存区的大小(会话连接时并不会立即分配,     |
|    | sort_buffer_size     | 而是在执行排序时才分配,如果同时有很多连接执行排序,则很可能会     |
|    |                      | 消耗巨大的内存)                                               |
|    |----------------------+--------------------------------------------------------------+
|    | join_buffer_size     | 设置每个会话中join时连接所使用的缓冲的大小(建议不要设置的太大,   |
|    |                      | 可以在单次查询的session中根据需要单次调整大小)                  |
||----------------------+--------------------------------------------------------------+
|| read_buffer_size     | 指定了当对一个MYISAM进行表扫描时所分配的读缓存池的大小(大小为    |
||                      | 4KB的整数倍)                                                 |
||----------------------+--------------------------------------------------------------+
|| read_rnd_buffer_size | 设置控制索引缓冲区的大小(只有在查询的时候才分配,查询时分配的大小 |
||                      | 小于或等于此值)                                               |
|    |----------------------+--------------------------------------------------------------+
|    |                      | 设置每个会话用于缓存未提交的事务缓存大小(过小会导致使用磁盘作为缓 |
|    | binlog_cache_size    | 冲,可以通过两个变量的值来判断size的设置是否合适:               |
|    |                      | binlog_cache_disk_use 当size过小时,使用磁盘作为缓冲的次数      |
|    |                      | binlog_cache_use 使用内存作为缓冲的次数)                      |
+----+----------------------+--------------------------------------------------------------+
|    |                      | 0:每秒进行一次重做日志的磁盘刷新操作。                           |
|    | innodb_flush_log_at_ | 1:每次事务提交都会刷新事务日志到磁盘中。                         |
|    | trx_commit           | 2:每次事务提交写入系统缓存每秒向磁盘刷新一次                     |
||----------------------+--------------------------------------------------------------+
|| innodb_buffer_pool_  | 设置Innodb缓冲池的大小,应为系统可用内存的75%|
|| size                 |                                                              |
||----------------------+--------------------------------------------------------------+
|| innodb_buffer_pool_  | Innodb缓冲池的实例个数,每个实例的大小为总缓冲池大小V实例个数。    |
|| instances            |                                                              |
|    |----------------------+--------------------------------------------------------------+
|    | innodb_file_per_table| 设置每个表独立使用一个表空间文件,MySQL5.7以后是默认值           |
|    |                      |                                                              |
+----+----------------------+--------------------------------------------------------------+

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消