最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

mysql优化技巧心得一(key

来源:懂视网 责编:小采 时间:2020-11-09 07:40:47
文档

mysql优化技巧心得一(key

mysql优化技巧心得一(key:1: 对于mysql来说,登录的时候,加一个参数 #mysql -u root -p --prompt=\\u@\\d \\r:\\m:\\s --prompt 是加一些登录后的参数,上面参数 u 是加入登录的用户名, d 是登录后选择后(use dbname)的数据库表, r m s 是时间 2: key_buf
推荐度:
导读mysql优化技巧心得一(key:1: 对于mysql来说,登录的时候,加一个参数 #mysql -u root -p --prompt=\\u@\\d \\r:\\m:\\s --prompt 是加一些登录后的参数,上面参数 u 是加入登录的用户名, d 是登录后选择后(use dbname)的数据库表, r m s 是时间 2: key_buf

1: 对于mysql来说,登录的时候,加一个参数 #mysql -u root -p --prompt=\\u@\\d \\r:\\m:\\s --prompt 是加一些登录后的参数,上面参数 u 是加入登录的用户名, d 是登录后选择后(use dbname)的数据库表, r m s 是时间 2: key_buffer_size 对MyISAM表性能影响很

1: 对于mysql来说,登录的时候,加一个参数

#mysql -u root -p --prompt="\\u@\\d \\r:\\m:\\s>"

--prompt 是加一些登录后的参数,上面参数 u 是加入登录的用户名, d 是登录后选择后(use dbname)的数据库表, r m s 是时间


2: key_buffer_size 对MyISAM表性能影响很大.

mysql> show variables like 'key_buffer_size';
+-----------------+------------+
| Variable_name | Value |
+-----------------+------------+
| key_buffer_size | 536870912 |
+-----------------+------------+

分配了512MB内存给mysql key_buffer_size,我们再看一下key_buffer_size的使用情况:
mysql> show global status like 'key_read%';
+------------------------+-------------+
| Variable_name | Value |
+------------------------+-------------+
| Key_read_requests | 27813678764 |
| Key_reads | 6798830 |
+------------------------+-------------+

一共有27813678764个索引读取请求,有6798830个请求在内存中没有找到直接从硬盘读取索引,计算索引未命中缓存的概率:

key_cache_miss_rate = Key_reads / Key_read_requests * 100%

比如上面的数据,key_cache_miss_rate为0.0244%,4000个索引读取请求才有一个直接读硬盘,已经很BT了,key_cache_miss_rate在0.1%以下都很好(每1000个请求有一个直接读硬盘),如果key_cache_miss_rate在0.01%以下的话,key_buffer_size分配的过多,可以适当减少。
MySQL服务器还提供了key_blocks_*参数:
mysql> show global status like 'key_blocks_u%';
+------------------------+-------------+
| Variable_name | Value |
+------------------------+-------------+
| Key_blocks_unused | 0 |
| Key_blocks_used | 413543 |
+------------------------+-------------+

Key_blocks_unused表示未使用的缓存簇(blocks)数,Key_blocks_used表示曾经用到的最大的blocks数,比如这台服务器,所有的缓存都用到了,要么增加key_buffer_size,要么就是过渡索引了,把缓存占满了。比较理想的设置:


Key_blocks_used / (Key_blocks_unused + Key_blocks_used) * 100% ≈ 80%

文档

mysql优化技巧心得一(key

mysql优化技巧心得一(key:1: 对于mysql来说,登录的时候,加一个参数 #mysql -u root -p --prompt=\\u@\\d \\r:\\m:\\s --prompt 是加一些登录后的参数,上面参数 u 是加入登录的用户名, d 是登录后选择后(use dbname)的数据库表, r m s 是时间 2: key_buf
推荐度:
标签: 方法 对于 mysql
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top