1.mysql的2种连接方式
TCP/IP 方式(远程 本地):
mysql -uroot -ppassword -h 10.0.0.51 -P3306
Socket方式(仅本地):
mysql -uroot -ppassword -s /tmp/mysql.sock
2.关于实例
实例=Mysqld + Master Thread + 干活的Thread + 预分配的内存结构
实例:MySQL数据库由后台线程及一个共享内存区组成,数据库实例才是真正用于操作数据库文件
的程序集,是一个动态概念。
在MySQL中实例和数据库的关系通常是一一对应的,即一个实例对应一个数据库,但是现在越来越
多的场景使用多实例,也就是一个数据库被多个数据库实例使用多情况。
Mysql被设计成一个单进程多线程架构的数据库,所以在操作系统上表现就是一个进程。
3.结构化的查询语言
DQL 数据查询语言
DDL 数据定义语言
DML 数据操作语言
DCL 数据控制语言
4.mysqld的三层

5.mysql的逻辑存储结构
库
表
6.mysql的物理存储结构
库 以文件夹的形式存在
我们尝试在mysql的目录中新建一个文件夹如testfolder,此时我们在showdatabases 可以发现了
多了一个testfolder的库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| testfolder |
+--------------------+
5 rows in set (0.01 sec)
表
MyISAM (慢慢被淘汰)
比如 user表,一共是一个3个文件来存储这张表的信息
user.frm 存储表的结构(列 列属性)
user.MYD 存储数据记录
user.MYI 存储索引
InnoDB(默认存储类型)
比如 timezone表
time_zone.frm 存储表的结构(列 列属性)
time_zone.ibd 存储的数据记录和索引
除了上面2个文件外,还有一个ibdata1文件 用来存储数据字典信息(元数据,数据库启动时自动收集关于这张表的属性)
7.InnoDB 段 区 页
上面提到的ibd文件,在mysql使用它的时候,会类似于格式化的方式(用存储引擎格式化)使用
,格式化后的idb文件的每个块(page)的大小是16KB,一般来说当写入行数据时一次会向系统申
请64个页,即一兆的空间,这个一兆的文件又会被称为区。mysql的表根据存储需求,会有多个区
构成,我们又把表称之为一个段
一般情况下 (非分区表)
一个表就是一个段
一个段由多个区构成
一个区包含64个连续的16K的页也就是1M大小
也可以包含32个连续的32K的页大小还是1M
浙公网安备 33010602011771号