Mysql技术内幕InnoDB存储引擎读书笔记--《一》Mysql体系结构和存储引擎

1.1定义数据库和实例

  • 数据库:物理操作系统文件或其他形式文件类型的集合。在Mysql中,数据库文件可以使frm、myd、myi、ibd结尾的文件。当使用NDB存储引擎时,数据库的文件可能不是操作系统的文件,而是存放于内存之中的文件,但是定义仍然不变。
  • 数据库实例:由数据库后台进程/线程以及一个共享内存区组成。共享内存可以被运行的后台进程/线程共享。需要牢记的是,数据库实例才是整整用来操作数据库文件的。

mysql启动实例时,Mysql数据库会去读取配置文件my.cnf根据配置文件的参数来启动数据库实例。

1.2Mysql体系结构、

Msqy由一下几部分组成:

-连接池组件
-管理服务和工具组件
-sql接口组件
-查询分析器组件
-优化器组件
-缓冲(cache)组件
-插件式存储引擎
-物理文件

1.3Mysql表存储引擎

InnoDB存储引擎支持失误,主要面向在线失误处理(OLTP)方面的应用。其特点是行锁设计、支持外键,并支持类似Oracle的非锁定读,即默认情况下读取操作不会产生锁。

对于表中数据的存储,InnoDB存储引擎采用了聚集(clustered)的方式,每张表的存储都按主键的顺序存放,如果没有显示地在表定义时制定主键,Innodb存储引擎会为每一行生成一个6字节的ROWID,并以此作为主键。

MyISAM存储引擎特点是不支持事务、表锁和全文索引。MyISAM存储引擎表由MYD和MYI组成,MYD用来存放数据文件,MYI用来存放索引文件。

对于MyISAM存储引擎表,Mysql数据库只缓存其索引文件,数据文件的缓存交由操作系统本身来完成。

Memory存储引擎,将表中的数据存放在内存中,如果数据库重启或发生崩溃,表中的数据都将消失。类似于内存数据库。

Mysql5.6之后InnoDB也已经支持全文索引。

1.4各种存储引擎之间的比较

通过show engines 命令可查看当前数据库支持的所有引擎。

主要找到MyISAM不支持事务,InnoDB支持事务就可以了。

1.5连接Mysql

select host, user, password from user 可以查用所有的用户权限信息。

如果客户端和Mysql服务端连接不在同一台机器上,那么使用socket连接。如果在同一台机器上,那么在windows下可使用命名管道和共享内存,在linux环境下可使用unix域套接字。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值