【MySQL】 穿透学习数据库理论与知识剖析

        前言:本节内容讲述一些数据库的基本概念。 第一个部分就是数据库相关的概念, 比如什么是数据库, 如何理解mysqld以及mysql。第二部分理解数据库和表在系统层面的形式。 第三部分就是mysql的一些操作分类。 第四部分就是数据库的插件配置这些。

        ps:本节内容都是一些基础概念, 友友们可以放心观看哦。

目录

mysql登录

mysql退出

什么是数据库​编辑

见一见数据库

常见的主流数据库

服务器、数据库、表关系

mysql架构

SQL分类

存储引擎


mysql登录

mysql登录支持本地登录, 如下:

mysql -uroot -p;  //直接使用root登录, 使用密码登录

mysql 也支持远程登录, 只需要提供对应的mysql所在主机的ip地址和端口号:

mysql -h IP地址 -P 端口号 -u用户名 -p;   //登录远端mysql服务, 使用密码登录

mysql退出

mysql退出就是quit

什么是数据库

  •         mysql它是数据库服务的客户端
  •         mysqld它是数据库服务的服务器端
  •         mysql本质:基于C(mysql)S(mysqld)模式的一种网络服务。
  •         mysql是一套给我们提供数据存取得服务的网络程序。
  •         数据库一般指的是, 在磁盘或者内存中存储的特定结构组织的数据 -- 将来在磁盘上存储的一套数据库方案。
  •         数据库服务 -- mysqld。
  •         一般的文件给我们确实提供了数据的存储功能, 但是数据并没有给我们提供非常好的数据管理能力。 
  •         数据库本质:对数据内容存储的一套解决方案。用户给数据库字段或者要求, 数据库直接给用户结果。

        然后数据库的工作模式就是下图:

见一见数据库

        样例:使用mysql建立一个数据库, 建立一张表结构, 插入一些数据。-- 对比一下mysql在linux中是如何表现的。

        我们进入/var/lib/mysql, 可以看到里面一开始没有newdatabase文件。

但是我们在mysql中创建一个数据库后, 就能看到, /var/lib/mysql里面多出来了一个newdatabase文件。

所以, 我们就能知道, 其实建立数据库, 本质就是在linux下创建一个目录。

然后我们创建一个表:

use database;  //使用某个数据库
create table 表名称(
    字段一 数据类型,
    字段二 数据类型,
    字段三 数据类型,
    ………………
);   //创建表结构

然后我们就能发现/var/lib/mysql/newdatabase下面多出来了一个文件:

所以我们就知道了,在数据库内建立表, 本质就是在linux下创建对应的文件即可!

问题是, 上面这两个动作是谁做的? ——是mysqld服务帮我们做的。

数据库本质其实也是文件!只不过这些文件并不由程序员直接操作,而是由数据库服务帮我们进行操作。

常见的主流数据库

        常见的主流数据库其实有我们现在用的MySQL、 SQL server、Oracle、Redis等等。其中, Redis和其他三个又有区分, Redis是内存数据库, 它将数据存储在内存中, 所以有有非常快的读取速度。另外三个是关系型数据库, 基于表格结构, 适合做结构化的存储。 

服务器、数据库、表关系

        所谓的安装数据库服务器,其实就是在机器上面安装了一个mysqld,也就是数据库管理系统程序。  它以守护进程的形式在后台一直在运行。一次可以管理多个数据库。 

        这些数据库其实就是上面的DB。一般开发人员对每一个应用会创建一个数据库。

        为了保证应用中实体的数据,所以一般会在数据库中创建多个表,用来保存实体中的数据

mysql架构

        MySQL是一个可移植的数据库, 其实认识MySQL的架构,其实就是认识mysqld是如何进行服务的。 下面是mysqld的结构:        

        mysql首先最上层的是客户端, 也就是mysql那个程序。 mysql的客户端其实不只是能用这个程序来充当, 还可以使用c++等语言, 或者图形化界面的工具。

        然后下面就是mysqld, 也就是mysqlserver。 它整体是由我们的三层去构成。 第一层叫做链接池, 就是用来网络服务进行连接, 判断用户的身份合法性, 做一些安全管理相关的工作。 

        第二层就是我们的SQL相关的内容, 这一层用来将上层发来的SQL语句进行词法分析, 语法分析。 SQL语句优化等等工作。 就类似于编译器。

        第三层就是进行匹配一个一个具体的存储引擎, 存储引擎就类似于驱动, 这个存储引擎从上层接收我们下达下来的一些经过词法语法分析优化后的语句,然后对它们进行解释,所以, 这一层就是真正的办事的。 

SQL分类

  • DDL:数据定义语言——用来维护数据的结构, 用来定义表等
  • DML:数据操作语言——对表当中的内容进行操作。
  • DCL:数据控制语言——负责权限和事物的管理。

存储引擎

      存储引擎:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。        

        MySQL采用插件式的存储引擎, 支持多种存储引擎。 查看存储引擎的指令是:

show engines

  ——————以上就是本节全部内容哦, 如果对友友们有帮助的话可以关注博主, 方便学习更多知识哦!!!   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/908132.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mysql常用语法一篇文章速成

文章目录 前言前置环境数据库的增删改查查询数据查询所有条件查询多条件查询模糊查询分页查询排序查询分组查询⭐️⭐️关联查询关联分页查询 添加数据insert插入多条记录不指定列名(适用于所有列都有值的情况) 更新数据更新多条记录更新多个列更新不满足条件的记录 删除统计数…

论文阅读-用于图像识别的深度残差学习

目前存在的问题: 文章主要研究内容: 未来课研究内容: 涉及的理论问zzz 在这种 论文研究思路 论文翻译: 摘要:更深层次的神经网络更难训练。 我们提出了一个残差学习框架,以简化比以前使用的网络更深的网络训…

AD 授予委派full control权限后,部分用户无法unlock

文章目录 问题描叙根因解決方法: 问题描叙 通過委派方式授予被委派用戶full control 权限后,部分用户unlock是灰色显示: 根因 对比能正常unlock与无法unlock的用户,发现繼承無法unlock的用戶沒有"enable inheritance&quo…

Maven随笔

文章目录 1、什么是MAVEN2、Maven模型3、Maven仓库4、项目集成1_Idea集成Maven设置2_创建Maven项目3_POM配置详解4_maven 坐标详情5_Maven工程类型6_导入Maven项目 5、依赖管理1_依赖配置2_依赖传递3_可选依赖4_排除依赖4_可选依赖和排除依赖的区别5_依赖范围6_继承与聚合7_版本…

Vue中ref、reactive、toRef、toRefs的区别

一、ref、reactive setup 函数中默认定义的变量并不是响应式的(即数据变了以后页面不会跟着变),如果想让变量变为响应式的变量,需要使用 ref 和 reactive 函数修饰变量。 ref 函数可以把基本类型变量变为响应式引用reactive 函数…

低压补偿控制器维修措施

低压补偿控制器其主要功能是调节和补偿系统中的低压,确保设备的正常运行和电能的高效利用。然而,随着长时间的使用,低压补偿控制器可能会出现故障,从而影响系统的正常运行。因此,了解低压补偿控制器的维修措施显得尤为…

视频推荐的算法(字节青训)

题目: 西瓜视频 正在开发一个新功能,旨在将访问量达到80百分位数以上的视频展示在首页的推荐列表中。实现一个程序,计算给定数据中的80百分位数。 例如:假设有一个包含从1到100的整数数组,80百分位数的值为80&#…

lora训练模型 打造个人IP

准备工作 下载秋叶炼丹器整理自己的照片下载底膜 https://rentry.org/lycoris-experiments 实操步骤 解压整合包 lora-scripts,先点击“更新” 训练图片收集 比如要训练一个自己头像的模型,就可以拍一些自己的照片(20-50张,最少15张&…

qt QBrush详解

1、概述 QBrush是Qt框架中的一个基本图形对象类,它主要用于定义图形的填充模式。QBrush可以用于填充如矩形、椭圆形、多边形等形状,也可以用于绘制背景等。通过QBrush,可以设置填充的颜色、样式(如实心、渐变、纹理等&#xff09…

《C#语法一篇通》,20万字,48小时阅读,持续完善中。。。

本文摘录了C#语法的主要内容,接近20万字。 所有鸡汤的味道都等于马尿! 如果你相信任何所谓的鸡汤文章,智商堪忧。 计算机语言没有”好不好“之说,骗子才会告诉你哪个语言好,学好任何一本基础语言(C&#…

radio astronomy 2

地球上的电离层会被太阳风影响。

数字人直播带货前景如何?头部源码厂商的系统能实现哪些功能?

随着数字人直播技术的成熟,以数字人直播带货为代表的应用场景逐渐呈现出常态化的趋势,使得越来越多创业者对该赛道产生兴趣的同时,也让数字人直播带货前景及操作方式成为了他们所重点关注的对象。 从目前的情况来看,就数字人直播带…

华为鲲鹏一体机 安装笔记

安装驱动 在这个链接 社区版-固件与驱动-昇腾社区 1 下载NPU固件 需要注册登录,否则报错: ERR_NO:0x0091;ERR_DES:HwHiAiUser not exists! Please add HwHi AiUser 准备软件包-软件安装-CANN…

【C++】类和对象(十一):友元+内部类+匿名函数

大家好,我是苏貝,本篇博客带大家了解C的友元内部类匿名函数,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 1. 友元1.1 友元函数1.2 友元类 2. 内部类3. 匿名对象 1. 友元 友元提供了一种…

【深度学习】VITS语音合成原理解析

1、前言 呃。。。好多天没更新了,最近 黑神话悟空 相当火啊,看上瘾了。本篇内容,我们来讲一下VITS。 视频:语言合成 & 变声器 ——VITS原理解析①_哔哩哔哩_bilibili 2、VITS 训练图 预测图: 2.1、条件VAE的优…

git 入门作业

任务1: 破冰活动:自我介绍任务2: 实践项目:构建个人项目 git使用流程: 1.将本项目直接fork到自己的账号下,这样就可以直接在自己的账号下进行修改和提交。 这里插一条我遇到的问题,在fork的时候没有将那个only camp4的…

再探“构造函数”(2)友元and内部类

文章目录 一. 友元‘全局函数’作友元‘成员函数’作友元‘类‘作友元 内部类 一. 友元 何时会用到友元呢? 当想让(类外面的某个函数/其它的类)访问 某个类里面的(私有或保护的)内容时,可以选择使用友元。 友元提供了一种突破&a…

从零到一构建C语言解释器-CPC源码

文章目录 参考框架设计vm指令集分配空间词法分析语法分析递归下降表达式优先级爬山 参考 https://lotabout.me/2015/write-a-C-interpreter-1/ https://github.com/archeryue/cpc https://www.bilibili.com/video/BV1Kf4y1V783/?vd_sourcea1be939c65919194c77b8a6a36c14a6e …

关于我、重生到500年前凭借C语言改变世界科技vlog.14——常见C语言算法

文章目录 1.冒泡排序2.二分查找3.转移表希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力! 根据当前所学C语言知识,对前面知识进行及时的总结巩固,出了这么一篇 vlog 介绍当前所学知识能遇到的常见算法,这些算法是…

我也谈AI

“随着人工智能技术的不断发展,我们已经看到了它在各行业带来的巨大变革。在医疗行业中,人工智能技术正在被应用于病例诊断、药物研发等方面,为医学研究和临床治疗提供了新的思路和方法;在企业中,人工智能技术可以通过…