MySQL:数据库基础

文章目录

  • 什么是数据库
  • 数据库的认识
    • 登陆数据库
    • 理解数据库
    • 数据库的相关概念
    • 数据库的工作方式
  • 数据库的基本使用
  • 服务器/数据库/表
  • MySQL架构

本篇开始进行关于MySQL的学习,首先要对于数据库有一个基本的认识

什么是数据库

数据库主要是用来管理文件的,那此时可能会有疑问,文件也能进行管理文件,为什么不用文件管理呢?在这里要明确的概念是,操作系统的文件系统是对于一个一个的文件进行管理,而数据库在此基础上还拥有对于文件当中的内容进行合适的索引等的查询机制,同时,文件进行保存数据会有下面的几个问题

  1. 文件不安全
  2. 文件不方便查询管理
  3. 文件无法存储大量数据
  4. 文件在程序控制不方便

而数据库的存在,正是为了解决这样的问题,数据库的存储一般是存储在内存和磁盘当中的,换句话说,数据库就是为了能够更加有效和高效的对于数据进行管理

数据库的认识

登陆数据库

在我的Linux环境下已经安装了数据库的相关信息:

在这里插入图片描述
那么首先是登陆信息:

在这里插入图片描述
在这里需要注意的是,MySQL的登陆选项有很多,例如这里带上-h表示的是说明清楚数据库的ip信息,在这里我选择的是在我的本机登陆,因此这里就带上本机的ip地址,而-P表示的是端口号,一般而言MySQL的端口号就是3306,这是约定俗成的事实,而后面的-u表示的是用户信息,由于我这里还没有对于用户信息创建分类,所以统一用root进行管理,最后的-p表示的是密码,在配置文件中我暂时设置了免密登录,后续也会进行管理

理解数据库

那下一个话题是,如何理解MySQL,如何理解数据库呢?这里我从mysql和mysqld来进行解释:

在这里插入图片描述
在Linux当前运行的进程中我们可以发现一个mysqld的内容,而在Linux的文件中会存在一个mysql,那么这两个有什么区别和联系呢?

mysql的本质是数据库服务的客户端,而mysqld的本质是数据库服务的服务器端,所以说用户在进行访问的时候是访问的是mysql客户端,而客户端背后会借助服务端的力量来对于文件中的信息进行管理,所以我们说mysql的本质就是基于client和server模式的一种网络服务,其中mysql就是所谓的client,而mysqld就是所谓的server

既然是网络服务,那么就必然会存在网络连接:

在这里插入图片描述
事实证明也确实如此,可以看到在3306端口下存在一个mysqld,而同时从名字也能看出来这其实是一个守护进程,这个守护进程会一直存储在一个单独的会话中为用户提供对应的服务

数据库的相关概念

那么说到底,mysql其实就是一套提供给我的数据存取的网络程序,这是由前面的信息得出的基本结论,那么现在要区分一个概念,什么是数据库,什么是数据库服务?这和mysql和mysqld是否有一定的联系呢?

事实上,数据库一般说的都是在磁盘或者内存中存储的特定组织的数据,也就是说是磁盘上存储的一套数据库的方案

而数据库服务,一般说的就是mysqld,它会为用户提供进行索引等信息,执行各种的方法

数据库的工作方式

对于数据库的认知,我们暂时可以理解为,数据库的本质信息就是对于数据内存存储的一套解决方案,给数据库相应的字段或者要求,数据库服务可以直接返回对应的结果,这就是目前来说对于数据库的理解可以到这里

为了便于理解,我们用下面的图来进行表示:

在这里插入图片描述
对于上述的图来说,展示了一个数据库的基本原理,程序员在客户端写一些sql语句,然后客户端会传递给服务端,服务端就会识别这些信息,然后从磁盘中的数据库文件中去寻找对应的信息,进而进行合适的解析工作

数据库的基本使用

那么下面就对于数据库的基本使用做一个演示:在Linux下用数据库建立一个表,插入一些数据

在这里插入图片描述
首先查看一下当前数据库中存在的一些基本信息

在这里插入图片描述
此时在数据库当中创建一个文件

在这里插入图片描述
此时再次进行查询

在这里插入图片描述
就会发现helloworld已经存在在了mysql目录当中了

所以说,对于mysql的认知其实应该多一项,建立数据库本质上就是Linux下的一个目录,而在数据库当中建立表,本质上就是在Linux创建对应的文件,数据库本身也是一个文件,只是这个文件不是让程序员操作的,而是让对应的mysqld数据库服务进行操作的

服务器/数据库/表

在这里插入图片描述
其中,client端其实就是客户端,而MySQL表示的是服务端,后面的DB就是一个一个的目录,对应的表就是目录下的一个一个的文件,上述所示就是这三者之间的关系

MySQL架构

在这里插入图片描述
上图所示的是MySQL的基本架构,由于这里只是初步认识,所以只是简单介绍,用户所处的位置就是最上面的client connectors的位置,而下面的connection Pool可以看成是一个管理链接的地方,包括登录认证等等,再往下走是对应的服务,再下面的pluggable storage engines就是所谓的存储引擎,其实存储引擎就可以理解为是搜索的方式,一般来说哦是用InooDB比较多,再底层就是对应的文件系统硬件了,还有磁盘信息等等

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

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

相关文章

化工企业能源在线监测管理系统,智能节能助力生产

化工企业能源消耗量极大,其节能的空间也相对较大,所以需要控制能耗强度,保持更高的能源利用率。 化工企业能源消耗现状 1、能源管理方面 计量能源消耗时,计量器具存在问题,未能对能耗情况实施完全计量,有…

苍穹外卖-day03

1. 公共字段自动填充 1.1 问题分析 业务表中的公共字段: 序号字段名含义数据类型1create_time创建时间datetime2create_user创建人idbigint3update_time修改时间datetime4update_user修改人idbigint 而针对于这些字段,我们的赋值方式为: 在新…

分布式Raft原理详解,从不同角色视角分析相关状态

分布式Raft原理详解,从不同角色视角分析相关状态 1. CAP定理2.Raft 要解决的问题3. Raft的核心逻辑3.1. Raft的核心逻辑2.1. 复制状态机2.2. 任期 Term2.3. 任期的意义:逻辑时钟2.4 选举定时器 3. Leader选举逻辑4. 从节点视角查看Leader选举4.1. Follow…

MATLAB中的数学建模:基础知识、实例与方法论

前言 在当今科技高速发展的时代,数学建模成为了解析复杂世界的关键工具,而MATLAB作为一种专业的科学计算软件,为我们提供了强大的数学建模平台。MATLAB不仅仅是Matrix Laboratory的简称,更是一个集数值分析、矩阵计算、算法开发和…

IP SSL证书注册流程

使用IP地址申请SSL证书,需要用公网IP地址申请,申请之前确保直接的IP地址可以开放80或者443端口两者选择1个就好,端口不需要一直开放,只要认证的几分钟内开放就可以了,然后IP地址根目录可以上传txt文件。 IP SSL证书认…

【蓝桥杯嵌入式】四、各种外设驱动(十一)ADC(1):软件触发与中断触发方式

温馨提示:本文不会重复之前提到的内容,如需查看,请参考附录 【蓝桥杯嵌入式】附录 目录 重点提炼: 一、需求分析 1、需要的外设资源分析: 2、外设具体分析: 比赛时ADC可能需要配置的部分:…

排序算法记录(冒泡+快排+归并)

文章目录 前言冒泡排序快速排序归并排序 前言 冒泡 快排 归并,这三种排序算法太过经典,但又很容易忘了。虽然一开始接触雀氏这些算法雀氏有些头大,但时间长了也还好。主要是回忆这些算法干了啥很耗时间。 如果在笔试时要写一个o(nlogn)的…

手机网页视频批量提取工具可导出视频分享链接|爬虫采集下载软件

解放你的抖音视频管理——全新抖音批量下载工具震撼上线! 在这个信息爆炸的时代,如何高效地获取、管理和分享视频内容成为了许多用户的迫切需求。为了解决这一难题,我们研发了全新的视频批量下载工具,让你轻松畅享海量音视频资源。…

免费的本地图像无损放大工具upscayl,支持六种模型

文章目录 upscayl其他模型其他设置 upscayl upscayl是一款免费的图像无损放大软件,scayl应该就是scale,不知道是哪国语言。进入官网后可直接下载,支持Windows, Linux, MaxOS等主流平台,对于Windows而言,还提供了exe和…

单相桥式全控整流电路

1仿真目的 通过对单相桥式全控整流电路的仿真研究,分析电路带电阻负载与阻感负载的不同工作情况。研究对电路的影响 2仿真原理 2.1单相桥式 如图所示为单相桥式全控电路的框图,设负载为电阻负载。在桥式逆变电路中,桥臂的上下两个开关器件…

teamcenter 无法打开数据集,未找到兼容的工具

原因 teamcenter 图片无法打开看 解决 修改注册表: 注册表位置:计算机\HKEY_CLASSES_ROOT\jpegfile\shell\open\command 注册表的值:“%systemroot%\system32\mspaint.exe” “%1”

BetterDisplay Pro for Mac(显示器校准软件) v2.0.11激活版

BetterDisplay Pro是一款由waydabber开发的Mac平台上的显示器校准软件,可以帮助用户调整显示器的颜色和亮度,以获得更加真实、清晰和舒适的视觉体验。 软件下载:BetterDisplay Pro for Mac v2.0.11激活版 以下是BetterDisplay Pro的主要特点&…

【Redis】哨兵机制

1 🍑基本概念🍑 由于对 Redis 的许多概念都有不同的名词解释,所以在介绍 Redis Sentinel 之前,先对⼏个名词概念进⾏必要的说明。 名词逻辑结构物理结构主节点Redis 主服务⼀个独⽴的 redis-server 进程从节点Redis 从服务⼀个独…

浅析ArcGis中的软件——ArcMap、ArcScene、 ArcGlobe、ArcCatalog

为什么要写这么一篇介绍ArcGis的文章呢?因为大部分人也包括ArcGisdada,在使用ArcMap应用程序创建工程时总以为我们就是使用了ArcGis这个软件的所有。其实不然,在后期的接触和使用中慢慢发现原来ArcMap只是ArcGis这个综合平台的一部分&#xf…

fifo ip核 ————读写时钟同步

1.原理 timescale 1ns/1ns module tb_fifo();reg sys_clk ; reg sys_rst_n ; reg [7:0] pi_data ; reg rd_req ; reg wr_req ; reg [2:0] cnt;wire empty ; wire full ; wire [7:0] po_data ; wire [7:0] usedw ;initial begins…

《大模型面试宝典》(2024版) 正式发布!

2022 年11月底,OpenAI 正式推出 ChatGPT ,不到两个月的时间,月活用户就突破1亿,成为史上增长最快的消费者应用。 目前国内已发布的大模型超过200个,大模型的出现彻底改变了我们的生活和学习方式。 现在只要你想从事 A…

结构体变量的引用、结构体变量的初始化、结构体数组

一、 结构体变量的引用 在定义了结构体变量以后,当然可以引用这个变量。但应遵守以下规则: 不能将一个结构体变量作为一个整体进行输入和输出。例如,已定义studentl和 student2为结构体变量并且它们已有值。不能这样引用: printf ("%d,%s,%c,%d,%f,%s\n&quo…

idea报错Terminated with exit code 1

今天学项目的时候,中途打开一个新的项目,pom.xml文件一直在下载依赖,下载了很久都没有下载成功,检查自己的Maven配置,感觉没问题 把项目移动到没有中文的目录下重新启动,也还是不行,后来发现原…

硬核分享|AI语音识别转文字与自动生成字幕

硬核分享|AI语音识别转文字与自动生成字幕_哔哩哔哩_bilibili 在现代快节奏的生活中,语音转文字工具成为了我们工作和学习中的得力助手。它能够将我们说出的话语迅速转化为文字或者将语音视频自动生成字幕,提供便捷和高效。 语音转文字转字幕工具是一种…

nodejs安装使用React

1、react安装 首先,确保电脑上具备nodejs环境,之后用 winr 呼出控制台,输入 cmd 命令弹出cmd控制台(小黑框)之后在默认路径输入如下代码 npm i -g create-react-app //全局安装react环境无需选择特定文件夹安装成功后…