视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MySQL的原理,安装和基本使用
2020-11-09 11:56:16 责编:小采
文档


词法分析器:将用户的命令进行切片,一个词一个词用空格隔开,获得用户要查询的表,内容,用户的权限等5.优化:执行路径的选择,生

mysql执行流程:

mysql是一个单进程的服务,对于每一个请求都是用线程来响应的,这就需要一个连接器来处理新用户的请求,响应,销毁


1.客户端请求,服务器端(连接器)开辟线程响应用户

2.用户发起SQL语句查询数据库

3.查询缓存:记录用户的SQL查询语句,如果再次查询同样内容,就返回缓存

4.如果缓存没有进入分析器:(分析器也可能借签缓存)

语法分析器:用户命令语法是否正确

词法分析器:将用户的命令进行切片,一个词一个词用空格隔开,获得用户要查询的表,内容,用户的权限等

5.优化:执行路径的选择,生成执行树

每个SQL语句都有很多执行路径,优化的目的就是在这些执行路径里选择一个最优的执行路径

6.存储引擎:用于管理存储在文件系统,甚至是裸设备上的数据管理程序,它本身给上层应用提供不同的管理,有的支持事务,有的不支持事务。


#查询缓存可以大大加速这个过程,不过缓存本身可能带来劣势,假如一个用户要查询一个数据,正好缓存里有,而在之前,这条数据刚刚被修改过那么返回的缓存结果就是过时的。


MYSQL的结构:


客户端:mysql

连接器: NativeC API 本地C语言接口

JDBCJAVA的数据库连接器

ODBC开放式数据库互联,非常底层 Oracle,SOLServer都支持

连接池(conetcionpool):它的后方是MYSQL的真正功能

SQL接口:用户通过sql客户端发过来的命令,由sql接口接收

DML数据操作语言:查询,修改,升级数据等

DDL数据定义语言:创建一个新的数据库,新的索引,删除一个用户等

存储过程视图触发器


Parser:分析器

查询 事务 对象权限

optimizer:访问路径

生成执行树


caches&buffers:缓存和缓存

优化里最重要的是缓存的优化


pluggablestroage engines存储引擎(插件式):将逻辑结构转换为物理结构的程序

ManagementServices & Utilites工具:备份,恢复,,安全,移植,集群等,这些工具一般和文件系统打交道,不需要和mysql-server打交道,它们对应的都是命令。

数据库对象:(逻辑)

表,二维关系

索引

视图

触发器

存储过程

存储函数

事件調读器

游标

用户


物理

文件


将数据库对象和物理对象对应起来就是存储引擎

Mysql

*插件式的存储引擎


mysql与mysql的连接方式:tcp,socket,pipe,memory


mysql的交互方式:interact batch


SQL

结构化查询语言

bash

select,update,create,drop


Mysql安装

版本选择:

GA

RC

beta

alpha


在以后的使用过程中,RPM包很方便,但是会带来各种问题,所以尽量使用编译安装甚至是LFS

Mysql-client

Mysql-devel:编译安装软件包,需要用到Mysql的时候才安装这个软件包

Mysql-embedded: mysq嵌入式

Mysql-ndb-management

Mysql-server

Mysql-shared:可能被客户端或者服务器端的某些工具用到

Mysql-shared-compat

Mysql-test:测试Mysql,提供测试组件


一般来讲,完全的MYSQL只需要安装clientdevel share server


安装目录的作用

bin

data默认情况下将数据和索引存放的目录

inclued

lib

man

mysql-test

scripts安装时的初始化脚本

share某种特定语言的错误信息的,信息原始文件存放

sql-bench压力测试工具

support-file提供一些初始化的文件和脚本

下载本文
显示全文
专题