mysql中/etc/my.cnf配置

/etc/my.cnf配置

[mysqld]
user=mysql
basedir=/mysql
datadir=/mysql/data
socket=/tmp/mysql.sock
secure-file-priv=/tmp
server_id=10
lower_case_table_names=1
log_bin_trust_function_creators=TRUE
sql_mode=NO_ENGINE_SUBSTITUTION
sync_binlog=1  #规定二进制日志从内存写入磁盘的时间点,1为事务提交时写入磁盘
log_bin=/binlog/mysql-bin  #指定二进制日志文件位置及前缀,等于同时设置了开启二进制日志功能
innodb_buffer_pool_size=1300M  #数据缓冲区,测试机内存2G,我按照60%给的
innodb_flush_log_at_trx_commit=1  #控制了redolog数据从内存写入磁盘的时间点,1为事务提交时写入磁盘
innodb_log_buffer_size=32M  #设置redo缓冲区大小
innodb_log_file_size=128M  #设置redolog重做日志的大小
innodb_log_files_in_group=3  #redolog文件数量
transaction_isolation=REPEATABLE-READ  #隔离级别RR
innodb_data_file_path=ibdata1:512M;ibdata2:512M:autoextend  #生成两个存放数据字典和undolog日志文件,一个512M
gtid-mode=on  #开启GTID功能
enforce-gtid-consistency=true  #强制执行GTID启动数据库服务
#log-slave-updates=1  #从库记录relay执行的日志到binlog,适用于从库下面还有从库的环境
#slave-parallel-type=LOGICAL_CLOCK #LOGICAL_CLOCK:基于组提交的并行复制方式
#slave-parallel-workers=8  #slave复制线程数
#master_info_repository=TABLE  #master_info信息保存在表中,性能可以有50%~80%的提升
#relay_log_info_repository=TABLE #relay.info信息保存在表中
#relay_log_recovery=ON  #从库设置,宕机后从主库拿数据保证relay-log的完整性
skip-name-resolve  #禁止DNS反向解析
relay_log_purge=0  #从库关闭relay语句执行后删除功能,为了安全
max_connections=3096  #最大连接数,可以根据测试结果设置
back_log=16  #达到最大连接数后,允许的最大排队用户数量
wait_timeout=60  #处于sleep连接状态的连接线程自动释放时间,默认60秒
#interactive_timeout=7200 #谨慎设置,应与开发人员沟通后设置,如果开发需要长连接,请勿修改
key_buffer_size=16M  #MyISAM索引缓冲区,还和ibtmp临时表有关,减小io和cpu负载,可以设置稍微大一点,根据show status like "created_tmp%";disk使用量调整
query_cache_size=128M  #查询缓存,但是命中率不高,一般不使用
query_cache_type=1  #缓存类型,其代表全部
query_cache_limit=50M  #限制单个查询使用的最大缓存数
max_connect_errors=2000  #最大错误连接数,超过将无法登陆,建议大一点
sort_buffer_size=2M  #排序缓冲区
max_allowed_packet=256M  #允许最大传输包大小
join_buffer_size=2M  #多表联合join缓冲区
thread_cache_size=16  #连接线程缓存池,下次可以直接连接,减小cpu压力,但是较消耗内存
binlog_cache_size=2M  #这个是每个会话分配的内存,酌情给,否则会占用大量内存,二进制日志缓存区大小
max_binlog_cache_size=8M  #最大binlog日志缓存区大小,show global status like 'bin%';查看Binlog_cache_disk_use值比较大的时候,我们可以考虑适当的调高 binlog_cache_size对应的值
max_binlog_size=512M  #规定二进制日志binlog文件最大文件大小,超出就会生成新文件
expire_logs_days=15  #二进制日志保留期限,原则上2个全备周期+1
read_buffer_size=2M  #读入缓冲区的大小
read_rnd_buffer_size=2M  #随机读(查询操作)缓冲区大小
bulk_insert_buffer_size=32M  #批量插入数据缓存大小,可以有效提高插入效率,默认为8M
[mysql]
socket=/tmp/mysql.sock
prompt=mysql5729_db01 [\\d]>
[client]
socket=/tmp/mysql.sock

留下评论