# Mysql配置文件的使用

1. 配置文件格式

与在命令行中指定启动选项不同的是,配置文件中的启动选项被划分为若干个组,丽个组有一个组名, 用中括号

[ ]扩起来,像这样:

像这个配置文件里就定义了许多个组,组名分别是server.mysqldmysqld_safeclientmysqlmysqladmin.每个组下边可以定义若干个启动选项,我们以 [server] 组为例来看一下填写启动选项的形式(其他组中启动选项的形式是一样的)

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

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

2. 启动命令与选项组

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

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

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

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

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

然后直接用mysqld 启动服务器程序

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

3. 特定MySQL版本的专用选项组

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

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

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

[server]
default-storage-engine=MyISAM [mysqld]
default-storage-engine=InnoDB

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

5. 命令行和配置文件中启动选顶的区别

在命令行上指定的绝大部分启动选项都可以放到配置文件中,但是有一些选项是专门为命令行设计的,比方说defaults-extra-filedefaults-file这样的选项本身就是为了指定配置文件路径的,再放在配置文件中使用就没啥意义了。

如果同一个启动选项既出现在命令行中,又出现在配置文件中,那么以命令行中的启动选项为准!比如我们在配置文件中写了。

[server]
default-storage-engine=MyISAM

而我们的启动命令

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

那最后的default-storage-engine 的值就是 InnoDB

八: Mysql配置文件的使用的更多相关文章

  1. MySQL配置文件my.cnf 例子最详细翻译

    转的 MySQL配置文件my.cnf 例子最详细翻译,可以保存做笔记用. #BEGIN CONFIG INFO#DESCR: 4GB RAM, 只使用InnoDB, ACID, 少量的连接, 队列负载 ...

  2. mysql配置文件my.cnf详解

    原文地址:mysql配置文件my.cnf详解 作者:gron basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = path 给出存放着字符集的 ...

  3. MySQL配置文件改变了datadir值

    从Noinstall Zip Archive中安装MySQL正在从Noinstall软件包安装MySQL的用户可以使用这个说明来手动安装MySQL.从Zip archive 中安装MySQL的 步骤如 ...

  4. MySQL配置文件详解

    MYSQL 配置文件详解 “全局缓存”.“线程缓存”,全局缓存是所有线程共享,线程缓存是每个线程连接上数据时创建一个线程(如果没有设置线程池),假如有200连接.那就是200个线程,如果参数设定值是1 ...

  5. mysql配置文件转载

    #BEGIN CONFIG INFO#DESCR: 4GB RAM, 只使用InnoDB, ACID, 少量的连接, 队列负载大#TYPE: SYSTEM#END CONFIG INFO ## 此my ...

  6. Linux中MySQL配置文件my.cnf参数优化

    MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的.MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的 ...

  7. MySQL 配置文件my.cnf

    转载: MySQL配置文件my.cnf 详解:#BEGIN CONFIG INFO#DESCR: 4GB RAM, 只使用InnoDB, ACID, 少量的连接, 队列负载大#TYPE: SYSTEM ...

  8. mysql进阶(二十八)MySQL GRANT REVOKE用法

    mysql进阶(二十八)MySQL GRANT REVOKE用法   MySQL的权限系统围绕着两个概念: 认证->确定用户是否允许连接数据库服务器: 授权->确定用户是否拥有足够的权限执 ...

  9. linux中mysql配置文件和jdk环境变量

    mysql配置文件 [client]default-character-set = utf8mb4 [mysql]socket = /var/lib/mysql/mysql.sockdefault-c ...

  10. 在mysql配置文件修改sql_mode或sql-mode 怎么办?

    很多在安装程序配置数据库这一步中会出现: 请在mysql配置文件修改sql_mode或sql-mode 这个问题处理很简单: mysql中修改my.cnf,找到sql_mode,修改值为: NO_AU ...

随机推荐

  1. 像elementui一样封装自定义按钮

    <template> <div> <button @click.prevent="coverHandler" class="btn-btn& ...

  2. 【笔记】学到几个 golang 代码小技巧

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 从这篇文章学到:10个令人惊叹的Go语言技巧,让你的代码更 ...

  3. ABP-VNext 用户权限管理系统实战01---AuthServer服务迁移数据库到mysql

    一.从github上获取源码后修改命名空间 下载dome后修改解决方案名为Bridge. 二.默认是连接sqlserver的,需要修改为可以连接mysql 修改appsettings.json文件的C ...

  4. mysql系列基础篇01---通用的语法及分类

    通用语法及分类 DDL: 数据定义语言,用来定义数据库对象(数据库.表.字段) DML: 数据操作语言,用来对数据库表中的数据进行增删改 DQL: 数据查询语言,用来查询数据库中表的记录 DCL: 数 ...

  5. 基于密码学的身份混淆系统 -- idmix

    简介 Hyperledger Fabric的Idemix是一个基于密码学的身份混淆系统,它提供了一种在区块链网络中实现用户隐私的方法.Idemix的主要特性是它的零知识证明系统,这是一种允许用户证明他 ...

  6. 携程Java三面面经,已拿 offer!!

    分享一位读者投稿的携程校招 Java 岗位的面经. 下面是正文. 个人背景:双非本,机械专业转码. 携程在正式面试之前,会有一个性格测试(40分钟).性格测试之后,大概过一周进行笔试.笔试之后,会邮件 ...

  7. 4.7 C++ Boost 多线程并发库

    Boost 库是一个由C/C++语言的开发者创建并更新维护的开源类库,其提供了许多功能强大的程序库和工具,用于开发高质量.可移植.高效的C应用程序.Boost库可以作为标准C库的后备,通常被称为准标准 ...

  8. Win32汇编:各种语句的构造方式

    整理复习汇编语言的知识点,以前在学习<Intel汇编语言程序设计 - 第五版>时没有很认真的整理笔记,主要因为当时是以学习理解为目的没有整理的很详细,这次是我第三次阅读此书,每一次阅读都会 ...

  9. LyScriptTools 模块类API接口手册

    LyScriptTools工具包是在LyScript模块基础上封装的工具包,其主要是二次封装LyScript插件实现的一些新功能,或者将特定功能组件拆分开形成的独立模块,此类模块可实现更加精细化的功能 ...

  10. 使用.NET Core实现不同服务器SQL Server 数据库同步方案

    代码片段: 1 using DataSync.Core; 2 using Furion.Logging.Extensions; 3 using Microsoft.Data.SqlClient; 4 ...