MySQL数据库所有知识点最详细讲解,内置官方文档、个人理解、代码演示,自学MySQL必备文档(一)

本文章目的是为了记录个人学习所得,同时为自学mysql和学习编程的朋友提供一些实质性的帮助,此文章为第一章,其他相关mysql文章,请自行在本人mysql专栏里寻找;
除此之外,请求各位兄弟如果在文章中发现错误的地方,请及时在评论中指出,以免让后面的学习的兄弟学习到错误知识,谢谢!

什么是数据库?

数据库(Database, DB):
数据库就是存储数据的仓库,
其本质就是一个文件管理, 就是以文件的形式将数据保存到电脑的磁盘中

举例:冰箱是用来干什么的?是用来存放食物的,数据库可以理解为存放数据的仓库,那什么是数据?比如我们上班或者上学的时候,刚融入团队的时候,公司都会找我们要个人信息,我们的姓名、职位、手机号等等都是数据,那一般小的公司可能一份表格就搞定了,但为什么要用数据库储存呢?

为什么要使用数据库?

我们要使用表格或者数据的时候,有几大弊端:

1、采集和修改信息环节繁琐;
2、很容易丢失或者损坏;
3、无法大规模采集信息;
4、信息数据不安全;
5、数据无法实时更新;

那我们使用数据库就可以解决以上问题,数据库可以通过线上对个人数据进行添加和修改、同时因为是线上,有手机或者电脑都可以录入信息,摆脱了之前信息录入的局限性,另外数据库可以通过一些安全框架对数据进行加密;

关系型数据库:

关系型数据库
关系型数据库是将复杂的数据结构用较为简单的二维表来表示,在该类型数据库中,对数据的操作基本上都建立在一张或多张表上,采用结构化查询语言(SQL)对数据库进行操作. 关系型数据库是比较主流的数据库技术
常见的的关系型数据库有:MySQL、Oracle、DB2、SQL Server等

在这里插入图片描述
举例:关系型数据库的存储方式与我们常见的表格类似,除了关系型数据库还有非关系型数据库;

关系型数据库和非关系型数据库的区别

1、数据存储方式不同。

关系型和非关系型数据库的主要差异是数据存储的方式。关系型数据天然就是表格式的,因此存储在数据表的行和列中。数据表可以彼此关联协作存储,也很容易提取数据。

与其相反,非关系型数据不适合存储在数据表的行和列中,而是大块组合在一起。非关系型数据通常存储在数据集中,就像文档、键值对或者图结构。你的数据及其特性是选择数据存储和提取方式的首要影响因素。

2、扩展方式不同。

SQL和NoSQL(非关系型数据库)数据库最大的差别可能是在扩展方式上,要支持日益增长的需求当然要扩展。

要支持更多并发量,SQL数据库是纵向扩展,也就是说提高处理能力,使用速度更快速的计算机,这样处理相同的数据集就更快了。

因为数据存储在关系表中,操作的性能瓶颈可能涉及很多个表,这都需要通过提高计算机性能来客服。虽然SQL数据库有很大扩展空间,但最终肯定会达到纵向扩展的上限。而NoSQL数据库是横向扩展的。

而非关系型数据存储天然就是分布式的,NoSQL数据库的扩展可以通过给资源池添加更多普通的数据库服务器(节点)来分担负载。

3、对事务性的支持不同。

如果数据操作需要高事务性或者复杂数据查询需要控制执行计划,那么传统的SQL数据库从性能和稳定性方面考虑是你的最佳选择。SQL数据库支持对事务原子性细粒度控制,并且易于回滚事务。

虽然NoSQL数据库也可以使用事务操作,但稳定性方面没法和关系型数据库比较,所以它们真正闪亮的价值是在操作的扩展性和大数据量处理方面。

关系型数据库和非关系型数据库的区别:优缺点总结

关系型优缺点:

优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。

缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
————————————————————————————————

非关系型优缺点:

优点:
1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等, 文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基 础类型
2、速度快:使用内存存储数据,而关系型数据库只能使用硬盘
3、高扩展性

缺点:
1、不提供sql支持,学习和使用成本较高
2、无事务处理
3、数据结构相对复杂,复杂查询方面稍欠
4、只适合存储一些较为简单的数据,对于需要进行较复杂查询的数据, 关系型数据库显的更为合适
5、不适合持久存储海量数据

————————————————————————————————

关系型数据库和非关系型数据库的解释:

这里我们主要研究mysql,非关系型数据库可以网上搜索自行理解!

MySQL的历史了解:

只做了解即可:
MySQL从最初的1.0、3.1到后来的8.0,发生了各种各样的变化。被Oracle收购后,MySQL的版本演化 出了多个分支,除了需要付费的MySQL企业版本,还有很多MySQL社区版本。还有一条分支非常流行 的开源分支版本叫Percona Server,它是MySQL的技术支持公司Percona推出的,也是在实际工作中经 常碰到的。Percona Server在MySQL官方版本的基础上做了一些补丁和优化,同时推出了一些工具。另 外一个非常不错的版本叫MariaDB,它是MySQL的公司被Oracle收购后,MySQL的创始人Monty先生,按原来的思路重新写的一套新数据库,同时也把 InnoDB 引擎作为主要存储引擎,也算MySQL的分支。

mysql的安装:

注意:此步骤对于新学者来说非常艰难,一定要小心安装,其中有很多注意事项,如果安装不成功,卸载它也是非常麻烦的。如果卸载不干净,下次安装时,会直接失败!

我因为主要讲解sql语句,所以这个步骤直接省略了,同时向大家推荐几个不错的安装文章,按照他们的文档安装即可:同时如果有问题,也可以在评论区留言,或者私信,我会帮你解决:

安装文档1

安装文档2

如果觉得这两个文档不好,也可以直接自己搜索“mysql安装”即可;

MySQL的启动:

安装完成后我们就可以尝试启动了:
一共有两种方法启动:

方式一:

右击电脑图标–管理–服务
在这里插入图片描述
可以通过这个方法,启动服务,这里你们的可能不是mysql80,也有可能是其他的,以自己命名的为准;

————————————————————————————

方式二:

电脑键盘按下win键的同时按下R:就会出现弹窗:并在里面输入cmd
在这里插入图片描述
随后输入以下语句即可
在这里插入图片描述
在这里插入图片描述

登录MySQL

图标登录:

在初次安装后,我们点击电脑上的win图标:
在这里插入图片描述

就可以看到:双击第一个
在这里插入图片描述

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

命令行登录:

环境配置

首先,我们要先开始配置环境变量,可能有些兄弟在安装的 时候已经配置过了,可以直接跳过,没有配过的,配置一下:

这个很有用,可以帮助我们使用命令符的时候,可以让电脑快速找到启动程序,这样我们就不用跳到安装目录中启动了;

首先找到我们的mysql的安装路径:
按照图片找到如下路径:
在这里插入图片描述
找到后,我们用鼠标点击一下上面的地址栏目,他会自动选中,我们Ctrl+c复制一下:
在这里插入图片描述
随后右击电脑属性、点击高级系统设置
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
把地址放进去就可以了!点击确定,然后外面的页面也是点击确定;

——————————————————————————————

命令行登入:

在这里插入图片描述
上面就是命令格式,进入黑窗口的方法:

进入黑窗口:

点击搜索图标:
在这里插入图片描述输入“命令”
在这里插入图片描述可以选择打开,也可以选择以管理员身份运行!

SQL语法格式:

  1. SQL语句可以单行或者多行书写,以;结尾(Navicat中可以不写;)
  2. 可以使用空格或者缩进增加语句的可读性
  3. MySQL中使用SQL不区分大小写,一般数据库名,表名,列名小写

SQL注释方式

– 空格 单行注释
/* */ 多行注释
#MySQL特有的单行注释

SQL分类:重点(有印象即可,面试会问几率大)

数据查询语言(Data Query Language,DQL):DQL主要用于数据的查询,其基本结构是使用SELECT子句,FROM子句和WHERE子句的组合来查询一条或多条数据
————————————————————————
数据操作语言(Data Manipulation Language,DML):DML主要用于对数据 增加、修改和删除的操作,其主要包括:
INSERT:增加数据 UPDATE:修改数据 DELETE:删除数据
——————————————————————————
数据定义语言(Data Definition Language,DDL):DDL主要用针对是数据库对象(数据库、表、索引、视图、触发器、存储过程、函数)进行创建、修改和删除操作。其主要包括:
CREATE:创建 ALTER:修改 DROP:删除
————————————————————————————
数据控制语言(Data Control Language,DCL):DCL用来授予或回收访问数 据库的权限,其主要包括:
GRANT:授予用户某种权限 REVOKE:回收授予的某种权限
——————————————————————
事务控制语言(Transaction Control Language,TCL):TCL用于数据库的事务管理。其主要包括:
START TRANSACTION:开启事务 SET TRANSACTION:设置事务的属性
COMMIT:提交事务 ROLLBACK:回滚事务

Navicat安装使用

Navicat是一款比较不错的数据库管理软件,因为我们使用小窗口,用起来比较费劲和繁琐,所以Navicat更容易,因为软件收费,所以请严格按照指导文档安装

安装指导

委婉黛西

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DNCS高级工程师

你的创作是我打赏的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值