当前位置: 首页 > news >正文

MySQL程序和选项文件配置

1.MySQL程序简介

Linux系统程序一般在/usr/bin目录下,可以通过命令查看:

 Windows系统目录:你的安装路径\MySQL Server 8.0 \bin,也可以通过命令查看:

 以下是MySQL常用的程序:

 mysqld是mysql程序后台进程相当于是一个服务器,剩下的都是客户端也就是mysql的工具。

2.mysqld-MySQL服务器介绍

mysqld也被称为MySQL服务器,是一个多线程程序,对数据目录进行访问管理(包含数据库和表)。数据目录也是其他信息(如日志文件和状态文件)的默认存储位置。

当MySQL服务器启动的时候,会侦听指定的端口,处理来自客户端程序的网络连接,并管理不同客户端对数据库的访问。

 3.mysql-MySQL命令行客户端

3.1mysql客户端简介

mysql是一个简单的SQL shell,可以输入命令行和执行sql语句,当执行sql语句的,查询结果是以ASCII表格式显示

mysql的基本使用非常简单,回顾一下连接数据库的方式。

连接mysql服务器,长选项格式。

 短选项格式。

3.2mysql客户端选项

3.2.1指定选项的方式

在mysql后面的命令行中列出选项

在mysql后面指定配置文件的路径,以便在程序启动时读取配置文件中的选项并解析对应程序选项的值,并应用在启动参数中

使用环境变量中的选项

3.2.2mysql客户端命令常用的选项

 

 注意:如果选项的值中包含空格,那么值需要包含在双引号中

3.2.3在命令行中使用选项

命令行中指定选项遵循以下规则:

选项应在程序名之后给出

选项以单破折号"-"或双破折号"--"号开头,-表示短格式,--表示长格式,例如-?和--help都表示MySQL程序显示他的帮助信息

 选项名称区分大小写。-v和-V都是合法的,但含义不同,他们分别是--verbose和--version选项的相应的缩写形式

--verbose尽可能详细的显示结果。

 某些选项需要在后面指定一个值。例如,-h 127.0.0.1或--host=127.0.0.1表示指定客户端的程序指定MySQL服务器主机。

 对于带值的长格式选项,通常用=符号分隔选项名称和值。对于带值的短选项,选项值可以紧跟在选项之后,也可以用空格隔开,例如:--host=127.0.0.1、-h127.0.0.1和-h 127.0.0.1是等价的。但是对于密码选项的短格式,如果指定密码,选项与值之间不能有空格。

 注意:在命令行中,第一个不带破折号-的值被解析为要访问数据库名,所以--database选项一般可以省略。

 在选项名称中,破折号(-)和下划线(_)在大多数情况下可以互换使用,但前导破折号不能转为下划线,例如--skip-grant-tables和--skip_grant_tables是等价的。

对于采用数值的选项,该值可以带有后缀K,M或G以指示乘数1024,1024^2或1024^3,例如,以下命令告诉mysqladmin对服务器执行1024次ping,每次ping之间休眠3秒。

 在命令行中包含空格的选项值必须用引号引起来。例如,--execute(or -e)选项与mysql一起使用时,表示将一个或多个SQL语句发送服务器执行并显示结果。

 3.3选项(配置)文件

大多数MySQL程序都可以从选项文件(配置文件)中读取启动选项。可以在选项文件中指定常用选项,这样就不用在每次运行程序时都在命令中输入它们。大部分选项文件都是纯文本格式,可以使用任何文编辑器创建。

3.3.1使用方法

选项--default-file可以指定要使用的选项文件,客户端程序会读取并应用选项文件中的相关配置。

 

 

 客户端配置文件:

 服务器配置文件:

 虽然把客户端与服务端的配置文件做了区分,但是我们一般不会分别在对应的配置文件中配置,而是把所有的配置都写在默认的配置文件中,便于维护和管理。

Windows下配置文件

C:\ProgramData\MySQL\MySQL Server 8.0\my.ini是windows下默认的配置文件路径

如果在使用MySQL程序时没有指定配置文件的路径,那么会自动读取默认路径下的配置文件。

3.3.2选项文件位置及加载顺序

MySQL按以下表格中的顺序查找并读取选项文件,如果文件不存在则需要手动创建。

读取顺序从上到下,后读取的文件中配置的选项优先级越高

3.2.2.1在Windows系统读取选项文件

对于两个文件配置了相同的选项,那么优先级高的文件就覆盖掉优先级低的文件中的选项。

"C:\ProgramData\MySQL\MySQL Server 8.0\my.ini"这个是常用的操作配置文件路径

3.2.2.2在Unix和Linux系统上读取的选项文件

在Windows系统中配置文件的后缀名为.ini和.cnf

在Linux系统中配置文件的后缀名为.cnf

3.3.3选项文件语法

运行mysql程序是在命令行上指定任何长选项都可以在选项文件中指定,要获取选项列表可以使用如下命令:

选项文件指定选项的时候,省略两个前导破折号,并且每一行表示一个选项。

例如:--quick和--host=127.0.0.1在选项文件中表示成quick和host=127.0.0.1

选项文件中的空行会被忽略。非空行可以采用一下任何形式:

#comment,;comment

注释以#或;开,注释可以从一行的中间开始

[group] 节点

设置选项的程序或组的名称,不区分大小写,如果选项组名称与程序名称相同,则组中选项专门应用于该程序,例如,[mysqld]和[mysql]组分别适用于mysqld服务端程序和mysql客户端程序

opt_name=value

选项名对应的值,可以使用转义序列\b,\t,\n,\r,\\,\s来表示退格符,制表符,换行符,回车符,反斜杠符和空格符。

注意:

1.选项名称和值中的前导和尾随空格会自动删除

2.在windows系统中设置路径应该使用转义字符

[client]mysql发行版中所有的客户端程序都会被读取并应用这个组下的选项(除了mysqld)在这个组下可以指定适用所有客户端程序的通用选项,例如配置用户名和密码。

可以通过[客户端程序名]的形式为不同的客户端程序指定选项,例如[mysql],当运行mysql程序时会读取并应用组下的配置,如果选项名为[client]重复,[client]中的选项将会被覆盖。

为特定的mysql版本设置选项可以适用[mysql-5.7],[mysql-8.0]的组名。

在选项文件中适用!include指令来包含其他选项文件,例如:!include dir /etc/mysql/conf.d/具体的配置文件路径

在选项文件中使用!includ指令来搜索指定目录中的其他选项文件,例如:!include/home/mydir,但不保证目录中选项文件的读取顺序。

注意:

1.!include在unix和linux操作系统中会搜索指定目录下任何以.cnf为后缀的文件

在Windows中,会搜索指定目录下任何以.ini或.cnf为后缀的文件

2.只会读取包含文件中当前客户端的组配置,例如当前运行的是mysql程序,那么只会读取[mysql]组中的选项配置

在Windows中确保在配置文件的最后一行加一个换行符,否则改行将被忽略。

3.3.4设置客户端全局编码格式

在linux下编辑全局配置文件默认位置/etc/mysql/my.cnf,初始内容如下:

注意:在每次修改配置文件之前要先做好备份,如果发生错误可以恢复到之前版本。

http://www.dtcms.com/a/340946.html

相关文章:

  • 【Coze】Windows 环境下使用 Docker 部署 Coze Studio 的详细指南
  • 力扣面试150(61/100)
  • Leetcode 深度优先搜索 (11)
  • AI +金融 = 七大核心维度+ 落地典型困难
  • Final Cut Pro X Mac fcpx音视频剪辑编辑
  • AI + 金融领域 + 落地典型案例
  • 基于FPGA的实时图像处理系统(2)——VGA显示彩条和图片
  • 项目1其二(验证码、jwt)
  • 实时视频技术选型深度解析:RTSP、RTMP 与 WebRTC 的边界
  • 云计算学习100天-第25天
  • YOLOv11 到 C++ 落地全流程:ONNX 导出、NMS 判别与推理实战
  • 基于卷积神经网络的多输出数据回归预测CNN(多输入多输出)
  • 将SSL配置迁移到Nacos的步骤
  • 软件测试:如何利用Burp Suite进行高效WEB安全测试
  • 面试官视角分析与提问点
  • SpringBoot3 Ruoyi芋道管理后台vben5.0
  • 记录 docker容器打包成镜像 在其他服务器快速启动镜像和容器
  • Linux《进程间通信(下)》
  • 什么是股指期货可转移阿尔法策略?
  • Web3:重构互联网秩序的下一代范式革命
  • 三格电子Profinet转Modbus RTU网关技术详解
  • (第二十五节课内容总结)
  • AGV小车cad+三维图+设计说明书
  • Autoware Universe 感知模块详解 | 第一节 宏观认识Autoware Universe整体架构
  • Linux Shell 常用操作与脚本示例详解
  • DL00271-基于YOLOv11的激光雷达LiDAR船舶目标检测含完整数据集
  • C++开发/Qt开发:单例模式介绍与应用
  • 系统架构设计师备考第1天——系统架构概述
  • Redis-缓存-雪崩-持久化、集群、灾备
  • VSCode架构解析