MySQL随便聊----之MySQL的调控按钮-启动选项和系统变量

-------MySQL是怎么运行的

基本介绍

如果你用过手机,你的手机上一定有一个设置的功能,你可以选择设置手机的来电铃声、设置音量大小、设置解锁密码等等。假如没有这些设置功能,我们的生活将置于尴尬的境地,比如在图书馆里无法把手机设置为静音,
无法把流量开关关掉以节省流量,在别人得知解锁密码后无法更改密码~ MySQL 的服务器程序和客户端程序也有很多设置项,比如对于 MySQL 服务器程序,我们可以指定诸如允许同时连入的客户端数量、客户端和服务器通 信方式、表的默认存储引擎、查询缓存的大小吧啦吧啦的设置项。对于 MySQL 客户端程序,我们之前已经见识过了,可以指定需要连接的服务器程序所在主机的主机名或 IP 地址、用户名及密码等信息。
这些设置项一般都有各自的默认值,比方说服务器允许同时连入的客户端的默认数量是 151 ,表的默认存储引擎 InnoDB ,我们可以在程序启动的时候去修改这些默认值,对于这种在程序启动时指定的设置项也称之为启动 选项( startup options ),这些选项控制着程序启动后的行为。在 MySQL 安装目录下的 bin 目录中的各种可执行 文件,不论是服务器相关的程序(比如 mysqld mysqld_safe )还是客户端相关的程序(比如 mysql 、mysqladmin ),在启动的时候基本都可以指定启动参数。
这些启动参数可以放在命令行中指定,也可以把它们 y q ),在启动的时候基本都可以指定启动参数。这些启动参数可以放在命令行中指定,也可以把它们 放在配置文件中指定。下边我们会以 mysqld 为例,来详细唠叨指定启动选项的格式。
需要注意的一点是,我们 现在要唠叨的是设置启动选项的方式,下边出现的启动选项不论大家认不认识,先不用去纠结每个选项具体的作
用是啥,之后我们会对一些重要的启动选项详细唠叨。

常见实战案例:

在命令行上使用选项

 

选项的长形式和短形式

配置文件中使用选项
        在命令行中设置启动选项只对当次启动生效,也就是说如果下一次重启程序的时候我们还想保留这些启动选项的话,还得重复把这些选项写到启动命令行中,这样真的神烦唉!于是设计 MySQL 的大叔们提出一种 配置文件 (也称为 选项文件 )的概念,我们把需要设置的启动选项都写在这个配置文件中,每次启动服务器的时候都从 这个文件里加载相应的启动选项。由于这个配置文件可以长久的保存在计算机的硬盘里,所以只需我们配置一次,以后就都不用显式的把启动选项都写在启动命令行中了, 所以我们推荐使用配置文件的方式来设置启动选

 1)配置文件的路径

MySQL 程序在启动时会寻找多个路径下的配置文件,这些路径有的是固定的,有的是可以在命令行指定的。根据操作系统的不同,配置文件的路径也有所不同,我们分开看一下。
(1) Windows操作系统的配置文件

(2)类Unix操作系统中的配置文件

 

2) 配置文件的内容

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

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

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

 4)配置文件的优先级

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

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

defaults-file的使用

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

 系统变量

1)系统变量简介

        MySQL 服务器程序运行过程中会用到许多影响程序行为的变量,它们被称为 MySQL 系统变量,比如允许同时连入的客户端数量用系统变量 max_connections 表示,表的默认存储引擎用系统变量 default_storage_engine 示,查询缓存的大小用系统变量 query_cache_size 表示, MySQL 服务器程序的系统变量有好几百条,我们就不 一一列举了。每个系统变量都有一个默认值,我们可以使用命令行或者配置文件中的选项在启动服务器时改变一 些系统变量的值。大多数的系统变量的值也可以在程序运行过程中修改,而无需停止并重新启动它。

 2)查看系统变量

3) 设置系统变量

1-通过启动项设置
大部分的 系统变量 都可以通过启动服务器时传送启动选项的方式来进行设置。如何填写启动选项我们上边已经花了大篇幅来唠叨了,就是下边两种方式:
1)通过命令行添加启动选项。
比方说我们在启动服务器程序时用这个命令:
mysqld --default-storage-engine=MyISAM --max-connections=10
2)通过配置文件添加启动选项。
        我们可以这样填写配置文件:
        [server]
                default-storage-engine=MyISAM
                max-connections=10
当使用上边两种方式中的任意一种启动服务器程序后,我们再来查看一下系统变量的值:

 

 2-服务器程序运行过程中设置
系统变量 比较牛逼的一点就是, 对于大部分系统变量来说,它们的值可以在服务器程序运行过程中进行动态修改而无需停止并重启服务器 。不过系统变量有作用范围之分,下边详细唠叨下。

 注意事项
并不是所有系统变量都具有 GLOBAL SESSION 的作用范围
        有一些系统变量只具有 GLOBAL 作用范围,比方说 max_connections ,表示服务器程序支持同时最多有多少个客户端程序进行连接。
        有一些系统变量只具有 SESSION 作用范围,比如 insert_id ,表示在对某个包含 AUTO_INCREMENT 列的表进行插入时,该列初始的值。
        有一些系统变量的值既具有 GLOBAL 作用范围,也具有 SESSION 作用范围,比如我们前边用到的 default_storage_engine ,而且其实大部分的系统变量都是这样的,
有些系统变量是只读的,并不能设置值
        比方说 version ,表示当前 MySQL 的版本,我们客户端是不能设置它的值的,只能在 SHOW VARIABLES 语句里查看。

4)启动选项和系统变量的区别

状态变量

 先聊到这,下次再说

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/651949.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vitis HLS 学习笔记--Syn Report解读(1)

目录 1. 介绍 2. 示例一 2.1 HLS 代码 2.2 Report 解读 2.2.1 General Information 2.2.2 Timing Estimate 2.2.3 Performance & Resource Estimates 2.2.4 HW interfaces 2.2.4.1 硬件接口报告 2.2.4.2 导出至 Vivado 中的 IP 2.2.4.3 Port-Level Protocols 端…

Flutter应用下拉菜单设计DropdownButtonFormField控件介绍

文章目录 DropdownButtonFormField介绍使用方法重点代码说明属性解释 注意事项 DropdownButtonFormField介绍 Flutter 中的 DropdownButtonFormField 是一个用于在表单中选择下拉菜单的控件。它是 DropdownButton 和 TextFormField 的组合,允许用户从一组选项中选择…

python之List列表

1. 高级数据类型 Python中的数据类型可以分为:数字型(基本数据类型)和非数字型(高级数据类型) 数字型包含:整型int、浮点型float、布尔型bool、复数型complex 非数字型包含:字符串str、列表l…

SkyWalking 自定义Span并接入告警

图容易被CSDN吞掉,我在掘金也发了:https://juejin.cn/post/7361821913398837248 我就是这么膨胀 最近在做 OpenAI API 套壳,当我使用 okhttp-sse 这个库进行流式内容转发的时候,我发现有些回调方法 SkyWalking 不能抓取到。这就…

【探索Java编程:从入门到入狱】Day2

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收…

打造智能语音机器人-用语音控制机器人

人工智能现已成为国家发展重大战略,智能语音技术作为人工智能产业链上的关键一环,AI应用成熟的技术之一,人工智能的发展也进入了一个崭新的阶段。那么打造智能语音机器人怎样实现用语音控制机器人呢?和小编一起来看看。 选择合适的…

开箱展示——深圳市雷龙发展的存储卡

最近收到了来自深圳市雷龙发展有限公司寄来的存储卡,奈何最近也没有好的嵌入式项目需要用到,哪这里就简单给大家展示一下吧。 原始包装大概就是这样子了垃,有两个存储芯片和一个简单的转接器,测试的时候可以把芯片焊接到转接器…

机器学习-保险花销预测笔记+代码

读取数据 import numpy as np import pandas as pddatapd.read_csv(rD:\人工智能\python视频\机器学习\5--机器学习-线性回归\5--Lasso回归_Ridge回归_多项式回归\insurance.csv,sep,) data.head(n6) EDA 数据探索 import matplotlib.pyplot as plt %matplotlib inlineplt.hi…

ENVI下基于劈窗算法从MODIS数据中反演海表温度

劈窗算法最初是为反演海面温度开发的,具体地说是针对NOAA/AVHRR的4和5通道设计的,后来也被用来反演地表温度,这种算法较成熟,精度也高。劈窗算法以地表热辐射传导方程为基础,利用10~13μm 大气窗口内,两个相…

【Qt】信号与槽

1 🍑信号和槽概述🍑 在 Qt 中,用户和控件的每次交互过程称为⼀个事件。⽐如 “⽤⼾点击按钮” 是⼀个事件,“⽤⼾关闭窗⼝” 也是⼀个事件。每个事件都会发出⼀个信号,例如⽤⼾点击按钮会发出 “按钮被点击” 的信号&…

基于数据挖掘的斗鱼直播数据可视化分析系统

温馨提示:文末有 CSDN 平台官方提供的学长 QQ 名片 :) 1. 项目简介 随着网络直播平台的兴起,斗鱼直播作为其中的佼佼者,吸引了大量用户和观众。为了更好地理解和分析斗鱼直播中的数据,本项目介绍了一个基于数据挖掘的斗鱼直播数据…

openjudge_2.5基本算法之搜索_200:Solitaire

题目 200:Solitaire 总时间限制: 5000ms 单个测试点时间限制: 1000ms 内存限制: 65536kB 描述 Solitaire is a game played on a chessboard 8x8. The rows and columns of the chessboard are numbered from 1 to 8, from the top to the bottom and from left to right resp…