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

初识MySQL

💕与其抱怨生活的不公,不如积极行动改变它。💕
🐼作者:不能再留遗憾了🐼
🎆专栏:MySQL学习🎆
🚗本文章主要内容:简单了解什么是MySQL、MySQL的发展以及简单的对库操作🚗
在这里插入图片描述

文章目录

  • 什么是MySQL
  • 什么是关系型数据库
  • 什么是非关系型数据库
  • MySQL数据库的发展史
  • MySQL是如何执行一条SQL查询语句的?
  • 在安装好MySQL环境后为什么会发生闪退
  • 简单的库操作
    • 1.查看数据库
    • 2.创建数据库
    • 3.选中数据库
    • 4.删除数据库

什么是MySQL

MySQL是一种流行的关系型数据库管理系统,最开始由MySQL AB公司推出,后由Oracle Corporation开发和支持,它是一种开源软件,广泛用于Web应用程序开发和数据存储。MySQL具有高度的可扩展性、可靠性和安全性,并提供了广泛的API和编程接口,使开发者能够轻松地使用各种编程语言与之交互。MySQL是Web开发者的首选数据库之一。

MySQL是一个客户端 - 服务器结构的程序,同时服务器是数据库的本体(数据是在服务器这里组织和存储的)。

什么是关系型数据库

关系型数据库是由关系型模型(即二维表格)构成的数据库,以及实现此种模型的软件系统。关系型数据库中的数据以表格的形式呈现,表格由行和列组成,每一列是一种数据类型,每一行代表一个实体,每一个实体则由一组属性组成。数据的整合和处理通过对表格之间的关系进行操作来实现。目前,关系型数据库是最广泛使用的数据库类型之一,常常被应用于企业级应用程序和数据处理任务中。常见的关系型数据库包括:MySQL、Oracle、SQL Server、PostgreSQL、IBM DB2、SQLite等

什么是非关系型数据库

非关系型数据库(NoSQL)是一种区别于传统关系型数据库模型的数据库系统,使用非结构化的数据存储方式,包括键值对存储、文档存储、列族存储和图形存储等。与关系型数据库相比,NoSQL数据库具有更高的可扩展性和性能,并且能够处理非结构化或半结构化的大量数据,不需要严格的数据模式和事务处理的支持,因此适合存储和处理分散的、非结构化的、动态和快速变化的数据。常见的NoSQL数据库包括MongoDB,Cassandra,HBase,Redis等。

MySQL数据库的发展史

  1. 1995-1997年,MySQL由Michael Widenius和David Axmark在瑞典创建。最初是一个很小的开源项目,用于个人及小型网站使用。

  2. 1998年,MySQL发布了版本3.2,并正式开始走向商业化发展道路。为了推广MySQL,公司开始提供商业支持和收费服务。

  3. 2001年,MySQL AB公司成立,开始以商业化运营方式发展MySQL,并凭借其高性能、稳定性和易用性,在Web应用开发领域逐渐成为流行的数据库系统。

  4. 2008年,Sun Microsystems公司收购了MySQL AB,MySQL变成了Sun公司的旗舰产品。

  5. 2010年,Oracle公司收购了Sun公司,MySQL成为了Oracle公司的旗舰产品。为了解决开源社区和商业用户之间的分歧,Oracle创建了MySQL Community版和MySQL Enterprise版两个版本,分别面向开源开发者和商业客户。

  6. 2013年,MySQL发布了5.6版本,增加了多种新功能和性能改进,进一步推进了MySQL的发展。

  7. 2018年,MySQL发布了8.0版本,引入了全新的功能和性能优化,扩展了MySQL在大数据、云计算、安全和高可用性方面的应用能力。

MySQL是如何执行一条SQL查询语句的?

当MySQL接收到一条SQL查询语句时,它会经过以下步骤进行执行:

  1. 语法分析:MySQL会检查语句的语法是否正确,如果存在语法错误,将会返回相应的错误信息。

  2. 查询优化:MySQL会对查询语句进行优化,以尽可能快地获取所需的结果。这个过程涉及到分析查询的每个组件,选择最佳的执行顺序,使用合适的索引等。

  3. 执行查询:一旦优化器选择了最佳执行计划,MySQL就会执行查询,并从磁盘或内存中读取所需的数据。如果查询需要进行排序、分组或其他操作,MySQL可能会创建临时表来存储中间结果。

  4. 返回结果:一旦查询完成,MySQL会将结果返回给客户端应用程序进行处理。

在这个过程中,MySQL会通过一系列的内部模块和算法来实现查询的各个部分。例如,MySQL的存储引擎模块负责从磁盘中读取数据,而查询缓存模块则可以缓存查询结果,以提高性能和响应速度。

在安装好MySQL环境后为什么会发生闪退

1.点击开始菜单

2.所有应用

3.找到MySQL,随便启动哪个都行
在这里插入图片描述

4.提示输入密码
在这里插入图片描述
在输入密码后如果发生闪退,我们可以通过以下操作来知道为什么会出现错误。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

简单的库操作

在这里插入图片描述
MySQL命令以 ;或者 \g 作为结束标志

1.查看数据库

使用 show databases; 查看已有的数据库
在这里插入图片描述
因为我这里并没有创建库,所以开始show databases是这样的,这个
4 rows in set(0.01 sec)表示上面的集合有4行,执行该命令用了0.01秒

2.创建数据库

使用 create database 数据库名; 来创建数据库
在这里插入图片描述
在创建数据库的时候我们需要注意以下几点:

1.database 不是 databases,因为查看数据库的时候不止一个,而你创建数据库的时候只能创建一个。

2.数据库的名字命名规则跟C语言、Java的变量命名规则类似。
数据库名字:数字,字母,下划线,不能以数字开头。

3.如果非要用关键字作为数据库的名字,那么需要使用`反引号把数据库名引起来。

在这里插入图片描述
如果我们直接拿关键字作为数据库名是会报错的,如果偏要以关键字作为数据库名,就需要使用 " ` "反引号将数据库名引起来。
在这里插入图片描述
4.创建数据库的时候,数据库名不能重复。

5.sql命令对大小写不敏感。

在这里插入图片描述
6.创建数据库的时候可以指定字符集。
create database mysql1 charset(characterset) utf8
character和charset都行

平时常用的字符集包括:
gbk 两个字节表示一个汉字
utf8 三个字节表示一个汉字(更通用)

3.选中数据库

使用 use 数据库名 来对某一数据库进行增删改查。

在这里插入图片描述

4.删除数据库

使用 drop database 数据库名 来删除数据库。
在这里插入图片描述
记得删除数据库的时候一定要小心哦,小心一副银手镯送到你家里来哦。

相关文章:

初识MySQL

💕与其抱怨生活的不公,不如积极行动改变它。💕 🐼作者:不能再留遗憾了🐼 🎆专栏:MySQL学习🎆 🚗本文章主要内容:简单了解什么是MySQL、MySQL的发展…...

内网渗透(八十五)之ADCS证书服务攻击

ADCS证书服务攻击 漏洞背景 2021年6月17日,国外安全研究员 Will Schroeder 和 Lee Christensen 共同发布了针对ADCS(Active Directory Certificate Service, 活动目录证书服务)的攻击手法。同年8月5日,在Black Hat 2021上 Will Schroeder 和 Lee CHristensen 对该攻击手法进…...

通过python封装1688图片搜索商品数据接口,拍立淘API接口

1688图片搜索API封装接口是一个可以帮助用户快速使用1688图片搜索API的接口封装库。该接口封装库可以帮助用户快速引入1688图片搜索API,并提供各种参数配置和封装的API调用方法,以方便用户快速实现自己的图片搜索需求。 该接口封装库将1688图片搜索API的…...

HashMap的源码分析(基于JDK1.8)

HashMap的源码分析(基于JDK1.8) Java中的HashMap是一种常用的数据结构,它是基于哈希表的数据结构,可以用来存储键值对。在HashMap中,每个键值对被称作一个Entry,每个Entry包含一个键和一个值。HashMap的实…...

算法能力-数据安全复合治理框架和模型解读(5)

数据治理,数据安全治理行业在发展,在实践,所以很多东西是实践出来的,哪有什么神仙理论指导,即使有也是一家之说,但为了提高企业投产比,必要的认知是必须的,落地数据安全治理科技水平差异直接决定产品和项目是否可持续性,当前和未来更需要专业和有效创新。数据安全治理…...

java从入门到起飞——基础概念

目录 背景注释和关键字注释关键字 常量变量数据类型计算存储单元数据类型分类 标识符小驼峰命名法(方法、变量)大驼峰命名法(类) 类型转换自动类型转换强制类型转换 计算机中的数据存储总结 背景 学编程这么长时间了,重…...

C语言判断队列满or空

1 静态数组队列 循环队列通常使用数组来实现,判别循环队列是否满或空,可以借助两个变量front和rear。 判空:当front和rear相等时,队列为空。 判满:当(front 1) % n rear时,队列为满,其中n为…...

系统中级集成项目管理工程师(中项)好考吗?

软考系统集成项目管理工程师是一项非常重要的考试,对于从事信息技术和管理方面的人员来说,这是一个非常有用的证书。 对于零基础的考生来说,软考系统集成项目管理工程师是否好考,主要取决于他们的学习态度和学习方法。 一般而言…...

【Java多线程进阶】CAS机制

前言 CAS指的是Compare-And-Swap(比较与交换),它是一种多线程同步的技术,常用于实现无锁算法,从而提高多线程程序的性能和扩展性。本篇文章具体讲解如何使用 CAS 的机制以及 CAS 机制带来的问题。 目录 1. 什么是CAS&…...

flex布局总结

flex布局总结 总结自:https://www.ruanyifeng.com/blog/2015/07/flex-grammar.html 内容: flex意思是-弹性布局,可以为盒型模型提供极大的灵活性,设置为flex布局后,子元素的fload clear vertical会失效 概念&#x…...

2023 Idea 热部署 JRebel 插件激活方法

2023 Idea 热部署 JRebel 插件激活方法 1. 下载源代码 进入下面 github 地址 clone 代码到本地 https://github.com/Byron4j/JrebelLicenseServerforJava 2. 编译和打包 cd /Users/daixiaohu/Desktop/JrebelLicenseServerforJavamvn clean package3. 运行项目 cd target/jav…...

Java (韩老师课程)第三章

变量的介绍 * 变量是程序的基本组成单位 * 变量相当于内存中一个数据存储空间的表示 * 变量在该区域有自己的名称和类型 * 变量必须先声明,后使用,即顺序 * 变量在该区域的数据/值可以在同一类型内不断变化 * 变量在同一个作用域中不能重…...

【P38】JMeter 随机控制器(Random Controller)

文章目录 一、随机控制器(Random Controller)参数说明二、测试计划设计2.1、测试计划一2.2、测试计划二2.3、勾选忽略子控制器块 一、随机控制器(Random Controller)参数说明 可以让控制器内部的逻辑随机执行一个,一般…...

API电商 ERP 数据管理

没有 API,应用之间的通信将会被扼杀;软件开发者将不断重写并执行相同功能的软件;创新的脚步将会放缓。 API 随处可见。大到一个软件系统,小到几行程序,只要具备了一定的特征,都可以被称作 API。那么&#…...

【SQLAlchemy】第四篇——事务

可以把事务理解为一系列操作的集合:这些操作要么全部执行,要么一个也不执行——这样就可以保证数据的一致性和可靠性。在执行更新和删除操作时,尤其要注意利用事务的这个特征。 SQLAlchemy中提供了许多方法来利用事务。 1、如何确保操作生效…...

浅谈QMap中erase与remove的区别

QMap中erase与remove的区别 QMap中erase与remove的区别分别使用erase和remove删除元素使用erase删除元素使用remove删除元素代码讲解 QMap中erase与remove的区别 在实践中发现erase删除元素之后,其迭代器自动指向下一个元素,而remove删除元素之后迭代器…...

FastThreadLocal 原理解析

FastThreadLocal 每个 FastThread 包含一个 FastThreadLocalMap,每个 FastThreadLocalThread 中的多个 FastThreadLocal 占用不同的索引。每个 InternalThreadLocalMap 的第一个元素保存了所有的 ThreadLocal 对象。之后的元素保存了每个 ThreadLocal 对应的 value …...

设计模式B站学习(一)(java)

这里写目录标题 一、设计模式概述1.1 软件设计模式的产生背景1.2 软件设计模式的概念1.3 学习设计模式的必要性1.4 设计模式分类 二、UML图2.1 类图概述2.2 类图的作用2.3 类图表示法2.3.1 类图表示方法2.3.2 类与类之间关系的表示方法2.3.2.1 关联关系2.3.2.2 聚合关系2.3.2.3…...

Pandas如何轻松按位置删除多重索引列?

在Pandas处理DataFrame数据的过程中,我们常常需要删除某些不需要的列。那么,如何高效地按位置删除Pandas DataFrame的多重索引列呢? 今天分享在Pandas中按位置删除多重索引列的具体方法: 第一步:获取所有列标签 使用df.columns获取DataFrame的所有列标…...

第五十七天学习记录:C语言进阶:结构体链表的自学

先展示一段代码&#xff1a; #define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h> #include <stdlib.h>// 定义链表节点结构体 typedef struct Node {int value;struct Node* next; } Node;int main() {// 创建链表头指针Node* head (Node*)malloc(sizeof(Node…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)

目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 ​编辑​编辑 UDP的特征 socke函数 bind函数 recvfrom函数&#xff08;接收函数&#xff09; sendto函数&#xff08;发送函数&#xff09; 五、网络编程之 UDP 用…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、基础概念 1. 哈希核心思想&#xff1a; 哈希函数的作用&#xff1a;通过此函数建立一个Key与存储位置之间的映射关系。理想目标&#xff1a;实现…...

WebRTC调研

WebRTC是什么&#xff0c;为什么&#xff0c;如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...

AD学习(3)

1 PCB封装元素组成及简单的PCB封装创建 封装的组成部分&#xff1a; &#xff08;1&#xff09;PCB焊盘&#xff1a;表层的铜 &#xff0c;top层的铜 &#xff08;2&#xff09;管脚序号&#xff1a;用来关联原理图中的管脚的序号&#xff0c;原理图的序号需要和PCB封装一一…...