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

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。 

 

http://www.lryc.cn/news/2379784.html

相关文章:

  • 二元Logistic回归
  • 如何从容应对面试?
  • 如何使用GIT管理项目代码
  • RHCE 练习三:架设一台 NFS 服务器
  • 【android bluetooth 协议分析 01】【HCI 层介绍 9】【ReadLocalSupportedCommands命令介绍】
  • stm32实战项目:无刷驱动
  • python打卡训练营打卡记录day30
  • 2025年- H33-Lc141 --148. 排序链表(快慢指针,快指针先出发一步)--Java版
  • 【prometheus+Grafana篇】基于Prometheus+Grafana实现Oracle数据库的监控与可视化
  • 板凳-------Mysql cookbook学习 (四)
  • 【D1,2】 贪心算法刷题
  • 算法题(150):拼数
  • Denoising Score Matching with Langevin Dynamics
  • Docker构建 Dify 应用定时任务助手
  • mongodb管理工具的使用
  • 第2篇 水滴穿透:IGBT模块的绝对防御体系
  • LVGL(lv_dropdown下拉列表控件)
  • 2.微服务-配置
  • python实现pdf转图片(针对每一页)
  • C语言练手磨时间
  • 数字图像处理——图像压缩
  • 验证器回调中value值没有数据
  • Python | 需求预测模型
  • 双指针算法:原理与应用详解
  • 打造灵感投掷器:我的「IdeaDice」开发记录
  • 2025ICPC邀请赛南昌游记
  • python重庆旅游系统-旅游攻略
  • MySQL企业版免费开启,强先体验
  • 从纸质契约到智能契约:AI如何改写信任规则与商业效率?​——从智能合约到监管科技,一场颠覆传统商业逻辑的技术革命
  • 常见的 HTTP 接口(请求方法)