mysql8怎么设置参数 mysql80怎么用( 四 )


join_buffer_size = 8M
# 联合查询操作所能使用的缓冲区大?。?和sort_buffer_size一样,该参数对应的分配内存也是每连接独享
thread_cache_size = 8
# 这个值(默认8)表示可以重新利用保存在缓存中线程的数量,当断开连接时如果缓存中还有空间 , 那么客户端的线程将被放到缓存中,
# 如果线程重新被请求 , 那么请求将从缓存中读取,如果缓存中是空的或者是新的请求,那么这个线程将被重新创建,如果有很多新的线程,
# 增加这个值可以改善系统性能.通过比较Connections和Threads_created状态的变量 , 可以看到这个变量的作用 。(–表示要调整的值)
# 根据物理内存设置规则如下:
# 1G— 8
# 2G— 16
# 3G— 32
# 大于3G— 64
query_cache_size = 8M
#MySQL的查询缓冲大?。ù?.0.1开始,MySQL提供了查询缓冲机制)使用查询缓冲,MySQL将SELECT语句和查询结果存放在缓冲区中,
# 今后对于同样的SELECT语句(区分大小写),将直接从缓冲区中读取结果 。根据MySQL用户手册,使用查询缓冲最多可以达到238%的效率 。
# 通过检查状态值'Qcache_%',可以知道query_cache_size设置是否合理:如果Qcache_lowmem_prunes的值非常大 , 则表明经常出现缓冲不够的情况,
# 如果Qcache_hits的值也非常大,则表明查询缓冲使用非常频繁,此时需要增加缓冲大?。蝗绻鸔cache_hits的值不大,则表明你的查询重复率很低 , 
# 这种情况下使用查询缓冲反而会影响效率,那么可以考虑不用查询缓冲 。此外,在SELECT语句中加入SQL_NO_CACHE可以明确表示不使用查询缓冲
query_cache_limit = 2M
#指定单个查询能够使用的缓冲区大?。?M
key_buffer_size = 4M
#指定用于索引的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写) , 到你能负担得起那样多 。如果你使它太大,
# 系统将开始换页并且真的变慢了 。对于内存在4GB左右的服务器该参数可设置为384M或512M 。通过检查状态值Key_read_requests和Key_reads,
# 可以知道key_buffer_size设置是否合理 。比例key_reads/key_read_requests应该尽可能的低,
# 至少是1:100 , 1:1000更好(上述状态值可以使用SHOW STATUS LIKE 'key_read%'获得) 。注意:该参数值设置的过大反而会是服务器整体效率降低
ft_min_word_len = 4
# 分词词汇最小长度,默认4
transaction_isolation = REPEATABLE-READ
# MySQL支持4种事务隔离级别,他们分别是:
# READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.
# 如没有指定,MySQL默认采用的是REPEATABLE-READ,ORACLE默认的是READ-COMMITTED
log_bin = mysql-bin
binlog_format = mixed
expire_logs_days = 30 #超过30天的binlog删除
log_error = /data/mysql/mysql-error.log #错误日志路径
slow_query_log = 1
long_query_time = 1 #慢查询时间 超过1秒则为慢查询
slow_query_log_file = /data/mysql/mysql-slow.log
performance_schema = 0
explicit_defaults_for_timestamp
#lower_case_table_names = 1 #不区分大小写
skip-external-locking #MySQL选项以避免外部锁定 。该选项默认开启
default-storage-engine = InnoDB #默认存储引擎
innodb_file_per_table = 1
# InnoDB为独立表空间模式 , 每个数据库的每个表都会生成一个数据空间
# 独立表空间优点:
# 1.每个表都有自已独立的表空间 。
# 2.每个表的数据和索引都会存在自已的表空间中 。
# 3.可以实现单表在不同的数据库中移动 。
# 4.空间可以回收(除drop table操作处,表空不能自已回收)

推荐阅读