mysql的配置文件是哪个

mysql的配置文件是哪个

Windows操作系统中的MySQL配置文件是“my.ini”,位置一般在MySql安装的根目录下,也有可能在隐藏文件夹“ProgramData”下面;而Linux操作系统中的MySQL配置文件是“my.cnf”,位置一般在“/etc/my.cnf”或“/etc/mysql/my.cnf”目录下。

本教程操作环境:linux7.3&&windows7系统、mysql8版本、Dell G3电脑。

Windows操作系统中 MySQL 的配置文件 my.ini;Linux 操作系统中 MySQL 的配置文件是 my.cnf。

  • 一般情况下,my.ini 在 MySql 安装的根目录下,也有可能在隐藏文件夹“ProgramData”下面。

  • 一般情况下,my.cnf 在 /etc/my.cnf 或 /etc/mysql/my.cnf 目录下

my.ini 配置文件

my.ini 是 MySQL 默认使用的配置文件,一般情况下,只要修改 my.ini 配置文件中的内容就可以对 MySQL 进行配置。

除了上述介绍的目录,MySQL 安装目录下可能还有几个后缀名为.ini的配置文件,不同的配置文件代表不同的含义。

my.ini 是 MySQL 默认使用的配置文件,其它的配置文件都是适合不同数据库的配置文件的模板,在文件名中就说明了适合的数据库类型,下面对这几个配置文件进行详细讲解。

  • my-huge.ini:适合超大型数据库的配置文件。

  • my-large.ini:适合大型数据库的配置文件。

  • my-medium.ini:适合中型数据库的配置文件。

  • my-small.ini:适合小型数据库的配置文件。

  • my-template.ini:是配置文件的模板,MySQL 配置向导将该配置文件中选择项写入到 my.ini 文件。

  • my-innodb-heavy-4G.ini:表示该配置文件只对于 InnoDB 存储引擎有效,而且服务器的内存不能小于 4GB。

为了方便读者阅读,我们省略了 my.ini 文件中的注释内容。下面分开介绍 my.ini 中参数的具体意义,文件内容如下:

[client]port=3306[mysql]default-character-set=gbk

上面显示的是客户端的参数,[client] 和 [mysql] 都是客户端,参数说明如下:

  • port:表示 MySQL 客户端连接服务器端时使用的端口号,默认的端口号为 3306。如果需要更改端口号的话,可以直接在这里修改。

  • default-character-set:表示 MySQL 客户端默认的字符集。

[mysqld]port=3306basedir=C:/Program Files/MySQL/MySQL Server 5.7/datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Datacharacter-set-server=gb2312default-storage-engine=INNODBsql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"max_connections=100query_cache_size=0table_cache=256tmp_table_size=35Mthread_cache_size=8myisam_max_sort_file_size=100Gmyisam_sort_buffer_size=69Mkey_buffer_size=55Mread_buffer_size=64Kread_rnd_buffer_size=256Ksort_buffer_size=256K

以上是服务器的参数,参数说明如下表所示:

参数名称 说明
port 表示 MySQL 服务器的端口号
basedir 表示 MySQL 的安装路径
datadir 表示 MySQL 数据文件的存储位置,也是数据表的存放位置
default-character-set 表示服务器端默认的字符集
default-storage-engine 创建数据表时,默认使用的存储引擎
sql-mode 表示 SQL 模式的参数,通过这个参数可以设置检验 SQL 语句的严格程度
max_connections 表示允许同时访问 MySQL 服务器的最大连接数。其中一个连接是保留的,留给管理员专用的
query_cache_size 表示查询时的缓存大小,缓存中可以存储以前通过 SELECT 语句查询过的信息,再次查询时就可以直接从缓存中拿出信息,可以改善查询效率
table_open_cache 表示所有进程打开表的总数
tmp_table_size 表示内存中每个临时表允许的最大大小
thread_cache_size 表示缓存的最大线程数
myisam_max_sort_file_size 表示 MySQL 重建索引时所允许的最大临时文件的大小
myisam_sort_buffer_size 表示重建索引时的缓存大小
key_buffer_size 表示关键词的缓存大小
read_buffer_size 表示 MyISAM 表全表扫描的缓存大小
read_rnd_buffer_size 表示将排序好的数据存入该缓存中
sort_buffer_size 表示用于排序的缓存大小
innodb_additional_mem_pool_size=3Minnodb_flush_log_at_trx_commit=1innodb_log_buffer_size=2Minnodb_buffer_pool_size=107Minnodb_log_file_size=54Minnodb_thread_concurrency=18

以上是 InnoDB 存储引擎使用的参数,参数说明如下:

  • innodb_additional_mem_pool_size:表示附加的内存池,用来存储 InnoDB 表的内容。

  • innodb_flush_log_at_trx_commit:是设置提交日志的时机,若设置为 1,InnoDB 会在每次提交后将事务日志写到磁盘上。

  • innodb_log_buffer_size:表示用来存储日志数据的缓存区的大小。

  • innodb_buffer_pool_size:表示缓存的大小,InnoDB 使用一个缓冲池类保存索引和原始数据。

  • innodb_log_file_size:表示日志文件的大小。

  • innodb_thread_concurrency:表示在 InnoDB 存储引擎允许的线程最大数。

注意:每次修改 my.ini 文件中的参数后,必须重新启动 MySQL 服务才会有效。

my.cnf配置文件

为了方便读者阅读,我们省略了 my.cnf 文件中的注释内容。下面分开介绍 my.cnf 中参数的具体意义,文件内容如下:

[client]port=3306socket=/var/run/mysql/mysql.sock[mysqldump]quickmax_allowed_packet = 16M

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

  • port:MySQL 客户端连接服务器端时使用的端口号,默认为 3306

  • socket:套接字文件所在目录

  • quick:支持较大的数据库转储,导出非常巨大的表时需要此项 。

  • max_allowed_packet:服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB字段一起工作时相当必要),每个连接独立的大小,大小动态增加。

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

[mysqld]user = mysqlbasedir = /usr/local/mysqldatadir = /mydata/mysql/dataport=3306server-id = 1socket=/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 = utf8mb4collation-server = utf8mb4_general_ciinit_connect='SET NAMES utf8mb4'lower_case_table_names = 1key_buffer_size=16Mmax_allowed_packet=8Mno-auto-rehashsql_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 语句的严格程度

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

感谢各位的阅读,以上就是“mysql的配置文件是哪个”的内容了,经过本文的学习后,相信大家对mysql的配置文件是哪个这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

文章标题:mysql的配置文件是哪个,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/27532

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云
上一篇 2022年9月20日 下午11:56
下一篇 2022年9月20日 下午11:58

相关推荐

  • 数据库加密有什么用

    数据库加密的主要用途包括:保护数据的安全性、防止未经授权的访问、满足法规要求、防止数据泄露、保证数据的完整性和可靠性。数据库加密是一种安全策略,它可以确保存储在数据库中的敏感信息不被未经授权的用户访问。如果没有正确的密钥,即使数据被盗,也无法解读加密的信息,从而极大地增强了数据的安全性。此外,数据库…

    2024年7月16日
    500
  • 数据库跳板是什么意思

    数据库跳板是一种在网络安全领域常见的术语,是指黑客通过某个已经被控制的数据库,跳转到其他的数据库或系统,以此进行进一步的攻击行为。具体来说,数据库跳板包括以下几个步骤:一、黑客首先找到一个安全漏洞较多、比较容易攻击的数据库,然后利用各种手段将其控制;二、控制后,黑客会在此数据库中植入恶意代码,使其成…

    2024年7月16日
    500
  • 数据库实现了些什么功能

    数据库实现了数据存储、数据检索、数据管理、数据完整性、数据安全、并发控制、备份与恢复等功能。在这些功能中,数据存储是最基础的功能,因为所有的数据操作都依赖于数据存储这一核心功能。数据存储确保了数据的持久化,能够在需要时进行读取和操作,而不会因为系统关闭或故障而丢失数据。数据库系统通过高效的数据存储机…

    2024年7月16日
    300
  • 电信数据库都做些什么工作

    电信数据库的主要工作包括数据存储、数据管理、数据分析、数据安全、数据备份和恢复、数据集成和数据挖掘。数据存储是其核心功能之一,确保大量用户信息、通话记录、账单数据等能够高效、安全地存储。数据管理涉及对这些数据的组织和维护,确保数据的准确性和一致性。数据分析则通过大数据技术对存储的信息进行深度挖掘,帮…

    2024年7月16日
    400
  • 启动数据库用什么软件好

    启动数据库,我们可以选择多种不同的软件,比如MySQL、Oracle、SQL Server、PostgreSQL、MongoDB、SQLite等。每种数据库软件都有其独特的特性和适应的应用场景。例如,MySQL是最受欢迎的关系数据库管理系统,它具有开源、性能高效、成本低、可扩展性好等优点,被广泛应用…

    2024年7月16日
    300
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部