Mysql my.cnf配置文件参数详解

Linux 操作系统中 MySQL 的配置文件是 my.cnf,一般会放在 /etc/my.cnf 或 /etc/mysql/my.cnf 目录下。

如果你使用 rpm 包安装 MySQL 找不到 my.cnf 文件,可参考如下:

第一步:

通过cd命令 cd /usr/share/mysql 来到这个目录,

通过命令 ls 后发现该目录有个 my-medium.cnf,其实该文件就是my.cnf,这是通过 rpm 命令安装的mysql的特殊性

接下来通过 cp my-medium.cnf /etc/my.cnf 将该文件复制到 /etc/my.cnf ,即mysql的默认安装位置

复制代码
[client]
port=3306
socket=/var/run/mysql/mysql.sock
[mysqldump]
quick
max_allowed_packet = 16M

以上参数会被 MySQL 客户端应用读取,参数说明如下:

  • port:MySQL 客户端连接服务器端时使用的端口号,默认为 3306
  • socket:套接字文件所在目录
  • quick:支持较大的数据库转储,导出非常巨大的表时需要此项 。
  • max_allowed_packet:服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB字段一起工作时相当必要),每个连接独立的大小,大小动态增加。

注意:只有 MySQL 附带的客户端应用程序保证可以读取这段内容。如果想要自己的 MySQL 应用程序获取这些值,需要在 MySQL 客户端库初始化的时候指定这些选项。

复制代码
[mysqld]

user = mysql
basedir = /usr/local/mysql
datadir = /mydata/mysql/data
port=3306
server-id = 1
socket=/var/run/mysql/mysql.sock

上述参数说明如下:

  • user:mysqld 程序在启动后将在给定 UNIX/Linux 账户下执行。mysqld 必须从 root 账户启动才能在启动后切换到另一个账户下执行。mysqld_safe 脚本将默认使用 user=mysql 选项来启动 mysqld 程序。
  • basedir:指定 MySQL 安装的绝对路径;
  • datadir:指定 MySQL 数据存放的绝对路径;
  • port:服务端口号,默认为 3306
  • server-id:MySQL 服务的唯一编号,每个 MySQL 服务的 id 需唯一。
  • socket:socket 文件所在目录
复制代码
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
lower_case_table_names = 1

key_buffer_size=16M
max_allowed_packet=8M
no-auto-rehash
sql_mode=TRADITIONAL
  • character-set-server:数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用 4 个字节)
  • collation-server:数据库字符集对应一些排序等规则,注意要和 character-set-server 对应
  • init_connect:设置 client 连接 mysql 时的字符集,防止乱码
  • lower_case_table_names:是否对 sql 语句大小写敏感,1 表示不敏感
  • key_buffer_size:用于指定索引缓冲区的大小
  • max_allowed_packet:设置一次消息传输的最大值
  • no-auto-rehash:仅仅允许使用键值的 UPDATES 和 DELETES
  • sql_mode:表示 SQL 模式的参数,通过这个参数可以设置检验 SQL 语句的严格程度

上述内容可能与你的配置文件不同,当有什么需求时,复制使用相应的参数即可。

相关推荐
Dola_Pan1 小时前
Linux文件IO(二)-文件操作使用详解
java·linux·服务器
机器视觉知识推荐、就业指导2 小时前
Qt/C++事件过滤器与控件响应重写的使用、场景的不同
开发语言·数据库·c++·qt
jnrjian2 小时前
export rman 备份会占用buff/cache 导致内存压力
数据库·oracle
城南云小白3 小时前
Linux网络服务只iptables防火墙工具
linux·服务器·网络
咩咩大主教3 小时前
C++基于select和epoll的TCP服务器
linux·服务器·c语言·开发语言·c++·tcp/ip·io多路复用
isNotNullX3 小时前
一文解读OLAP的工具和应用软件
大数据·数据库·etl
Flying_Fish_roe3 小时前
linux-网络管理-网络配置
linux·网络·php
FuLLovers3 小时前
2024-09-13 冯诺依曼体系结构 OS管理 进程
linux·开发语言
小诸葛的博客4 小时前
pg入门1——使用容器启动一个pg
数据库
xuanyu224 小时前
Linux常用指令
linux·运维·人工智能