当前位置: 首页 > 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…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来&#xff0c;尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断&#xff0c;但全球市场热度依然高涨&#xff0c;入局者持续增加。 以国内市场为例&#xff0c;天眼查专业版数据显示&#xff0c;截至5月底&#xff0c;我国现存在业、存续状态的机器人相关企…...

Nginx server_name 配置说明

Nginx 是一个高性能的反向代理和负载均衡服务器&#xff0c;其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机&#xff08;Virtual Host&#xff09;。 1. 简介 Nginx 使用 server_name 指令来确定…...

Linux-07 ubuntu 的 chrome 启动不了

文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了&#xff0c;报错如下四、启动不了&#xff0c;解决如下 总结 问题原因 在应用中可以看到chrome&#xff0c;但是打不开(说明&#xff1a;原来的ubuntu系统出问题了&#xff0c;这个是备用的硬盘&a…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...