首页 > 数据库 >mysql常见的一些配置项

mysql常见的一些配置项

时间:2024-11-07 18:49:09浏览次数:3  
标签:配置 buffer 常见 innodb mysql table 日志 size

MySQL 有许多配置选项,可以用来调整其行为以满足特定的需求。以下是一些常见的配置选项,除了大小写敏感之外,这些配置选项也经常被调整:

1. 字符集和排序规则

  • character_set_server: 设置服务器的默认字符集。
  • collation_server: 设置服务器的默认排序规则。
  • character_set_client: 设置客户端发送给服务器的字符集。
  • character_set_connection: 设置连接层的字符集。
  • character_set_results: 设置结果集的字符集。

2. 缓冲区和缓存

  • innodb_buffer_pool_size: InnoDB 缓冲池的大小,用于缓存数据和索引页。
  • query_cache_size: 查询缓存的大小,用于缓存 SELECT 查询的结果。
  • key_buffer_size: MyISAM 表的键缓冲区大小。
  • sort_buffer_size: 为每个需要进行排序的线程分配的缓冲区大小。
  • read_buffer_sizeread_rnd_buffer_size: 用于全表扫描和排序扫描的缓冲区大小。

3. 日志和恢复

  • log_bin: 启用二进制日志,用于复制和恢复。
  • binlog_format: 二进制日志格式,可以是 STATEMENT, ROW, 或 MIXED
  • expire_logs_days: 二进制日志自动删除的时间(天数)。
  • innodb_log_file_size: InnoDB 事务日志文件的大小。
  • innodb_flush_log_at_trx_commit: 控制事务提交时日志刷新的行为。

4. 连接和线程

  • max_connections: 允许的最大并发连接数。
  • thread_cache_size: 线程缓存的大小,用于快速响应新连接。
  • wait_timeout: 服务器关闭非交互连接之前等待活动的秒数。
  • interactive_timeout: 服务器关闭交互连接之前等待活动的秒数。

5. 性能优化

  • skip_name_resolve: 禁用 DNS 解析,提高连接速度。
  • table_open_cache: 打开表的缓存大小。
  • tmp_table_size: 内存中临时表的最大大小。
  • max_heap_table_size: 内存表的最大大小。
  • join_buffer_size: 用于全连接操作的缓冲区大小。

6. 安全性

  • secure-file-priv: 限制 LOAD DATA 和 SELECT … INTO OUTFILE 操作的目录。
  • local-infile: 控制是否允许客户端使用 LOAD DATA LOCAL 语句。
  • old_passwords: 控制是否使用旧的密码哈希算法。

7. 存储引擎

  • default_storage_engine: 默认的存储引擎,例如 InnoDBMyISAM
  • innodb_file_per_table: 每个 InnoDB 表使用单独的文件。

8. 其他

  • lower_case_table_names: 控制表名是否转换为小写(Windows 上默认为 1,Linux 上默认为 0)。
  • datadir: 数据文件的存储目录。
  • socket: 本地客户端连接使用的 Unix 域套接字文件。
  • port: MySQL 服务器监听的 TCP/IP 端口号。

配置文件

这些配置选项通常在 MySQL 的配置文件 my.cnfmy.ini 中设置。配置文件的位置可能因操作系统和安装方式而异,常见的位置包括:

  • /etc/my.cnf
  • /etc/mysql/my.cnf
  • /etc/mysql/mysql.conf.d/mysqld.cnf
  • C:\ProgramData\MySQL\MySQL Server X.X\my.ini (Windows)

示例配置

以下是一个简单的 my.cnf 示例,展示了如何设置一些常用的配置选项:

[mysqld]
# 基本设置
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
port=3306

# 字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

# 缓冲区和缓存
innodb_buffer_pool_size=1G
query_cache_size=0
key_buffer_size=16M
sort_buffer_size=2M
read_buffer_size=2M
read_rnd_buffer_size=8M

# 日志和恢复
log_bin=mysql-bin
binlog_format=row
expire_logs_days=7
innodb_log_file_size=512M
innodb_flush_log_at_trx_commit=1

# 连接和线程
max_connections=150
thread_cache_size=10
wait_timeout=28800
interactive_timeout=28800

# 性能优化
skip_name_resolve=ON
table_open_cache=2000
tmp_table_size=16M
max_heap_table_size=16M
join_buffer_size=2M

# 安全性
secure-file-priv=/var/lib/mysql-files
local-infile=0

# 存储引擎
default_storage_engine=InnoDB
innodb_file_per_table=ON

标签:配置,buffer,常见,innodb,mysql,table,日志,size
From: https://blog.csdn.net/qq_43071699/article/details/143604316

相关文章

  • Javaweb之servlet常见面试题
    目录什么是Servlet?解释请求转发forward()方法和请求重定向sendRedirect()方法的区别?什么是Session?Session的工作原理?什么是Session?Session的工作原理:Session的特点:说一说HttpServletRequest、ServletContex和HttpSesssion三个对象的作用域?解释下Servlet生命周期?JSP和S......
  • Mysql数据库一
    CREATEDATABASE数据库名;//创建数据库SHOWdatabases;//查看数据库列表USE数据库名;//选择数据库DROPDATABASE数据库名://删除数据库   3.创建表        ......
  • PCB上常见标记及其功能解析
    在电子工程领域,PCB被广泛用于各种电子产品中,承担着连接元器件并实现电气互联的重任。在PCB设计中,为了提高电路板的可靠性、制造的便利性及功能的精确性,常见标记符号至关重要。1.PCB邮票孔邮票孔,顾名思义,是在PCB拼板时用于便于板与板之间分离的小孔。邮票孔通常排列成一定......
  • docker安装配置dnsmasq
    docker下载安装参考:docker安装、卸载、配置、镜像如果是低版本的额ubuntu,比如ubuntu16.04.7LTS,为了加快下载速度,参考:Ubuntu16.04LTS安装Docker。docker安装dnsmasq下载dnsmasq镜像首先镜像我们可以选择带web页面的,也可选择不带的,这里选择带web也免的,方便不懂技术的人配置。dock......
  • Springboot 配置yml文件 ENC 加密及failed to bind properties under '********' to j
    1.添加依赖<dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>3.0.3</version></dependency>2.设置加密盐......
  • 基于Centos7.X部署mysql8.4集群(主备)
    1、目标    将在主库的数据变更同步到从库,从而保证主库和从库的数据一致。2、原理    2.1主库会把数据变更记录在二进制日志文件Binlog中    2.2从库连接主库,读取binlog日志,并写入自身中继日志relaylog    2.3slave重做中继日志,将改变......
  • 揭秘MySQL事务的四大特性与隔离级别:从理论到实战,让你的数据操作无懈可击!
    MySQL事务的四大特性与隔离级别是数据库管理中非常重要的概念,它们确保了数据在并发操作下的一致性、完整性和可靠性。下面将详细介绍这四大特性及其隔离级别,并附上代码示例和详细解释。一、MySQL事务的四大特性原子性(Atomicity):定义:事务的所有操作要么全部完成,要么全部不完......
  • 【揭秘】Spring Boot配置文件与日志文件的神秘面纱!开发者必看!
    SpringBoot的配置文件与日志文件是应用程序配置和运行日志管理的关键组成部分。下面将详细介绍这两种文件:SpringBoot配置文件基本概述:SpringBoot支持多种配置文件格式,包括.properties、.yml和.yaml。.properties是传统的键值对形式,简单易懂,但当配置结构复杂时容易......
  • 乐维CMDB:基于图数据库破除配置项关系管理难题
    在当今数字化飞速发展的时代,企业的IT架构日益复杂,如同一个庞大而精密的机器。其中,配置管理数据库(CMDB)作为IT运维管理的核心部分,承载着企业IT资源配置信息的管理重任。而在CMDB的范畴内,配置项管理和配置项关系管理则是重中之重,它们直接影响着企业IT系统的稳定运行、故障......
  • vue-props配置
    原文链接:vue-props配置–每天进步一点点1.props作用props主要用于组件实例对象之间传递参数,比如我们前面创建的student组件,我们在组件中让他显示一些信息,比如下面这样:Student组件如下:1234567891011121314151617181920<template>  <div> ......