概述
本章,您将学习 MySQL 中有关日志管理方面的内容。
日志分类
MySQL 中,日志被划分为 2 大类 7 种日志:
服务层面的日志,主要有:
错误日志(Error log) - 记录 MySQL 实例启动、停止以及运行过程中的错误等方面的日志。默认开启,无法关闭
常规查询日志(General query log) - 记录当客户端连...
概述
本章,您将学习 MySQL 中的用户管理,用户管理涉及到用户的创建、权限的分配、修改和删除等操作。
在前面 《10-A3-排错与后续操作》 文章中,我们创建了一个用户:
# 创建用户并设置密码
create user 'jimcat8'@'%' identified by 'RockyStar...
概述
本章,您将学习 MySQL 中的触发器。
由前文有关事件调度器的文章可知,事件调度器 是基于时间触发的定时任务,MySQL 中还是有一种基于 DML (update、insert、delete)触发的自动任务,被称为 触发器(Trigger)。
两者对比如下:
项
作用
触发因素
事件调度器
周期性地运行数据库对象
时间
触...
概述
本章,您将学习 MySQL 中的事件调度器。
事件(event):由一组 SQL 语句集合组成,主要的作用是周期性运行数据库对象,用来实现 MySQL 的计划任务。事件通过事件调度器线程来执行,因此事件有时也被称为 "事件调度器(event scheduler)"。
众所周知,GNU/Linux 可通过 cron 程序的 ...
概述
本章,您将了解 MySQL 中的游标。
游标(也称光标):一种用于在存储过程、存储函数或触发器中逐行处理查询结果集的临时数据库对象,其类似编程语言当中的指针,都是用来定位和遍历数据。
不同的 RDBMS 中,游标的语法以及使用位置都略有不同,在 MySQL 中,游标只能存在于用于存储过程、存储函数以及触发器的 begin...end 代码块中...
概述
本章,您将学习 MySQL 当中的流程控制。流程控制用来实现条件判断和循环逻辑,主要用在 MySQL 的存储过程、存储函数、触发器中。
流程控制主要包括三类:
分支结构
循环结构
跳转控制
分支结构
if 函数
基本语法为:
if(表达式, 值1, 值2)
当表达式为真,则输出 值1,当表达式为假,则输出 值2
一个简单的例子:
sele...
概述
本章,您将学习 MySQL 当中的存储过程与存储函数。
函数:为了要实现某个功能,用代码块封装成对外暴露名称且可以被调用的一个基本构造单元。当使用者需要使用函数时,直接调用函数名称并传递参数即可,不用关心具体的代码实现。
存储例程(Stored Routine):MySQL 官方文档中,将存储过程和存储函数统一称为存储例程。
管理存储过程
存...
概述
本章,你将学习 MySQL 中有关变量的知识。
变量:变量是计算机内存中的一块区域,用于存储可变化的数据,并通过名称进行标识。
在 Bash 中,变量可划分为:
用户自定义变量 - 常用变量。变量的名称、变量的值、变量的类型都可以被改变。
环境变量 - 保存的是和系统操作环境相关的数据。默认环境变量的名称不能更改,但可修改其值。除了这些,用...
概述
本章,您将学习 MySQL 中的视图。
视图(View):MySQL 中的虚拟表,其内容由 DQL 组成。视图本身不实际存储数据,而是随一个或多个基础表(或视图)的查询结果动态生成数据。
视图的主要特性有:
虚拟性 - 不实际存储数据,仅保存定义视图的 SQL 查询语句
动态性 - 视图的数据会随基表数据的变化而自动更新。当基表中的数据被修...
概述
本章,您将学习 MySQL 中的 TCL(Transaction Control Language,事务控制语言)
TCL 的内容包括:
了解存储引擎
事务的特性(ACID)
事务分类
事务基础使用与特性控制
事务并发产生的问题
隔离级别
事务也涉及到底层的各种锁机制,但这部分的内容很多,需要单独再书写一章的内容。
事务(Transact...