当前位置: 首页 > news >正文

MySQL配置文件my.cnf详解

        目前使用的服务器系统是CentOS8.5 ,针对MySql8.4的配置示例,自己根据实际情况修改。
安装MySql8.4时,MySql8.4没有默认的my.cnf,需要用户根据需要自行配置my.cnf文件,大概可看到下面这样的参数列表,可能不同版本的mysql参数多少会有一些不一致:

[client]
# 客户端连接 MySQL 服务器的端口号,通常是 3306。
port = 3306
# MySQL 服务器的套接字文件路径,用于本地连接。
socket =/usr/local/mysql/mysql.sock
#编码
default-character-set = utf8mb4

[mysqld]
#Mysql服务的唯一编号 每个mysql服务Id需唯一
server-id=1
# MySQL 服务器监听的端口号,通常也是 3306。
port = 3306
# MySQL 服务器的套接字文件路径,用于本地连接。
socket = /usr/local/mysql/mysql.sock
# MySQL 的根目录路径,通常用于安装 MySQL 的根目录(default /usr)
basedir = /usr/local/mysql
# mysql存放数据库文件的目录路径,通常与basedir不在一个文件夹内
datadir=/var/lib/mysql
# 启用binglog日志文件,可以指定目录,如果不指定则放在数据目录下面
log_bin = mysql-bin
#存放 MySQL 进程 ID 的文件路径。
pid-file = /usr/local/mysql/data/mysql.pid
#错误日志路径
log_error = /usr/local/mysql/logs/mysql-error.log
#临时数据路径
tmpdir=/usr/local/mysql/tmp
#用于指定 MySQL 服务器绑定的 IP 地址,0.0.0.0 表示绑定到所有可用的 IP 地址。
bind-address = 0.0.0.0
# 跳过密码登录
#skip-grant-tables
#事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
#transaction_isolation=READ-COMMITTED
# 连接到 MySQL 服务器时初始化 SQL 命令。
init-connect = 'SET NAMES utf8mb4'
# 服务器默认的字符集。
character-set-server = utf8mb4
#允许在内核中等待的连接数量
back_log = 300
# 允许的最大并发连接数。
max_connections = 1000
# 最大连接错误数
max_connect_errors = 6000
# 打开的文件数限制。
open_files_limit = 65535
# 表缓存大小。
table_open_cache = 128
# 单个查询的最大允许数据包大小
max_allowed_packet = 4M
# 二进制日志缓存大小
binlog_cache_size = 1M

#内部内存临时表的最大值 ,设置成128M。
#比如大数据量的group by ,order by时可能用到临时表,
#超过了这个值将写入磁盘,系统IO压力增大
# 最大堆表大小
max_heap_table_size = 8M
# 临时表大小
tmp_table_size = 16M

# 读取缓冲区大小
read_buffer_size = 2M
# 随机读取缓冲区大小
read_rnd_buffer_size = 8M
# 排序缓冲区大小
sort_buffer_size = 8M
# 连接缓冲区大小
join_buffer_size = 8M
# 键缓冲区大小
key_buffer_size = 4M
# 线程缓存大小
thread_cache_size = 8

#禁用mysql的缓存查询结果集功能
#后期根据业务情况测试决定是否开启
#大部分情况下关闭下面两项
# 查询缓存类型 (1 表示启用)   
#query_cache_type = 0
# 查询缓存大小
#query_cache_size = 8M
# 查询缓存限制
#query_cache_limit = 2M

# 全文索引最小词长度
ft_min_word_len = 4
# 二进制日志文件的格式
binlog_format = mixed

# 二进制日志文件自动清理天数
expire_logs_days = 30

#慢查询sql日志设置
# 启用慢查询日志 (1 表示启用)
#slow_query_log = 1
#慢查询sql日志路径
#slow_query_log_file = /usr/local/mysql/logs/mysql-slow.log
# 定义慢查询的阈值时间
#long_query_time = 1

#检查未使用到索引的sql
log_queries_not_using_indexes=1


# 性能模式 (0 表示禁用)
performance_schema = 0
#明确指定 MySQL 是否应该使用严格的模式来检查日期和时间值:TIMESTAMP如果没有显示声明NOT NULL,允许NULL值
explicit_defaults_for_timestamp=true
# 表名大小写不敏感 (1 表示启用:不区分大小写)
lower_case_table_names = 1
# 禁用外部锁定,用于控制表级锁定
skip-external-locking
# 默认存储引擎 (InnoDB)
default_storage_engine = InnoDB
# 每个表使用单独的 InnoDB 文件
innodb_file_per_table = 1
# InnoDB 可以打开的最大文件数
innodb_open_files = 500
# InnoDB 缓冲池大小
innodb_buffer_pool_size = 64M
# InnoDB 写 I/O 线程数
innodb_write_io_threads = 4
# InnoDB 读 I/O 线程数
innodb_read_io_threads = 4
# InnoDB 线程并发度
innodb_thread_concurrency = 0
# InnoDB 清理线程数
innodb_purge_threads = 1
# InnoDB 日志刷新行为
innodb_flush_log_at_trx_commit = 2
# InnoDB 日志缓冲大小
innodb_log_buffer_size = 2M
# InnoDB 日志文件大小
innodb_log_file_size = 32M
# InnoDB 日志文件组数
innodb_log_files_in_group = 3
# InnoDB 最大脏页百分比
innodb_max_dirty_pages_pct = 90
# InnoDB 锁等待超时时间
innodb_lock_wait_timeout = 120
# 批量插入缓冲区大小
bulk_insert_buffer_size = 8M
#MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
#MySQL默认的wait_timeout  值为8个小时, interactive_timeout参数需要同时配置才能生效
# 交互超时时间
interactive_timeout = 28800
# 等待超时时间
wait_timeout = 28800
[mysqldump]
quick
# mysqldump 最大允许数据包大小,如果有BLOB对象建议修改成1G
max_allowed_packet = 100M 
[myisamchk]
# MyISAM 检查工具的键缓冲区大小
key_buffer_size = 8M  
# MyISAM 检查工具的排序缓冲区大小
sort_buffer_size = 8M 
# 读缓存大小
read_buffer = 4M  
# 写缓存大小
write_buffer = 4M

相关文章:

  • 抽象工厂模式 (Abstract Factory Pattern)
  • 蓝桥杯专项复习——结构体、输入输出
  • 花生好车:重构汽车新零售生态的破局者
  • HTML5前端第三章节
  • Centos离线安装openssl-devel
  • 【深度学习与大模型基础】第5章-线性相关与生成子空间
  • 音视频缓存数学模型
  • AI-医学影像分割方法与流程
  • Spring Validation参数校验
  • P1118 [USACO06FEB] Backward Digit Sums G/S
  • 前端项目的构建流程无缝集成到 Maven 生态系统(一)
  • C Sharp 集合
  • 包装类简单认识泛型
  • 音视频入门基础:RTCP专题(1)——RTCP官方文档下载
  • C/C++实现工厂模板设计模式(Factory Pattern)
  • 多模态RAG框架(一)ViDoRAG:Visual Document RAG via Dynamic Iterative Reasoning Agents
  • 【一起来学kubernetes】14、StatefulSet使用详解
  • 开箱即用的whisper-service服务
  • ccf3501密码
  • 重生之我在学Vue--第15天 Vue 3 动画与过渡实战指南
  • 研究显示:肺活量衰减始于20至25岁
  • 重庆城市轨道交通拟听证调价:公布两套票价方案,正征求意见
  • “80后”北大硕士罗婕履新甘肃宁县县委常委、组织部部长
  • 美国失去最后一个AAA评级,资产价格怎么走?美股或将触及天花板
  • 视频丨歼-10CE首次实战大放异彩
  • 法律顾问被控配合他人诈骗酒店资产一审判8年,二审辩称无罪