DBA Blog

MySQL 数据库课程系列教案与笔记,涵盖从基础部署到高可用架构的完整体系。

DAY01 - MySQL基础入门

基础章节-01-MySQL数据库服务概述部署 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.01 数据库存储服务概述 今时今⽇,数据库系统已经成为各个动态⽹站上 web 应⽤程序的重要组成部分。 由于⾮常敏感和机密的数据有可能保存在数据库中,所以对数据库实施保护就显得尤为重要了。 要从数据库中提取或者存⼊数据,就必须经过连接数据库、发送⼀条合法查询、获取结果、关闭连接等步骤。 ⽬前,能完成这⼀系列动作的最常⽤的查询语⾔是结构化查询语⾔ Structured Quer y Language (SQL)。 并且在对数据库进行管理与维护的过程中,需要对数据库的相关知识进行充分的掌握,最终才能保证企业核心数据的安全性。 1.1.1 数据库知识引入说明 数据信息到底什么? 序号 识别数据方式数据信息 01 人类识别数据账号 密码 图片 视频 数字 文字 特殊符号 地址链接… 02 电脑识别数据二进制数值信息 数据如何进行存储? 可以利用专业的软件程序,将相关的人类识别的数据,转换为电脑可以识别的二进制信息进行存储 其中一些重要的且核心的数据信息,比如网站中的账号和密码数据信息,需要保证数据存储的安全性,提供更大的存储空间,便于管理; 因此,专门管理企业核心数据信息软件应运而生,数据库管理系统程序(软件-DBMS) 最核心数据信息存储:RDBMS-关系型数据库进行存储 次核心数据信息存储:NoSQL-非关系型数据库进行存储 分布型数据信息存储:DDBMS-分布式数据库进行存储(NewSQL) 常见数据库管理系统程序排名:https://db-engines.com/en/ranking 1.1.2 数据库服务概念介绍 数据库(database DB),是一种存储数据的仓库,在实际应用过程具有如下特征: 数据库是根据数据结构组织、存储和管理数据的; 数据库能够长期、高效的管理和存储数据; 数据库的目的就是能够存储(写)和提供(读)数据 1.1.3 数据库服务分类说明 数据库分为三个大的类型:(随着互联网发展的产品类型) 关系型数据库:(属于数据整合时代) 把复杂的数据结构归结为简单的二元关系(RDBMS),即二维表格形式(二维表);会注重数据存储的持久性,但存储效率低; 此类型数据库服务,类似于excel表格的存储数据方式,多采用SQL语言方式进行操作管理; 关系型数据库四层结构信息: 序号 数据库结构 描述说明 01 数据库管理系统(DBMS) 进行数据存储应用管理的操作环境或命令 02 数据库(DB) 数据存储的承载环境 03 数据表(Table) 数据关系的构建环境 04 数据字段(Field) 实际数据信息展现形式 常见的关系数据库应用程序: ...

2026年1月1日 · 27 分钟 · DBA Student

DAY01 - MySQL数据库服务概述与部署

1 | 序号 | 识别数据方式 | 数据信息 | |—|—|—| 1 2 | 01 | 人类识别数据 | 账号 密码 图片 视频 数字 文字 特殊符号 地址链接... | | 02 | 电脑识别数据 | 二进制数值信息 | 基础章节-01-MySQL数据库服务概述部署 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.01 数据库存储服务概述 今时今⽇,数据库系统已经成为各个动态⽹站上 web 应⽤程序的重要组成部分。 由于⾮常敏感和机密的数据有可能保存在数据库中,所以对数据库实施保护就显得尤为重要了。 要从数据库中提取或者存⼊数据,就必须经过连接数据库、发送⼀条合法查询、获取结果、关闭连接等步骤。 ⽬前,能完成这⼀系列动作的最常⽤的查询语⾔是结构化查询语⾔ Structured Quer y Language (SQL)。 并且在对数据库进行管理与维护的过程中,需要对数据库的相关知识进行充分的掌握,最终才能保证企业核心数据的安全性。 1.1.1 数据库知识引入说明 数据信息到底什么? 数据如何进行存储? 可以利用专业的软件程序,将相关的人类识别的数据,转换为电脑可以识别的二进制信息进行存储 其中一些重要的且核心的数据信息,比如网站中的账号和密码数据信息,需要保证数据存储的安全性,提供更大的存储空间,便于管理; 因此,专门管理企业核心数据信息软件应运而生,数据库管理系统程序(软件-DBMS) 最核心数据信息存储:RDBMS-关系型数据库进行存储 次核心数据信息存储:NoSQL-非关系型数据库进行存储 分布型数据信息存储:DDBMS-分布式数据库进行存储(NewSQL) 常见数据库管理系统程序排名:https://db-engines.com/en/ranking 1.1.2 数据库服务概念介绍 数据库(database DB),是一种存储数据的仓库,在实际应用过程具有如下特征: 数据库是根据数据结构组织、存储和管理数据的; 数据库能够长期、高效的管理和存储数据; 数据库的目的就是能够存储(写)和提供(读)数据 ...

2026年1月1日 · 28 分钟 · DBA Student

DAY02 - MySQL安装与配置

基础章节-02-MySQL数据库服务体系结构 1.04 数据库服务体系结构 1.4.1 数据库服务工作模型 数据库服务在实际应用过程中,是采用C/S(客户端/服务端)模型方式进行工作的;并利用socket(套接字)与TCP/IP建立连接通信; 客户端部分: 序号 客户端工具相关软件命令 01 数据库自带客户端命令(管理人员)mysql、mysqladmin、mysqldump 02 第三方软件客户端工具(开发人员)sqlyog、navicat、workbench 03 应用程序客户端连接器(API)pymysql、gomysql、php-mysql、libmysqlclient. jar 服务端部分: 序号 服务端进程备注说明 01 mysqld服务端处理客户端连接请求进程 连接方式: 序号 连接方法备注说明 01 本地方式连接利用socket文件实现本地连接数据库服务(本地unix套接字) 02 远程方式连接利用TCP/IP方式实现远程连接数据库服务(网络socket方式) 1.4.2 数据库服务实例构成 数据库服务实例就是程序运行工作的一种方式,会占用一定的内存资源和CPU资源,并且会派生出多个线程完成不同的任务需求; MySQL实例 = mysqld + master thread监控管理 + 具体干活的thread(IO/SQL/Purge…) + 预分配的内存结构 简单来说:mysql实例就是占用内存资源的统称,利用mysql实例可以对数据进行处理; 实例工作示意图: 课程知识补充:内存结构介绍说明 序号 组成部分 作用说明 第00部分 内核预留内存 主要保证系统正常运行内存空间 第01部分 RSS 常驻内存集(Resident Set Size) 主要提供给进程 线程使用 第02部分 page cache 页缓存部分 最大区域(buffer cache) 主要提供给数据进行缓冲 第03部分 anon page 匿名页部分 最小区域 主要处理中间数据(临时数据) 说明:在系统中运行mysql服务时,会在RSS和page cache内存区域进行预留,提供数据库服务运行和数据存储使用 ...

2026年1月2日 · 4 分钟 · DBA Student

DAY02 - MySQL数据库服务体系结构

1 | 序号 | 客户端工具 | 相关软件命令 | |—|—|—| 1 2 3 4 5 6 | 01 | 数据库自带客户端命令(管理人员) | mysql、mysqladmin、mysqldump | | 02 | 第三方软件客户端工具(开发人员) | sqlyog、navicat、workbench | | 03 | 应用程序客户端连接器(API) | pymysql、gomysql、php-mysql、libmysqlclient. jar | | 序号 | 服务端进程 | 备注说明 | |—|—|—| 1 2 3 4 | 01 | mysqld | 服务端处理客户端连接请求进程 | | 序号 | 连接方法 | 备注说明 | |—|—|—| ...

2026年1月2日 · 4 分钟 · DBA Student

DAY03 - MySQL SQL语句应用

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.05 数据库服务语句应用(基础) 1.5.1 操作管理语言概述介绍 什么是SQL语句? SQL,英文全称为Structured Quer y Language,中文意思是结构化查询语言(属于编程语言); 它是一种对关系数据库中的数据进行定义和操作的语言,是大多数关系数据库管理系统所支持的工业标准语言。 在使用SQL语句时,也会用到几种常用的标准:SQL 89 / SQL 92 /SQL 99 /SQL 03 在企业实际应用过程,还会根据SQL语言操作的方式,细化为四种类型: DDL Data Definition Language(数据定义语言) 概念介绍: 负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 涉及语句: CREATE(创建)、ALTER(修改)、DROP(删除)等; 关注人群: 运维人员和开发人员都要熟悉。 相关具体的DDL负责的操作行为,可以执行以下命令进行查看: DCL Data Control Language(数据控制语言) 概念介绍: 主要用来定义访问权限和安全级别 涉及语句: GRANT(用户授权)、REVOKE(权限回收)、COMMIT(提交)、ROLLBACK(回滚) 关注人群: 运维人员需要熟练 相关具体的DCL负责的操作行为,可以执行以下命令进行查看: DML Data Manipulation Language(数据操作语言) 概念介绍: 主要针对数据库里的表里的数据进行操作,用来定义数据库记录(数据); 涉及语句: SELECT(查)、INSERT(增)、DELETE(删)、UPDATE(改) 关注人群: 开发人员要熟练,运维人员熟悉即可 相关具体的DML负责的操作行为,可以执行以下命令进行查看: 1 2 3 4 mysql> ? Data Definition; -- 查看获取DDL语言的操作行为 mysql> ? Account Management -- 查看获取DCL语言的操作行为 DQL Data Quer y Language(数据查询语言) 概念介绍: 主要用来查询记录(数据) 涉及语句: SELECT(查) 基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块 关注人群: 运维人员和开发人员都要熟悉。 ...

2026年1月3日 · 18 分钟 · DBA Student

DAY03 - MySQL数据类型与表操作

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.05 数据库服务语句应用(基础) 1.5.1 操作管理语言概述介绍 什么是SQL语句? SQL,英文全称为Structured Quer y Language,中文意思是结构化查询语言(属于编程语言); 它是一种对关系数据库中的数据进行定义和操作的语言,是大多数关系数据库管理系统所支持的工业标准语言。 在使用SQL语句时,也会用到几种常用的标准:SQL 89 / SQL 92 /SQL 99 /SQL 03 在企业实际应用过程,还会根据SQL语言操作的方式,细化为四种类型: DDL Data Definition Language(数据定义语言) 概念介绍: 负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 涉及语句: CREATE(创建)、ALTER(修改)、DROP(删除)等; 关注人群: 运维人员和开发人员都要熟悉。 相关具体的DDL负责的操作行为,可以执行以下命令进行查看: 1 2 mysql> ? Data Definition; -- 查看获取DDL语言的操作行为 DCL Data Control Language(数据控制语言) 概念介绍: 主要用来定义访问权限和安全级别 涉及语句: GRANT(用户授权)、REVOKE(权限回收)、COMMIT(提交)、ROLLBACK(回滚) 关注人群: 运维人员需要熟练 相关具体的DCL负责的操作行为,可以执行以下命令进行查看: 1 2 mysql> ? Account Management -- 查看获取DCL语言的操作行为 DML Data Manipulation Language(数据操作语言) 概念介绍: 主要针对数据库里的表里的数据进行操作,用来定义数据库记录(数据); 涉及语句: SELECT(查)、INSERT(增)、DELETE(删)、UPDATE(改) 关注人群: 开发人员要熟练,运维人员熟悉即可 相关具体的DML负责的操作行为,可以执行以下命令进行查看: ...

2026年1月3日 · 17 分钟 · DBA Student

DAY04 - MySQL查询基础

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.06 数据库服务语句应用(实践) 1.6.1 操作管理语言获取帮助 在数据库服务中,SQL语句涉及到的语句非常的多,在实际应用过程中也未必都能记住,因此就需要掌握获取帮助的方法; 1 2 3 4 5 6 7 8 # 获取帮助信息_基本帮助信息 mysql > \h # 获取帮助信息_语句分类帮助 mysql > help contents mysql > ? contents # 获取帮助信息_具体语句帮助 mysql > ? create mysql > ? create database 1.6.2 操作管理语句应用实践(DDL) 利用数据定于语言(DDL),负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 01 数据定义语言对数据库定义 数据库中的库是数据库服务结构中的重要组成部分,一个库就像是一个excel文档,库里含有表,一个表就是一个excel的sheet; 因此,对于数据库管理操作SQL语句命令,属于比较基础的数据库操作能力,需要重点关注; 创建数据库信息: 1 2 3 4 5 6 7 8 9 10 mysql > create database oldboy; mysql > create schema oldboy; -- 创建新的数据库 mysql > create database oldboy character set utf8mb4; mysql > create database oldboy charset utf8 collate utf8_general_mysql500_ci; -- 创建新的数据库,并修改调整默认的字符编码 mysql > show databases; -- 查看是否已经创建好 mysql > show create database oldboy; -- 查看创建库的语句信息 查看数据库信息: ...

2026年1月4日 · 36 分钟 · DBA Student

DAY04 - MySQL索引与存储引擎

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.06 数据库服务语句应用(实践) 1.6.1 操作管理语言获取帮助 在数据库服务中,SQL语句涉及到的语句非常的多,在实际应用过程中也未必都能记住,因此就需要掌握获取帮助的方法; 1.6.2 操作管理语句应用实践(DDL) 利用数据定于语言(DDL),负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 01 数据定义语言对数据库定义 数据库中的库是数据库服务结构中的重要组成部分,一个库就像是一个excel文档,库里含有表,一个表就是一个excel的sheet; 因此,对于数据库管理操作SQL语句命令,属于比较基础的数据库操作能力,需要重点关注; 创建数据库信息: 查看数据库信息: 数据库安装完毕后,默认的数据库说明: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # 获取帮助信息_基本帮助信息 mysql > \h # 获取帮助信息_语句分类帮助 mysql > help contents mysql > ? contents # 获取帮助信息_具体语句帮助 mysql > ? create mysql > ? create database mysql > create database oldboy; mysql > create schema oldboy; -- 创建新的数据库 mysql > create database oldboy character set utf8mb4; mysql > create database oldboy charset utf8 collate utf8_general_mysql500_ci; -- 创建新的数据库,并修改调整默认的字符编码 mysql > show databases; -- 查看是否已经创建好 mysql > show create database oldboy; -- 查看创建库的语句信息 mysql > show databases; -- 查看所有数据库信息 mysql > show databases like '%xiao%'; -- 检索查看指定的数据库信息 mysql > show create database oldboy; -- 查看创建库的语句信息 | 序号 | 数据库名称 | 作用说明 | |—|—|—| ...

2026年1月4日 · 35 分钟 · DBA Student

DAY05 - MySQL高级查询

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.06 数据库服务语句应用(实践) 1.6.1 操作管理语言获取帮助 在数据库服务中,SQL语句涉及到的语句非常的多,在实际应用过程中也未必都能记住,因此就需要掌握获取帮助的方法; 1 2 3 4 5 6 7 8 # 获取帮助信息_基本帮助信息 mysql > \h # 获取帮助信息_语句分类帮助 mysql > help contents mysql > ? contents # 获取帮助信息_具体语句帮助 mysql > ? create mysql > ? create database 1.6.2 操作管理语句应用实践(DDL) 利用数据定于语言(DDL),负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 01 数据定义语言对数据库定义 数据库中的库是数据库服务结构中的重要组成部分,一个库就像是一个excel文档,库里含有表,一个表就是一个excel的sheet; 因此,对于数据库管理操作SQL语句命令,属于比较基础的数据库操作能力,需要重点关注; 创建数据库信息: 1 2 3 4 5 6 7 8 9 10 mysql > create database oldboy; mysql > create schema oldboy; -- 创建新的数据库 mysql > create database oldboy character set utf8mb4; mysql > create database oldboy charset utf8 collate utf8_general_mysql500_ci; -- 创建新的数据库,并修改调整默认的字符编码 mysql > show databases; -- 查看是否已经创建好 mysql > show create database oldboy; -- 查看创建库的语句信息 查看数据库信息: ...

2026年1月5日 · 34 分钟 · DBA Student

DAY05 - MySQL日志管理

基础章节-01-MySQL数据库服务中级课程 1.00 课程知识章节说明 目前在互联网的实际应用中,各个企业都会比较关注自身网站的数据信息,既要保证数据信息的安全性,同时也要保证数据存储读取效率 并且在特殊的场景下,还要对存储的数据信息进行检索和分析;因此数据库服务业务已经在各行各业应用非常的广泛 对于互联网领域的技术人员,对于数据库服务知识的掌握,也将是在求职时必备的技能,有些时候还会绝对入职的定级和薪资水平。 1.06 数据库服务语句应用(实践) 1.6.1 操作管理语言获取帮助 在数据库服务中,SQL语句涉及到的语句非常的多,在实际应用过程中也未必都能记住,因此就需要掌握获取帮助的方法; 1.6.2 操作管理语句应用实践(DDL) 利用数据定于语言(DDL),负责管理数据库的基础数据(不会对表的内容修改),比如增删库、增删表、增删索引、增删用户等; 01 数据定义语言对数据库定义 数据库中的库是数据库服务结构中的重要组成部分,一个库就像是一个excel文档,库里含有表,一个表就是一个excel的sheet; 因此,对于数据库管理操作SQL语句命令,属于比较基础的数据库操作能力,需要重点关注; 创建数据库信息: 查看数据库信息: 数据库安装完毕后,默认的数据库说明: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # 获取帮助信息_基本帮助信息 mysql > \h # 获取帮助信息_语句分类帮助 mysql > help contents mysql > ? contents # 获取帮助信息_具体语句帮助 mysql > ? create mysql > ? create database mysql > create database oldboy; mysql > create schema oldboy; -- 创建新的数据库 mysql > create database oldboy character set utf8mb4; mysql > create database oldboy charset utf8 collate utf8_general_mysql500_ci; -- 创建新的数据库,并修改调整默认的字符编码 mysql > show databases; -- 查看是否已经创建好 mysql > show create database oldboy; -- 查看创建库的语句信息 mysql > show databases; -- 查看所有数据库信息 mysql > show databases like '%xiao%'; -- 检索查看指定的数据库信息 mysql > show create database oldboy; -- 查看创建库的语句信息 | 序号 | 数据库名称 | 作用说明 | |—|—|—| ...

2026年1月5日 · 34 分钟 · DBA Student