在上面介绍了mysql server 端的参数查看方法

一.概述

         mysql
提供了大多参数来开展服务器的装置,当服务第一次运行的时候,全体运维参数值都以系统默许的。这个参数在好些个生产条件下并无法满足实际的使用供给。在这些类别中关系到了liunx
服务器,笔者那边是centos7.4, mysql 5.7,Xshell6。

  1. 查看mysql server参数

         通过show variables和show
status命令查看mysql的服务器静态参数值和动态运市价况信息。前者是在数据库运营后不会动态更换的值。比方缓冲区大大小小,字符集,数据文件名称等;
后面一个是数据库运营时期的动态变化的消息,比如锁等待,当前连接数等。上面来总结翻看下五个指令

--  mysql服务静态参数值
SHOW VARIABLES;

图片 1

--  mysql服务运行状态值
SHOW STATUS;

图片 2

二.  影响mysql质量的基本点参数

  在地方介绍了mysql server 端的参数查看方法 ,对于那样多参数,
实际大非常多参数是不要求客户调节的,下边介绍一些十分重要参数。先介绍下MyISAM存款和储蓄引擎的key_buffer_size和table_cache。

  1. key_buffer_size设置

                   key_buffer_size是用来设置索引块(index
Blocks)缓存的尺寸,它被抱无线程分享,此参数只应于MYISAM存款和储蓄引擎。在mysql
5.1后,系统除去默许的索引块缓存,还足以配备七个key_buffer,能够将内定的表索引,缓存入钦赐的key_buffer,那样能够越来越小地减弱线程之间的竞争。

-- 查看默认设置
 SHOW VARIABLES LIKE 'key_buffer_size';  

    8388608/1024.0/1024.0=M  暗许8M 如下图所示:

     图片 3

-- 建立一个新的索引块缓存
SET  GLOBAL hot_cache2.key_buffer_size=128*1024

  对于GLOBAL
表示对每二个新的接连,此参数都将生效,hot_cache2是新的key_buffer名称,可以随时进行重新建立,比如:

SET  GLOBAL hot_cache2.key_buffer_size=200*1024

  把相关表的目录,放到钦定的索引块缓存中如下:

-- 将表(userbymyisam )索引放入指定的索引块中 
CACHE INDEX userbymyisam IN hot_cache2

图片 4

  想将索引预装到默许的key_buffer中,能够运用load index into
cache语句,举个例子预装表userbymyisam的有着索引 预装到私下认可的key_buffer。

LOAD INDEX INTO CACHE userbymyisam

图片 5

-- 删除索引缓存,如下命令
SET  GLOBAL hot_cache2.key_buffer_size=0

  注意:默认的key_buffer是无法去除的如:  SET  GLOBAL
key_buffer_size=0 下一次重启时还应该有。

 总括: cache
index命令在三个表和key_buffer之间建立一种联系,但每趟服务注重启时key_buffer中的数据将清空,借使想每便服务注重启时相应表的索引能自动放到key_buffer中,能够在配备文件中装置init-file选项来钦赐满含cache
index语句文件路线,然后在对应的文书中写入cache index语句。

   下边成立一个缓存索引块:

图片 6

  每趟服务器运营时,执行mysqld_init.sql中的语句,
文件中多少个表,分别对应hot_cache和cold_cache:
图片 7

  2. 由此操作系统来设置key_buffer

    假设要安装mysql服务种类参数能够在liunx里设置,先要找到my.cnf
文件地方,一般会放在/etc/my.cnf,/etc/mysql/my.cnf。
    如下图所示,尝试修改默许key_buffer_size改为12M:
    图片 8
    图片 9
    结束服务再重启sql服务
    图片 10
    图片 11
    再度询问如下

    图片 12

相关文章