my.ini 文件配置

以下是 MySQL 配置文件 my.ini 中常见的配置参数及其详细解释。这些参数可以根据需要进行调整,以优化 MySQL 数据库的性能和行为。

# 基本设置
port = 3306                             # MySQL 服务器监听的端口
basedir = /usr/local/mysql              # MySQL 安装目录
datadir = /var/lib/mysql                # MySQL 数据目录
socket = /var/lib/mysql/mysql.sock      # 套接字文件路径
pid-file = /var/run/mysqld/mysqld.pid   # PID 文件路径
user = mysql                            # 运行 MySQL 服务器的用户

# 日志相关设置
log-error = /var/log/mysql/error.log    # 错误日志文件路径
general_log_file = /var/log/mysql/general.log  # 常规查询日志文件路径
general_log = 1                         # 启用常规查询日志
slow_query_log_file = /var/log/mysql/slow.log # 慢查询日志文件路径
slow_query_log = 1                      # 启用慢查询日志
long_query_time = 2                     # 慢查询阈值(秒)

# 网络设置
bind-address = 0.0.0.0                  # 监听的 IP 地址
max_connections = 151                   # 最大连接数
max_connect_errors = 100                # 允许的最大连接错误数

# 缓冲和缓存设置
key_buffer_size = 16M                   # 用于 MyISAM 索引的缓冲区大小
max_allowed_packet = 64M                # 允许的最大数据包大小
table_open_cache = 2000                 # 表缓存的数量
sort_buffer_size = 4M                   # 排序缓冲区大小
read_buffer_size = 2M                   # 读缓冲区大小
read_rnd_buffer_size = 8M               # 随机读缓冲区大小
query_cache_size = 16M                  # 查询缓存大小
tmp_table_size = 32M                    # 临时表大小
thread_cache_size = 8                   # 缓存的线程数量

# InnoDB 引擎设置
innodb_buffer_pool_size = 256M          # InnoDB 缓冲池大小
innodb_log_file_size = 64M              # InnoDB 日志文件大小
innodb_flush_log_at_trx_commit = 1      # InnoDB 日志刷新策略
innodb_lock_wait_timeout = 50           # InnoDB 锁等待超时时间

# 复制相关设置(用于主从复制)
server-id = 1                           # 服务器唯一标识
log_bin = /var/log/mysql/mysql-bin.log  # 二进制日志文件路径
binlog_format = row                     # 二进制日志格式
expire_logs_days = 10                   # 二进制日志自动删除的天数
relay_log = /var/log/mysql/mysql-relay-bin.log  # 中继日志文件路径
log_slave_updates = 1                   # 从服务器记录二进制日志

# 安全设置
secure-file-priv = ""                   # 用于导入导出操作的目录限制

# 性能模式设置
performance_schema = 1                  # 启用性能模式

客户端配置

[client]
port = 3306                             # 客户端连接的端口号
socket = /var/lib/mysql/mysql.sock      # 客户端连接的套接字文件

[mysql]
no-auto-rehash                          # 禁用自动补全功能
mysqld_safe 设置
[mysqld_safe]
log-error = /var/log/mysql/mysqld_safe.log  # mysqld_safe 日志文件
pid-file = /var/run/mysqld/mysqld.pid       # PID 文件路径

其他配置

MyISAM 引擎设置
myisam_max_sort_file_size = 100G        # MyISAM 索引排序的最大文件大小
myisam_sort_buffer_size = 8M            # MyISAM 索引排序缓冲区大小

连接和线程管理

interactive_timeout = 28800             # 交互连接的超时时间(秒)
wait_timeout = 28800                    # 非交互连接的超时时间(秒)

日志设置

log_bin_trust_function_creators = 1     # 允许非安全模式下创建函数和过程

复制设置

replicate-do-db = exampledb             # 要复制的数据库
replicate-ignore-db = ignoredb          # 要忽略复制的数据库

字符集设置

character-set-server = utf8mb4          # 服务器的默认字符集
collation-server = utf8mb4_unicode_ci   # 服务器的默认排序规则

高级配置

内存管理
innodb_buffer_pool_instances = 1        # InnoDB 缓冲池实例数量
innodb_buffer_pool_chunk_size = 128M    # InnoDB 缓冲池块大小
Binlog 设置
sync_binlog = 1                         # 每次事务提交时同步二进制日志
临时表设置
tmp_table_size = 64M                    # 内存中临时表的最大大小
max_heap_table_size = 64M               # 用户可以创建的内存表的最大大小

性能模式

performance_schema = ON                 # 启用性能模式

锁等待超时

lock_wait_timeout = 31536000            # 锁等待超时时间`

自定义设置

innodb_file_per_table = 1               # 每个表使用独立的表空间
innodb_stats_on_metadata = 0            # 禁用元数据统计
innodb_flush_method = O_DIRECT          # 刷新方法设置为直接 I/O
innodb_log_buffer_size = 8M             # InnoDB 日志缓冲区大小
innodb_thread_concurrency = 0           # InnoDB 线程并发度
innodb_autoinc_lock_mode = 2            # 自增锁模式
innodb_io_capacity = 200                # InnoDB I/O 容量
这些参数涵盖了 MySQL 服务器的各个方面,可以根据具体需求进行调整,以优化性能、安全性和资源利用率。需要注意的是,修改配置文件后需要重启 MySQL 服务器以使更改生效。在调整参数时,建议逐步修改并测试,以确保不会对系统稳定性和性能产生负面影响。
  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值