当前位置: 首页 > news >正文

MySQL数据库基础 -- SQL 语句的分类,存储引擎

目录

1. 什么是数据库

2. 基本使用

2.1 进入 mysql

2.2 服务器、数据库以及表的关系

2.3 使用案例

 2.4 数据逻辑存储

3. SQL 语句分类

4. 存储引擎

4.1 查看存储引擎

4.2 存储引擎的对比


1. 什么是数据库

        安装完 MySQL 之后,会有 mysql 和 mysqld。

        MySQL 是一个基于 CS 模式的网络服务,是一套提供数据存取服务的网络程序。mysql 是客户端,mysqld 是服务端。

        数据库 -- 一般指的是在磁盘或内存中存储的特定结构组织的数据文件。

        数据库服务 -- mysqld。

        存储数据用文件即可,为什么还要用数据库呢?

                一般的文件确实提供了数据的存储功能,但是文件并没有提供非常好的数据内容管理功能数据库的本质是对数据内容存储的一套解决方案,给其字段或者要求,直接返回结果

                文件保存数据有以下几个缺点:(1)文件不利于数据查询和管理。(2)文件不利于存储海量数据。(3)文件在程序中控制不方便。

2. 基本使用

2.1 进入 mysql

mysql -h 127.0.0.1 -P 3306 -u root -p

        h:指定 mysql 服务端的 ip 地址。

        P:指定 mysql 服务端的端口号。

        u:指定登录的用户。

        p:使用密码进行登录。

        执行上述命令之后,输入 mysql 的用户密码即可进入 mysql。 

2.2 服务器、数据库以及表的关系

        数据库服务器只是在电脑上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库

        为保存应用中实体的数据,一般会在数据库中创建多个表,用于保存程序中实体的数据。

        如上图所示,用户用 mysql 客户端连接上 mysql 服务端,然后这个程序对主机中的数据库文件 DB 进行管理,而每个数据库(文件)中存在多个表结构,用于存储程序中的实体数据。 

2.3 使用案例

        (1)创建数据库 -- 本质就是在 Linux 对应的目录下创建一个目录

create database helloworld;

        如上图所示,创建了一个 helloworld 的数据库,则是在这台主机的 /var/lib/mysql 下创建了一个 hello world 的目录。 

        (2)进入数据库 -- 本质就是进入到数据库目录里面。

use helloworld;

        (3)创建数据库表 -- 本质就是在数据库目录下创建文件。

        如上图所示,在进入 helloworld 数据库之后,创建一张 student 表,该表有三个表项(name,age,gender),每一个表项后面跟的是该表项的数据类型,表项之间使用 "," 隔开。

 2.4 数据逻辑存储

        如上图所示,数据库中的每一张表在逻辑上是以行列的关系进行存储的。 查询的时候会以上述形式进行显示,物理上在磁盘中存储的时候会以特定的形式进行存储。

3. SQL 语句分类

        (1)DDL【data definition language】 数据定义语言,用来维护存储数据的结构。代表指令: create, drop, alter。

        (2)DML【data manipulation language】 数据操纵语言,用来对数据进行操作。代表指令: insert,delete,update。

        (3)DCL【Data Control Language】 数据控制语言,主要负责权限管理和事务。代表指令: grant,revoke,commit。

4. 存储引擎

        存储引擎:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法MySQL的核心就是插件式存储引擎,支持多种存储引擎。

4.1 查看存储引擎

show engines;

4.2 存储引擎的对比

        常用的存储引擎为 MyISAM 和 InnoDB。 

 

相关文章:

  • Django框架的前端部分使用Ajax请求一
  • 【数根】2022-1-24
  • Vue 中 v-model 的三种使用方式对比与实践
  • C++23 std::mdspan:多维数组处理新利器
  • 【第二届帕鲁杯】第二届帕鲁杯 主环境 基本完整wp
  • linux安装conda环境-ubuntu
  • ECharts-饼图
  • 深入理解 ZAB:ZooKeeper 原子广播协议的工作原理
  • 游戏开发实战(一):Python复刻「崩坏星穹铁道」嗷呜嗷呜事务所---源码级解析该小游戏背后的算法与设计模式【纯原创】
  • 云计算简介:从“水电”到“数字引擎”的技术革命
  • 使用docker——10分钟内 完成一个高可用的 MongoDB 副本集部署
  • 【HTML】【面试提问】HTML面试提问总结
  • UE5在C++项目中判断不同平台
  • Docker项目部署深度解析:从基础命令到复杂项目部署
  • HarmonyOS实战:自定义时间选择器
  • 基于正点原子阿波罗F429开发板的LWIP应用(1)——网络ping通
  • YOLOv8 在单片机上的几种部署方案
  • 【日常笔记】wps如何将值转换成东西南北等风向汉字
  • Spring Boot与Kafka集成实践:从入门到实战
  • 使用 docker-volume-backup 备份 Docker 卷
  • 一季度支持科技创新和制造业发展减税降费及退税4241亿元
  • 益阳通报“河水颜色异常有死鱼”:未发现排污,原因待鉴定
  • 新疆多地市民拍到不明飞行物:几秒内加速消失,气象部门回应
  • 体坛联播|热刺追平单赛季输球纪录,世俱杯或创收20亿美元
  • 圆桌丨全球化博弈与人工智能背景下,企业如何落地合规体系
  • 马上评|重病老人取款身亡,如何避免类似悲剧?