思维导图:
对于mysql数据库我们可以先了解其底层:
而在我们查看mysql进程 时常常会发现有个mysqld
所以mysql本质是基于C(mysql)S(mysqld)模式的一种网络服务,(下图展示mysql是网络通信它的连接情况)
所以我们理解数据库服务端mysqld、数据库客户端mysql以及底层文件的关系:
一般的文件确实提供了数据的存储功能,但是文件并没有提供非常好的数据管理能力,(此处若要获取/或修改文件中的数据就需要程序员去写代码来进行管理,有点麻烦且低效),所以需要一套管理文件的程序,这样我们程序员使用时就能更加快捷的管理好内部存储的数据:也就是数据库
数据库本质:对数据内容存储的一套解决方案,你给我字段或者要求,数据库直接给出想要的结果。
创建数据库:
create database helloworld; #helloworld数据库名
查看已存在的数据库,一般会默认存在些 :
show databases;#
1. 使用表
use helloworld;
2.初始表格结构
create table student(
name varchar(32),
age int,
gender varchar(2)
);
3.查看创建好的表
show tables;
4.插入数据
insert into student(name,age,gender) value('张三',20,'男'); #插入数据到表格中:
5.查看表的内容
select * from student;
附:mysql的数据是按逻辑存储的,通过行列的方式来存储数据的(二维结构),按行进行插入。
所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、Windows、
Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。
Client connectors:客户端
大致分为三层
DDL可以理解为库、表结构的操作,而DML就是结构体内的操作(理解成对库、表内部数据的操作!)
存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
Mysql的核心就是插件时的存储引擎,它是支持各种存储引擎的。
查看能使用的所有存储引擎语法:
show engines \G;
MySQL底层也是C/S模式的一种网络服务,我们一般使用的就是mysql的客户端,而其底层还有服务端也就是mysqld,其中的d代表的就是deamon(守护进程的形式在后台进行着)
MySQL的结构大概分为三层:第一层是mysql的连接池用于管理连接和安全、第二层为对SQL语句的语意词义的分析(可以理解成编译器),第三层就是MySQL中的插件式存储引擎,这些储存引擎才是真正主要进行对数据的操作的。
本章完。预知后事如何,暂听下回分解。
如果有任何问题欢迎讨论哈!
如果觉得这篇文章对你有所帮助的话点点赞吧!
持续更新大量MySQL细致内容,早关注不迷路。