MySQL学习记录 —— 이십일 MySQL服务器文件系统(1)

news2024/9/23 3:24:35

文章目录

  • 1、配置和默认值
  • 2、系统变量和选项
    • 1、介绍
    • 2、常用选项
    • 3、如何使用系统变量
  • 3、常用服务器配置
  • 4、查看状态变量
  • 5、MySQL数据目录


mysql的服务端就是mysqld,d就是daemon,守护进程的意思。

配置文件中[mysqld]部分时服务器支持的启动选项。服务器的部分系统变量可以被修改,反映启动选项的当前状态;状态变量不可修改,这些变量包含了有关运行时操作的计数器和统计信息。

1、配置和默认值

查看服务器的默认选项和系统变量值

mysqld --verbose --help

下面是连接到MySQL后才能执行的SQL语句。

服务器运行时系统变量的值:

 SHOW VARIABLES;
 # 具体的某个变量
 SHOW VARIABLES like 'tmpdir';
 # 或者用通配符也可以查询
 SHOW VARIABLES like '%tmp%'; 

查看服务器在运行时的一些统计和状态指示器

SHOW STATUS;

系统变量和状态信息也可以用 mysqladmin命令来查看,以下两个命令都行。

mysqladmin variables
mysqladmin extended-status

这些也可以查看官方文档

MySQL 8.4

官方文档给的表的表头:

在这里插入图片描述

除去name外,依次表示是否支持命令行,是否支持选项文件,是否是系统变量,是否是状态变量,作用域,是否可以动态设置( 即运行时设置 )。

注意:系统变量、状态变量的作用域分为:Global (全局),Session (当前会话或连接),或 两者都支持。全局是指所有客户端都生效,当前会话是指某个客户端生效。

2、系统变量和选项

1、介绍

为确保服务器每次运行时都使用相同的选项,最好的办法是在选项文件指定相应的启动选项。mysqld从选项文件的[mysqld]和[server]部分读取选项。

对于mysqld的启动脚本,官方说明:

在这里插入图片描述

服务器的启动选项最详细的说明就是在官方文档

MySQL 8.4

也可以直接用bash命令查看选项和系统变量

mysqld --verbose --help

启动mysql后下面的命令只显示系统变量

SHOW VARIABLES;

2、常用选项

在这里插入图片描述

latin1字符集不能保存中文。服务器的默认排序中,0900表示unicode的版本9,ai表示口音敏感,ci表示大小写不敏感,另外的看官方文档。MySQL 8.4

在这里插入图片描述

general-log-file通常要指定绝对路径。slow-query-log-file和log-error也是如此。

在这里插入图片描述

max-connections可以理解为MySQL服务器支持的最大并发数。

3、如何使用系统变量

通过系统变量来改变服务器的一些配置。比如缓冲区,最大数据包大小。

设置系统变量时,破折号和下划线可以互换使用,比如–general_log=ON和–general-log=ON是等价的。

当使用选项设置⼀个数值的变量时,可以带有后缀 K 、 M 或 G (大小写不限)表示 1024 、1024^2 或 1024^3 ;从MySQL 8.0.14 开始,后缀也可以用 T 、 P 和 E 来表示 1024^4 、1024^5 或 1024^6。

在这里插入图片描述

系统变量有两个作用域,全局global和会话session,全局影响服务器的整体操作,会话影响各个客户端连接的操作。全局变量的初始值是默认值或者选项指定的值,会话变量的初始值是全局变量的值或者自己设置的值。

大部分系统变量是动态的,在服务器运行时通过SET来调整,需要指定作用域(也可以在前面加上@@修饰符),然后指定系统变量的名称,名称必须使用下划线而不是破折号。

SET GLOBAL max_connections = 1000;
SET @@GLOBAL.max_connections = 1000;

要指定作用域的原因是因为系统变量的作用域不是一样的,有仅全局有仅会话,也有都包含的。另外系统变量名称也必须写对,否则查不到。

将全局系统变量持久化到mysqld-auto.cnf文件,同时设置运行时值:

SET PERSIST max_connections = 1000;
SET @@PERSIST.max_connections = 1000;

不同时设置:

SET PERSIST_ONLY max_connections = 1000;
SET @@PERSIST_ONLY.max_connections = 1000;

Linux和Unix系统读取的选项文件,从上到下,读取顺序从先到后,优先级从低到高。
在这里插入图片描述

最后一行这个文件默认不存在,只能在执行SET PERSIST之后自动生成。

删除持久化的系统变量:

RESET PERSIST IF EXISTS system_var_name;

设置会话的系统变量,时区为"+8:00":

SET SESSION time_zone='+8:00';
SET @@SESSION.time_zone='+8:00';
SET @@time_zone='+8:00';

default-time-zone则是选项文件中配置的,不是系统变量。

后缀KM这些,不能在SET语句中使用。

SQL语句SHOW VARIABLES查看所有系统,再加上like来找到具体的某个变量,也可以用通配符。

在这里插入图片描述

一部分系统变量是内置的,也有一些需要通过安装服务器插件或组件才可以使用。比如用于审计插件 audit_log 实现了名为 audit_log_policy 的系统变量;错误日志过滤组件 log_filter_dragnet 实现了名为log_error_filter_rules 的系统变量。

8.4版本可以动态设置的系统变量:MySQL 8.4

3、常用服务器配置

在这里插入图片描述

每个部分都要隔几个空行,最后光标停留一个空行上。

[client]

default-character-set=utf8mb4



[mysqld]

# MySQL 服务启动后监听的端口号
port=3306

# MySQL 服务器的字符集与排序规则
character_set_server=utf8mb4
collation_server=utf8mb4_general_ci

# 新建表时使用的存储引擎
default_storage_endgine=INNODB

# 时区
default-time-zone='+8:00'

图中剩余的部分是自带的文件路径。

4、查看状态变量

SHOW [GLOBAL | SESSION] STATUS [like status_name];

5、MySQL数据目录

MySQL 服务器的管理信息、业务数据、日志文件、磁盘缓冲文件默认存储在数据目录下,是MySQL工作时主要操作的目录,最重要的目录之一。

管理的信息包含用户名和密码,用户的授权,系统变量默认值,维护的库和表。业务数据包含用户创建的库和表以及表中的数据。

数据目录在/var/lib/mysql目录,通过选项datadir修改。

在这里插入图片描述

binlog是二进制日志文件;所有的.pem文件是自动生成的SSL和RSA证书和密钥文件;随后的两个#开头的文件是双写缓冲区文件;ib_buffer_pool缓存了内存池中的数据,ibdata1是表空间相关的文件;接着的两个蓝体字的文件是保存重做日志的日志文件;mysql,performance_schema,sys是系统级别的库;mysql.ibd是系统级别的管理信息;最后两个undo是撤销表空间,保存撤销日志的文件。如果有动态设置的系统变量,还会有一个mysqld-auto.cnf文件来保存系统变量。

结束。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

某航空制造业集团IT信息化总体规划方案

获取完整方案见下图 更多有关华为研发管理/IPD、MBSE、PLM、ERP、MES、数据治理、数字样机等方面免费解决方案、资料获取,请见下图

开放式耳机哪个品牌好?开放式耳机实用推荐

开放式耳机是一种耳机类型,其外壳是开放的,发声单元的背面和外界相通。这种耳机的外壳上通常有许多小孔或者直接能够看到内部的发声单元。 而且开放式耳机几乎摒弃了传统耳机几乎所有缺点!! ❌有线耳机:运动的时候特别…

如何走出低能量状态?

晚上好。 每个人都难免会有状态不佳的时候。可能是遭受压力,可能是事情不顺,也可能无缘无故、突然就陷入情绪的低谷之中。 这时,我们很容易感到精力不济,无精打采,明明有许多事情要做和想做,但总是提不起精…

宠物空气净化器哪款品牌好?口碑好的猫用空气净化器排名

猫咪每年掉毛两次,一次掉半年的现象真让人头疼。作为一位5年资深铲屎官,特别是在掉毛季节,猫毛无处不在,对此深有体会。宠物空气净化器已成为铲屎官们的救星,能迅速清理家中的宠物毛发和异味,是养猫家庭的必…

RK3568平台(环境篇)windon与ubuntu之间文件互传

一.windon与ubuntu共享文件夹 打开设置: 点击选项,共享文件夹 共享文件夹,就是在电脑的固定盘符下面,找一个文件夹为Windows和Linux都能看得见的共用的看得见的文件夹,点击添加文件夹。 点击确定后在ubuntu添加共享文…

python 获取Shopee虾皮商家店铺商品列表 虾皮api数据采集

此api接口可用于获取虾皮平台商家店铺的商品列表,目前land参数支持id、vn、my、th、sg、ph、tw(印尼、越南、马来、泰国、新加坡、菲律宾、台湾)。 若有需要,请点击文末链接联系我们。 详细采集页面如下https://shopee.tw/yuesh…

【快速逆向一/无过程/有源码】《大学》在线投稿系统

逆向日期:2024.07.18 使用工具:Node.js 加密工具:Crypto-js标准库 文章全程已做去敏处理!!! 【需要做的可联系我】 【点赞 收藏 关注 】仅供学习,仅供学习, 本文为快速逆向&#x…

IC测试:Shmooing, Shmoo测试, Shmoo图

Shmoo测试/Shmooing 在半导体测试中,Shmooing是一种测试技术,通过扫描一个范围内的测试条件参数来查看正在运行的被测器件,就像它在现实世界中的表现一样。 测试的参数类型取决于IC的目的和类型以及环境。至少绘制了两个参数。(…

鸿蒙仓颉语言【基础-数据类型dataType】

数据类型 仓颉编程&#xff08;CangjieLang&#xff09;是强类型语言,变量和函数参数都需要显式声明类型&#xff0c;例如&#xff1a; public let growable: Bool false public func get(value: Array<Byte>): Int64。基础数据类型 仓颉&#xff08;CangjieLang&…

生命周期的妙用——Vue3

Vue3的生命周期 从Vue2到Vue3&#x1f47e;不只onMounted又见keep-alive主要属性被你包裹应用场景 ) 从Vue2到Vue3&#x1f47e; Vue 3 保留了大多数 Vue 2 的生命周期钩子&#xff0c;同时引入了组合 API 中的生命周期钩子。以下是 Vue 3 中的生命周期钩子&#xff1a; 不…

R语言进行集成学习算法:随机森林

# 10.4 集成学习及随机森林 # 导入car数据集 car <- read.table("data/car.data",sep ",") # 对变量重命名 colnames(car) <- c("buy","main","doors","capacity","lug_boot","safety"…

linux下JDK的安装

前言&#xff1a; 安装部署java开发的代码都需要java环境&#xff0c;这里记录下linux下JDK的安装过程&#xff0c;仅供学习参考。 JDK的下载 下载地址&#xff1a;https://www.oracle.com/java/technologies/downloads 选择和操作系统匹配的版本进行下载 查看操作系统&…

记录些MySQL题集(11)

MySQL 组提交原理 MySQL 中事务的两阶段提交保证了 redo log 与 binlog 两种日志文件的数据一致性&#xff0c;但是并发事务场景下还需要保证事务顺序的一致性&#xff0c;因此通过组提交机制在保证顺序一致性的前提下提高写入效率。因此组提交是两阶段提交的一部分。 两阶段…

JavaScript基础(十五)

变量&返回值 js中的变量有两种: 局部变量和全局变量 全局变量: 在函数外声明的变量&#xff0c;网页上的所有函数和脚本都能访问它。 局部变量&#xff1a; 在函数内部声明的变量&#xff08;必须使用var&#xff09;&#xff0c;只能在函数内部访问它&#xff0c;我们…

区分C语言中的全局变量和java中的类的变量

该程序运行结果&#xff1a; 原因&#xff1a; new Homework08().count1();中改变的count的值是该对象的count变量&#xff0c; 但是Homework08 t1 new Homework08(); t1.count2(); t1.count2();改变的都是t1变量的count的值 //20224.07.16public class Homework08 {public …

在组件中显示tuku的照片

一、问题 &#xff08;1&#xff09;错误&#xff1a;域名前面一定要加http://要不然会报错 &#xff08;2&#xff09;在使用 defineModel传值时一定要动态绑定&#xff0c;要不然图片不显示 &#xff08;3&#xff09;改完后在商品列表中显示图片信息必须 在显示的图片中取…

ARM体系结构和接口技术(六)KEY按键实验① 按键轮询检测

文章目录 一、按键轮询&#xff08;一&#xff09;分析按键的电路连接1. 按键原理图2. 按键消抖 二、分析芯片手册&#xff08;一&#xff09; GPIO章节&#xff08;二&#xff09;RCC章节 三、代码&#xff08;一&#xff09;key.c&#xff08;二&#xff09;key.h 一、按键轮…

基于python的笔记本电脑购买意愿影响因素分析,包括情感分析和聚类分析

摘要&#xff1a;本论文基于Python大数据视角&#xff0c;旨在分析笔记本电脑购买意愿的影响因素。通过爬取京东网站上的评论数据&#xff0c;使用多种技术和工具进行数据分析和处理。使用requests库爬取了大量的在线评论数据。利用pandas对数据进行清洗、处理和统计&#xff0…

实况:老菜鸟自力更生从零开始重学spring目标是画出一张唬人大图(三、spring启动的入口搭建源码阅读环境)

前情提要&#xff1a;源码下载&编译 速览 设计一个最简单的spring项目spring的入口在哪&#xff1f;怎么启动的&#xff1f;搭建源码阅读环境新建module并添加依赖编写一个微型spring项目&#xff08;配置bean->获取bean->使用bean&#xff09; 不打无准备之仗&…

windows下使用make编译C/C++程序 gcc编译 MinGW编译器

文章目录 1、概要2、编译环境搭建3、创建工程目录结构4、 编写程序4.1 编写头文件4.2 编写源文件 5、编写makefile及相关文件5.1 编写清理编译生成文件的批处理文件&#xff0c;供makefile调用5.2 编写makefile文件 6、编译工程6.1 打开命令行6.2 使用make命令编译程序6.3 编译…