mysql 存储过程循环一张表的所有记录_Java小灶之MYSQL-01

逻辑架构图:

4c25bd6f05d265d588141add31915714.png

Connects(连接器):

Managerment Service & Utilities(系统管理与控制工具)

SQL Interface (SQL 接口)

Pareser(解析器):进行sql语句的解析

select * from t1;

进行语法分析,是否符合 标准SQL的语法,MySQL现在是基于SQL92的标准,并检查语法的正确性,如果语法错误,就会抛出sql错误。

Optimizer(查询优化器)

MySQL回家程序员编写的sql语句进行优化,优化内容:

1.索引优化

2.多表关联的优化

3.筛选条件的优化,where 从左到右 MySQL 找过滤力度大的 先执行

Cache与Buffer:

查询缓存,MySQL的查询缓存是基于sql 语句的hash的唯一性作为key来进行结果的缓存。

Pluggable Storage Engines(存储引擎):

MySQL的存储引擎是以表为单位,可以单独指定表存储引擎的方式。

其中在5.5之前默认的存储引擎为myisam,5.5之后默认的存储引擎为innodb

myisam存储速度快,但是不支持事务不支持行级锁

innodb:支持事务和行级锁定,事务处 理、回滚、崩溃修复能力和多版本并发控制的事务安全,比 MyISAM处理速度稍慢、支持外键

题外音:

xtraDB存储引擎是由Percona公司提供的存储引擎,该公司还出品了Percona Server这个产品,它是基 于MySQL开源代码进行修改之后的产品。 阿里对于Percona Server服务器进行修改,衍生了自己的数据库(alisql)。

Innodb与Myisam的区别:

b59236e883f46a100d9e931ba8be3b41.png

MYSQL执行流程:

e21aec28a4b37b3f563a2427130994d7.png

MYSQL日志文件:

1.错误日志(error log):默认是开启的,而且从5.5.7以后无法关闭错误日志,错误日志记录了运行过程中遇到的所有严重的错误 信息,以及 MySQL每次启动和关闭的详细信息

2.二进制日志(bin log):

记录数据变化

binlog记录了数据库所有的ddl语句和dml语句,但不包括select语句内容,语句以事件的形式保存,描 述了数据的变更顺序,binlog还包括了每个更新语句的执行时间信息。如果是DDL语句,则直接记录到 binlog日志,而DML语句,必须通过事务提交才能记录到binlog日志中。 生产中开启(主要为了数据备份、恢复、主从)

通用查询日志(general query log):

会记录和MySQL有关的所有操作,生产环境不要开启。

慢查询日志(slow query log)

SQL调优 定位慢的 select

默认是关闭的。

#开启慢查询日志 
slow_query_log=ON 
#慢查询的阈值 long_query_time=3 
#日志记录文件如果没有给出file_name值, 默认为主机名,后缀为-slow.log。如果给出了文件名,但不 是绝对路径名,文件则写入数据目录。 
slow_query_log_file=file_name

重做日志(redo log)

回滚日志(undo log)

中继日志(relay log)

b4625abb98a434ec94685d79aaa3008a.png
#看日志开启情况
show variables like 'log_%';

数据文件:

SHOW VARIABLES LIKE '%datadir%';

InnoDB文件:

.frm文件:主要存放与表相关的数据信息,主要包括表结构的定义信息

.ibd:使用独享表空间存储表数据和索引信息,一张表对应一个ibd文件。

.ibdata文件:使用共享表空间存储表数据和索引信息,所有表共同使用一个或者多个ibdata文 件

MyIsam数据文件

.frm文件:主要存放与表相关的数据信息,主要包括表结构的定义信息

.myd文件:主要用来存储表数据信息。

.myi文件:主要用来存储表数据文件中任何索引的数据树

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值