Middleware
共 54 篇文章
Mysql客户端常用工具指令
一,mysql mysql 是 MySQL 数据库的官方命令行客户端工具,用于连接到 MySQL 服务器并执行 SQL 语句、管理数据库和表等操作。以下是它的核心功能和使用方法: 1.1 基本语法 mysql [选项] [数据库名] 1.2 核心功能 连接 MySQL 服务器:通过命令行登录数据库
Mysql系统数据库
information_schema 作用:提供对数据库元数据的访问,如数据库、表、列、索引等信息。 特点: 只读视图:所有数据通过虚拟表(视图)呈现,不可直接修改。 跨引擎兼容:支持InnoDB、MyISAM等多种存储引擎的元数据查询。 常用场景: 查询所有数据库或表的结构:SELECT * FR
InnoDB引擎底层原理
一,逻辑存储结构 逻辑存储结构图 表空间 表空间文件在Linux下存放在 /var/lib/mysql文件中的xxx.ibd文件就是表空间文件,表空间文件用来存储,记录,索引等数据。 段 段分为,数据段(Leaf node segment) ,索引段(Non-leaf node segment),回
Mysql的锁
一,介绍 MySQL的锁机制是保证数据一致性和并发控制的核心组件,尤其在多用户环境下至关重要。 按锁粒度划分 全局锁(Global Lock) 作用:锁定整个数据库实例,确保备份时数据一致性。 表级锁(Table-Level Lock) 特点:锁定整张表,开销小、加锁快,但并发度低。 行级锁(Row
触发器
一,介绍 定义: 触发器是一种与表相关联的特殊存储过程,当特定事件(如INSERT、UPDATE、DELETE)在表上发生时,自动触发执行。它通常用于强制业务规则、维护数据一致性或记录日志。 核心特性: 事件驱动:绑定到表的增、删、改操作。 触发时机:BEFORE(操作前触发)或 AFTER(操作后
存储过程与存储函数
一,介绍 定义: 存储过程是一组预编译的 SQL 语句的集合,存储在数据库中,可通过名称直接调用。它支持参数传递、流程控制(如条件判断、循环)、异常处理等特性,类似于编程语言中的函数。 特点: 预编译:首次执行时编译,后续调用直接复用,提升效率。 代码封装:将复杂逻辑封装为可重复调用的模块。 减少网
视图View
一,视图介绍 定义:视图是一个虚拟表,由一个或多个真实表(基表)的查询结果动态生成。视图本身不存储数据,数据来自基表。 特点: 动态性:视图的数据随基表数据变化自动更新。 逻辑抽象:隐藏底层表结构和复杂性,用户只需操作视图。 权限隔离:可限制用户通过视图访问特定字段或行。 简化操作:封装复杂查询,提
SQL优化
一,Insert优化 1.1 SQL语句优化 批量插入(Bulk Insert) INSERT INTO table (col1, col2) VALUES (v1, v2), (v3, v4), ...; 单次插入多条数据(建议500~2000条/批) 减少网络传输和SQL解析开销 LOAD D
MySql索引
一,概述 索引是帮助MYSQL高效获取数据的有序数据结构 数据库维护着满足特定查找算法的数据结构,这种数据结构以某种方式指向数据。 这样就可以在数据结构上实现高级查找方法,这种数据结构就是索引。 无索引的时候查询数据会进行全表扫描操作 有索引的时候查询数据会进行排序二叉树的数据结构来查找数据 索引的
MySQL存储引擎
一,概述 MySQL体系结构图 Innodb引擎是在mysql的5.5版本之后的默认存储引擎。 Index是在引擎层次的,不同的存储引擎index的用法不同。 存储引擎就是存储数据,建立索引,更新查询数据等技术的实现方式。 存储引擎是基于表的而不是基于数据库的,故存储引擎又叫表的类型 二,语法 查询