这篇博文是一份来源于实战经验的深入解析,主要展现了MySQL的体系结构、存储引擎以及如何在Linux上安装MySQL的步骤。文章首先深入剖析了MySQL的体系结构,接着介绍了MySQL的存储引擎并详细列举了InnoDB,MyISAM和Memory三种引擎的特点。随后,文章引导读者如何根据实际需求来选择合适的存储引擎。文章的后半部分主要集中讲解了在Linux系统上安装MySQL的全过程,包括远程连接Linux系统、下载和上传MySQL安装包、解压安装包以及如何启动MySQL等。每一部分都有详尽的解释和对应的示意图,使操作过程变得更加清晰。这篇文章无疑为正在学习或使用MySQL的用户提供了一份宝贵的实践指南。
一、MySQL体系结构
结构图
二、存储引擎介绍
层级描述
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表而不是基于库的,所以存储引擎也可以被称为表引擎。
默认存储引擎是InnoDB。
相关操作:
代码如下(示例):
-- 查询建表语句 show create table account; -- 建表时指定存储引擎 CREATE TABLE 表名( ... ) ENGINE=INNODB; -- 查看当前数据库支持的存储引擎 show engines;
三、InnoDB 存储引擎简介
知识点:
查看 Mysql 变量:
show variables like ‘innodb_file_per_table’;
从idb文件提取表结构数据:
(在cmd运行)
ibd2sdi xxx.ibd
InnoDB 逻辑存储结构:
四、MyISAM 存储引擎简介
五、Memory 存储引擎简介
六、存储引擎特点
注:重点内容,面试常考点
七、存储引擎的选择
InnoDB: 如果应用对事物的完整性有比较高的要求,在并发条件下要求数据的一致性,数据操作除了插入和查询之外,还包含很多的更新、删除操作,则 InnoDB 是比较合适的选择
MyISAM: 如果应用是以读操作和插入操作为主,只有很少的更新和删除操作,并且对事务的完整性、并发性要求不高,那这个存储引擎是非常合适的。
Memory: 将所有数据保存在内存中,访问速度快,通常用于临时表及缓存。Memory 的缺陷是对表的大小有限制,太大的表无法缓存在内存中,而且无法保障数据的安全性
电商中的足迹和评论适合使用 MyISAM 引擎,缓存适合使用 Memory 引擎。
八、Linux系统上安装MySQL数据库
1.用FinalShell远程连接Linux系统
前置需求:用vmware虚拟机创立一个Linux系统的计算机,用FinalShell远程连接了Linux系统。要在Linux上安装MySQL
可参考博主文章:Linux操作系统第一章(Linux操作系统的带入,vmware-17虚拟化软件运用,FinalShell远程连接Linux )
2.下载Linux版的MySQL安装包
3.上传MySQL安装包
4.解压MySQL安装包
创建mysql文件夹 mkdir mysql
切换到mysql文件夹下 cd mysql
解压MySQL tar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -c mysql 解压倒mysql
5.安装MySQL安装包
6.启动MySQL
7.查看MySQL随机产生的密码
[root@cq03 mysql]# grep ‘password’ /var/log/mysqld.log
8.修改密码
9.远程访问