mysql配置文件的使用教程

 更新时间:2023年10月24日 10:47:57   作者:天上的云川  
这篇文章主要介绍了mysql配置文件的使用教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

配置文件格式

与在命令行中指定启动选项不同的是,配置文件中的启动选项被划分为若干个组,每个组有一个组名,用中括号[]扩起来,想这样

[server]
(具体的启动选项...)
[mysqld]
(具体的启动选项...)
[mysqld_safe]
(具体的启动选项...)
[client]
(具体的启动选项...)
[mysql]
(具体的启动选项...)
[mysqladmin]
(具体的启动选项...)

像这个配置文件就定义了许多个组,组名分别时server、mysqld、mysqld_safe、client、mysql、mysqladmin。魅族下边可以定义若干个启动选项,我们以[server]为例来看一下填写启动选项的形式(其他组中启动选项的形式是一样的):

[server]
option1				#这是option1,该选项不需要选项值
option2=value2        #这是optioin2,该选项需要选项值

在配置文件中指定启动选项的语法类似于命令行语法,但是配置文件中指定的启动选项不允许加–前缀,并且每行指定一个选项,而且=周围可以有空白字符(命令行中选项名、=、选项值之间不允许有空白字符)。另外,在配置文件中,我们可以使用#来添加注释,从#出现直到行尾内容都是属于注释内容,读取配置文件时会忽略这些注释内容

启动命令与选项组

配置文件中不同的选项组是给不同的启动命令使用的。不过有两个选项比较特别:

  • [server]组下边的启动选项将作用于所有的服务器程序
  • [client]组下边的启动选项将作用于所有的客户端程序

下面时启动命令能读取的选项组都有哪些

在这里插入图片描述

比如,在/etc/mysql/my.cnf这个配置文件中添加一些内容:

[server]
skip-networking
default-storage-engin=MyISAM

然后直接用mysql启动服务程序:

mysqld

虽然在命令行没有添加启动选项,但是在程序启动的时候,就会默认到我们上面提到的默认文件路径下查找配置文件,其中就包括/etc/my.cnf。又由于mysqld可以读取[server]选项组的内容,所以skip-networkingdefault-storage-engine=MyISAM这两个选项时生效的。你可以把这些启动选项放在[client]组里再试试用mysqld启动服务器程序,就不生效

特定MySQL版本的专用选项组

我们可以在选项组的名称后加上特定的MySQL版本号,比如对于[mysqld]选项组来说,我们可以定义一个[mysqld-5.7]的选项组,它的含义和[mysqld]一样,只不过只有版本号为5.7的mysqld程序才能启动这个选项组中的选项

同一个配置文件中多个组的优先级

我们说同一个命令可以访问配置文件中的多个组,比如mysqld可以访问[mysqld][server]组,如果在同一个配置文件中,比如~./my.cnf,在这些组里出现了同样的配置,比如这样:

[server]
default-storage-engine=InnoDB

[mysqld]
default-storage-engine=MyISAM

那么,将以最后一个出现的族中的启动选项为准,比方说例子中default-storage-engine基础现在[server]组也出现在[mysqld]组,因为[mysqld]组在[server]组后边,就以[mysqld]组中的配置项为基准

命令行和配置文件中启动选项的区别

在命令行上指定的绝大部分启动选项都可以放到配置文件中,但是有一些选项是专门为命令行设计的,比方说defaults-extra-filedefaults-file这样的选项本身就是为了指定配置文件路径的,再放在配置文件中使用就没有意义了
如果同一个启动选项即出现在命令行中,又出现在配置文件中,那么以命令行中的启动选项为准。比如我们在配置文件中写了:

[server]
default-storage-engine=InnoDB

而我们的命令行写的是

mysql.server start --default-storage-engine=MyISAM

那最终default-storage-engine的值就是MyISAM

到此这篇关于mysql配置文件的使用教程的文章就介绍到这了,更多相关mysql配置文件使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL数据库char与varchar的区别分析及使用建议

    MySQL数据库char与varchar的区别分析及使用建议

    本文主要介绍了mysql中VARCHAR与CHAR字符型数据的差异以及这两种字符型数据在项目中的使用建议,真心不错。值得一看。小编有种受益匪浅的感觉。
    2014-09-09
  • MySQL库的操作之创建、删除与管理数据库

    MySQL库的操作之创建、删除与管理数据库

    在数据库管理中MySQL是一个广泛应用的关系型数据库管理系统,它提供了丰富的命令行工具来执行各种操作,这篇文章主要介绍了MySQL库操作之创建、删除与管理数据库的相关资料,需要的朋友可以参考下
    2026-02-02
  • MySQL limit 翻页数据重复的问题解决

    MySQL limit 翻页数据重复的问题解决

    MySQL5.6引入了LIMIT QueryOptimization特性,可能会导致分页数据重复,下面就来详细的介绍一下MySQL limit 翻页数据重复的问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2026-03-03
  • MySQL中常用查看锁和事务的SQL语句详解

    MySQL中常用查看锁和事务的SQL语句详解

    这篇文章主要介绍了MySQL中常用查看锁和事务的SQL语句,用于查看锁和事务的状态,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • Mysql InnoDB删除数据后释放磁盘空间的方法

    Mysql InnoDB删除数据后释放磁盘空间的方法

    这篇文章主要介绍了Mysql InnoDB删除数据后释放磁盘空间的方法,Innodb数据库对于已经删除的数据只是标记为删除,并不真正释放所占用的磁盘空间,这就导致InnoDB数据库文件不断增长,本文就讲解释放磁盘空间的方法,需要的朋友可以参考下
    2015-04-04
  • MySQL按时间维度对亿级数据表进行平滑分表

    MySQL按时间维度对亿级数据表进行平滑分表

    本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下
    2025-08-08
  • mysql如何执行流程

    mysql如何执行流程

    MySQL主要分为server层和存储引擎层,server层负责连接、查询缓存、分析、优化和执行,存储引擎层负责数据存储和提取,SQL查询执行流程包括连接、认证、权限检查、分析、优化和执行,更新语句执行涉及重做日志(redolog)和归档日志(binlog)
    2024-11-11
  • MySQL 存储过程和"Cursor"的使用方法

    MySQL 存储过程和"Cursor"的使用方法

    本文中介绍了一个MySQL的存储过程,其中涉及Cursor的使用
    2008-12-12
  • mysql批量删除数据方法及注意事项说明

    mysql批量删除数据方法及注意事项说明

    这篇文章主要介绍了mysql批量删除数据方法及注意事项说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 以数据库字段分组显示数据的sql语句(详细介绍)

    以数据库字段分组显示数据的sql语句(详细介绍)

    本篇文章是对以数据库字段分组显示数据的sql语句进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论