摘要:
二进制日志 记录已提交事务导致数据改变或潜在导致数据改变的SQL语句,通过“重放”日志文件中的事件来生成数据副本,不依赖存储引擎类型。 开启二进制日志,默认是关闭的,二进制日志和数据分开存放 开启记录二进制文件的功能: 在my.cnf的[mysqld]下加入 log_bin[=/path/somef 阅读全文
摘要:
SQL命令历史 记录了在MySQL中执行的命令历史 事务日志 transaction log:事务型存储引擎自行管理和使用 在一个事务提交后还没有存到磁盘的情况下会记录到事务日志,这个时候如果系统断电,再次开机后会自动将已提交的事务重做(redo log)写入磁盘;如果事务还没有提交的情况下断电重启 阅读全文
摘要:
函数 函数,就是将一段代码封装到一个结构中,在需要执行该段代码的时候,直接调用该结构(函数)执行即可。此操作,实现了代码的复用。在 MySQL 中,函数有两种,分别为:系统函数和自定义函数。 1、系统函数 顾名思义,系统函数就是系统定义好的函数,在需要的时候,我们直接调用即可。 任何函数都有返回值( 阅读全文
摘要:
变量 在 MySQL 数据库中,变量有两种,分别为:系统变量和自定义变量。 根据变量的作用范围,又分为: 会话级别变量:仅对当前客户端当次连接有效; 全局级别变量:对所有客户端的任一次连接都有效。 服务器变量还可分为动态变量和非动态变量,动态变量可以在服务器不重启的情况下修改 注意:其中有些参数支持 阅读全文
摘要:
事务Transactions 通过前面的案例及解决方案,我们就引出了一个全新的概念,那就是:事务,即一系列将要发生或正在发生的连续操作; 而事务安全,是一种保护连续操作同时实现(完成)的机制。事务安全的意义就是,保证数据操作的完整性。 遵循ACID原则: A:atomicity原子性;整个事务中的 阅读全文
摘要:
索引 索引是特殊数据结构:定义在查找时作为查找条件的字段,索引实现在存储引擎。 索引可以降低服务需要扫描的数据量,减少了IO次数 索引可以帮助服务器避免排序和使用临时表 索引可以帮助将随机I/O转为顺序I/O 但是占用额外空间,影响插入速度 索引类型 B + Tree 索引:顺序存储,每一个叶子 阅读全文
摘要:
触发器 触发器:trigger,是指事先为某张表绑定一段代码,当表中的某些内容发生改变(增、删、改)的时候,系统会自动触发代码并执行。 触发器包含三个要素,分别为 每张表只能拥有一种触发时间的一种事件类型的触发器,即每张表最多可以拥有 6 种触发器;即:BEFORE INSERT、BEFORE UP 阅读全文
摘要:
MySQL架构 存储过程 存储过程把经常使用的SQL语句或业务逻辑封装起来,预编译保存在数据库中,当需要时从数据库中直接调用,省去了编译的过程。提高了运行速度同时降低网络数据传输量 存储过程:存储过程保存在mysql.proc表中 创建存储过程 CREATE PROCEDURE sp_name ([ 阅读全文