登录
首页 >  数据库 >  MySQL

你对mysql配置参数了解多少?一文详解

来源:SegmentFault

时间:2023-02-23 13:53:06 497浏览 收藏

小伙伴们对数据库编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《你对mysql配置参数了解多少?一文详解》,就很适合你,本篇文章讲解的知识点主要包括MySQL。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

    [client]
    #password   = your_password
    port        = 3306
    socket      = /tmp/mysql.sock
    
    [mysqld]
    port        = 3306
    socket      = /tmp/mysql.sock
    datadir = /usr/local/mysql/var
    skip-external-locking
    key_buffer_size = 32M
    max_allowed_packet = 1M
    table_open_cache = 128
    sort_buffer_size = 768K
    net_buffer_length = 8K
    read_buffer_size = 768K
    read_rnd_buffer_size = 512K
    myisam_sort_buffer_size = 8M
    thread_cache_size = 16
    query_cache_size = 16M
    tmp_table_size = 32M
    
    explicit_defaults_for_timestamp = true
    #skip-networking
    max_connections = 500
    max_connect_errors = 100
    open_files_limit = 65535
    
    log-bin=mysql-bin
    binlog_format=mixed
    server-id   = 1
    expire_logs_days = 10
    
    #loose-innodb-trx=0
    #loose-innodb-locks=0
    #loose-innodb-lock-waits=0
    #loose-innodb-cmp=0
    #loose-innodb-cmp-per-index=0
    #loose-innodb-cmp-per-index-reset=0
    #loose-innodb-cmp-reset=0
    #loose-innodb-cmpmem=0
    #loose-innodb-cmpmem-reset=0
    #loose-innodb-buffer-page=0
    #loose-innodb-buffer-page-lru=0
    #loose-innodb-buffer-pool-stats=0
    #loose-innodb-metrics=0
    #loose-innodb-ft-default-stopword=0
    #loose-innodb-ft-inserted=0
    #loose-innodb-ft-deleted=0
    #loose-innodb-ft-being-deleted=0
    #loose-innodb-ft-config=0
    #loose-innodb-ft-index-cache=0
    #loose-innodb-ft-index-table=0
    #loose-innodb-sys-tables=0
    #loose-innodb-sys-tablestats=0
    #loose-innodb-sys-indexes=0
    #loose-innodb-sys-columns=0
    #loose-innodb-sys-fields=0
    #loose-innodb-sys-foreign=0
    #loose-innodb-sys-foreign-cols=0
    
    default_storage_engine = InnoDB
    innodb_data_home_dir = /usr/local/mysql/var
    innodb_data_file_path = ibdata1:10M:autoextend
    innodb_log_group_home_dir = /usr/local/mysql/var
    innodb_buffer_pool_size = 128M
    innodb_log_file_size = 32M
    innodb_log_buffer_size = 8M
    innodb_flush_log_at_trx_commit = 1
    innodb_lock_wait_timeout = 50
    
    [mysqldump]
    quick
    max_allowed_packet = 16M
    
    [mysql]
    no-auto-rehash
    
    [myisamchk]
    key_buffer_size = 32M
    sort_buffer_size = 768K
    read_buffer = 2M
    write_buffer = 2M
    
    [mysqlhotcopy]
    interactive-timeout
  • skip-external-locking  
    跳过外部锁定,当外部锁定起作用的时候,每个进程访问数据表,则必须等待之前的进程完成操作并解除锁定,由于服务器访问数据库时经常需要等待解锁,所以在单服务器环境下开启外部锁定则会让MySQL性能下降,所以默认开启本项跳过外部锁定

  • key_buffer_size  
    myisam表缓冲区的大小。这个大小的设置,可以通过sql语句

  • innodb_autoinc_lock_mode
    为了解决自增主键锁表的问题而引入该值。该值为0时每次申请自增主键时需要锁表;该值为1的时候会对insert语句进行预判,如果可预判需要的ID则执行新方式,申请轻量锁,如果不可预判,则申请表锁;该值为2则全部申请轻量锁,这样可保证并发最高,但是会发生成的自增值不一致的情况。默认是1。

  • max_allowed_packet
    设定在网络传输中一次消息传输量的最大值,MySQL= 5.6.6默认值为4M,取值范围(1M~1G),必须设定为1024的倍数,单位为字节。

  • no-auto-rehash
    在终端中不启用tab补齐功能。当改为auto-rehash则再次登录MySQL则就可以使用命令自动补全了。在windows版本中不可用。这是windows版本的一个bug。

本篇关于《你对mysql配置参数了解多少?一文详解》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表