hello大家好,失踪人口回归,今天开始新专栏MySQL:从零开始练级,今天给大家分享MySQL的环境安装与基础认识,希望大家能有所学习收获。
目录
1️⃣ Centos 7环境下安装
2️⃣什么是数据库
3️⃣服务器、数据库、表关系
4️⃣MySQL架构
5️⃣SQL分类
6️⃣存储引擎
1️⃣ Centos 7环境下安装
- 首先查看自己Linux系统。
cat /etc/redhat-release
- 进⼊ http://repo.mysql.com/, 找⼀下和⾃⼰版本⼀致的资源。
- 下载到本地后,上传到Linux服务器中。
- 安装软件包。
rpm -ivh mysql57-community-release-el7_.rpm
- 对比安装前后的yum源。
ls /etc/yum.repos.d/ -l
- 安装mysql服务。
sudo yum install -y mysql-community-server
- 检验是否安装成功?
which mysql which mysqld ls /etc/my.cnf
mysql是mysql的客户端,mysqld是服务端,my.cnf是配置文件。
- 启动mysql。
systemctl start mysqld.service
- 查看启动服务。
ps axj |grep mysqld
2️⃣什么是数据库
存储数据用文件就可以了,为什么还要弄个数据库?
文件保存数据有以下几个缺点:
- 文件的安全性问题
- 文件不利于数据查询和管理
- 文件不利于存储海量数据
- 文件在程序中控制不方便
数据库存储介质:
- 磁盘
- 内存
为了解决上述问题,专家们设计出更加利于管理数据的东西—— 数据库,它能更有效的管理数据。 数据 库的水平是衡量一个程序员水平的重要指标 。
数据库(DB)是长期存储在计算机内、有组织的、可共享的大量数据的集合。
基本特征:
-
数据按一定的数据模型组织、描述和储存
-
可为各种用户共享、冗余度较小、易扩展
-
数据独立性较高
3️⃣服务器、数据库、表关系
- 所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
- 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。
- 数据库服务器、数据库和表的关系如下:
4️⃣MySQL架构
MySQL架构分为四层:连接层、核心服务层、存储引擎层、数据存储层。
- 连接层:负责与 MySQL 客户端之间的通信,提供如连接处理,身份验证等功能。
- 核心服务层:在 MySQL 数据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断, sql解析,行计划优化, query cache 的处理以及所有内置的函数,存储过程,触发器,视图等功能。
- 存储引擎层:底层数据存取操作实现部分,由多种存储引擎共同组成。它们负责存储和获取所有存储在 MySQL 中的数据。
- 数据存储层:将数据存储在运行于裸设备的文件系统之上,存储引擎将数据的读写功能提交到数据存储层,由它来跟文件系统交互完成数据读写。
5️⃣SQL分类
- DDL【data definition language】 数据定义语言,用来维护存储数据的结构。 代表指令: create, drop, alter
- DML【data manipulation language】 数据操纵语言,用来对数据进行操作。 代表指令: insert,delete,update DML中又单独分了一个DQL,数据查询语言,代表指令: select
- DCL【Data Control Language】 数据控制语言,主要负责权限管理和事务。 代表指令: grant,revoke,commit
6️⃣存储引擎
存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
MySQL的核心就是插件式存储引擎,支持多种存储引擎。
查看存储引擎:
show engines;
存储引擎对比图:
文末结语:本文开始新系列:MySQL的持续更新,该篇讲述Centos 7下mysqld服务的环境安装,并且简单介绍数据库及其与服务器、表之间的关系,并且给出架构图便于让大家有一个宏观的认识,最后简单介绍下SQL和存储引擎的类别。希望大家能从本文中有所收获,感谢观看!