mysql中影响性能的全局变量

  1. bulk_insert_buffer_size
    批量插入缓存大小,该参数主要是针对MyISAM存储引擎来说的。适用于在一次性插入100-1000+条记录的情况时,提高效率。默认值是8M,可以针对数据量的大小,翻倍增加。
  2. concurrent_insert
    并发插入,当表没有空洞(即删除过记录)时,某进程获取读锁的情况下,其他进程可以在表尾部进行插入。
    0:表示不允许并发插入
    1:当表没有空洞时,执行并发插入
    2:不管是否有空洞都执行并发插入
    默认是1,该参数需要针对表记录的删除频率来设置。
  3. delay_key_write
    延迟更新索引,该参数主要是针对MyISAM存储引擎来说的。意思是update记录时,先将数据up到磁盘,但不up索引,然后将索引存在内存里,当表关闭时,将内存索引写到磁盘。
    0:表示不开启
    1:表示开启 默认是1.
  4. delayed_insert_limit, delayed_insert_timeout,delayed_queue_size
    延迟插入,将数据先交给内存队列,然后慢慢地插入。该参数主要是针对MyISAM存储引擎来说的。根据实际情况调大,一般选择默认。
  5. expire_logs_days
    自动删除超过指定天数的日志,设置为0时,表示“不自动删除”。
  6. flush, flush_time
    是否启用同步表数据到磁盘以及自动同步的间隔时间。针对flush_time,官方建议只在Windows 9x或Me,或有最小资源的系统中使用该选项,因此建议关闭。
  7. ft_boolean_syntax,ft_max_word_len,ft_min_word_len,ft_query_expansion_limit,ft_stopword_file
    全文搜索特性,该参数主要是针对MyISAM存储引擎来说的。如果不使用FULLTEXT索引,就不需要优化。
  8. join_buffer_size
    用于表间关联(join)的缓存大小,建议设为131072(128K)。
  9. key_buffer_size
    索引块缓存区大小,该参数主要是针对MyISAM存储引擎来说的。该值越大,性能越好,但是超过操作系统能承受的最大值,反而会使mysql变得不稳定,因此如果不是MyISAM存储引擎,一般设置为4-32M。
  10. key_cache_age_threshold,key_cache_block_size,key_cache_division_limit
    键值缓存的相关设置,需要针对实际情况调优,该参数主要是针对MyISAM储存引擎来说的。
  11. large_pages
    是否启动大页面支持,意思是可以给一些缓存分配更大的空间,这个特性已经被InnoDB、MyISAM等常用存储引擎支持。
  12. low_priority_updates
    低优先级更新,意思是所有的写操作(表写锁),包括update,delete,insert等都需要等待读操作完成后才执行(表读锁解开)。 因为是针对表的锁,所以这里仅支持MyISAM存储引擎。
  13. max_write_lock_count
    最大写锁数量,意思是当写锁达到一定数量后,就不限制读锁,允许一部分读锁进入。因为是针对表的锁,所以这里仅支持MyISAM存储引擎
  14. preload_buffer_size
    重载索引时分配的缓冲区大小,该参数仅支持MyISAM存储引擎。
  15. read_buffer_size, read_rnd_buffer_size
    每个线程连续扫描时,为扫描的每个表分配的缓冲区的大小(字节)。如果进行多次连续扫描,可能需要增加该值, 默认值为131072。
  16. sort_buffer_size
    每个排序线程分配的缓冲区大小。增加该值可以加快ORDER BY或GROUP BY操作,默认数值是2097144(2M),建议加大到 16777208 (16M)。
  17. timed_mutexes
    显示mutexes的统计信息,默认关闭OFF。
  18. tmp_table_size
    临时表的大小,在未超过大小之前进行的操作是在内存中的,当超过后,mysql会自动转换到磁盘上。

你可能感兴趣的:(mysql,全局变量)