MySQL数据库进阶第一篇(存储引擎与Linux系统上安装MySQL数据库)

简介: MySQL数据库进阶第一篇(存储引擎与Linux系统上安装MySQL数据库)

这篇博文是一份来源于实战经验的深入解析,主要展现了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.远程访问


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
2867 4
MySQL源码编译安装
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
2201 4
MySQL二进制包安装
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
1188 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
1209 6
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
10631 0
|
关系型数据库 MySQL Linux
卸载、下载、安装mysql(Linux系统centos7)
卸载、下载、安装mysql(Linux系统centos7)
776 0
|
Linux
手把手教会你安装Linux系统
手把手教会你安装Linux系统
499 0
|
Linux 虚拟化 数据安全/隐私保护
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
|
Ubuntu Linux 网络安全
从头安装Arch Linux系统
本文记录了作者安装Arch Linux系统的过程,包括安装成果展示和遇到的疑难点及其解决方法,如硬盘不足、下载失败、设置时区、安装微码和配置无密码登录等。
940 1
从头安装Arch Linux系统
|
存储 NoSQL Java
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
该博客文章展示了如何在Linux虚拟机上使用Redis和Jedis客户端实现手机验证码的验证功能,包括验证码的生成、存储、验证以及限制每天发送次数的逻辑,并提供了测试结果截图。
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)

推荐镜像

更多