前言❤️❤️
hello hello💕,这里是洋不写bug~😄,欢迎大家点赞👍👍,关注😍😍,收藏🌹🌹
在JavaSE阶段编写的一些复杂的程序,都存在一个很大的缺陷,就是每次重新运行程序原来的所有信息都会消失
这就需要数据库的使用,把数据存在数据库中,这样即使电脑重启,这些数据也不会掉
🎇个人主页:洋不写bug的博客
🎇所属专栏:数据库
🎇铁汁们对于MySQL数据库的各种常用核心语法,都可以在上面的数据库专栏学习,专栏正在持续更新中🐵🐵,有问题可以写在评论区或者私信我哦~
MySQL就是一款数据管理系统,可以把它理解为是一款软件,用于管理数据
这款软件是免费的,在企业中使用十分广泛,因此这个专栏里学习数据库就学习MySQL数据库
当然,学习数据库主要学习的是SQL语言,不同数据库软件的 SQL 语言基础语法高度一致,因此就算使用其他数据库软件,也可以看这个专栏学习
1,MySQL数据库的下载
1,版本问题
首先说明一下,这里要安装的是MySQL数据库的8.0版本,如果你此时电脑上还没下载,那就直接看这篇博客的教程即可
如果以前已经下载过了MySQL数据库,可以看下版本,如果是8.0版本的,那就不需要再下载了
如果安装的是5.7版本,那建议先把5.7版本禁用,再根据教程下载8.0版本,初学数据库阶段建议电脑上只有一个版本的数据库
如果以前下载过,怎么看下载的是5.0还是8.0,又怎么禁用呢
这里以win11系统为例:
右键此电脑,点击管理

接着再点击服务,找M开头的,看以前的下载的MySQL数据库是哪个版本

这里主包提前下载了一个5.7版本的,给大家演示一下怎么禁用

我们这里直接右键点击这个服务,接着点击属性。

再将启动类型改为禁用即可

2,下载教程(链接)
通过网盘分享的文件:数据库软件
链接: https://pan.baidu.com/s/1E_AZXKjmzW5uPqWOIVdqMw?pwd=7m1e 提取码: 7m1e
传入的文件中有两个部分,一个是mysql安装包,一个是navicat安装包,这里先安装mysql

注:博主这里下载的时候可能有些部分和大家的不太一样,因为博主为了演示先下载了5.7版本
铁汁们可能第一次下载成5.7或者在一些地方下载失败,问题不大,这是很正常的
可以参考下面的第一次下载乱了怎么办,也可以通过这个来检查自己是不是第一次下载乱了
进来点到这个界面,我们选中左边每个地方的的最高版本,选中后会有个绿色的向右的箭头,点击箭头,就把左边的东西移到了右边的下载列表中
这里只需要安装两个,一个是MySQL Servers中的最新版本,一个是Application中的MySQL Workbench最新版,下面的其他的都不用下载

这里博主已经选到右面了,就显示灰色,没选就是黑色


绿箭头将MySQL Servers和Workbench选到右面的安装列表后
接着有Execute就点击Execute(安装),有next就点击next,一直点到需要设置密码的界面。
这里如果是第一次下载mysql,这里的端口号就默认是3306,也不需要更改

到密码的话,建议输入123456,以防后面密码忘了😄

第一次下载,可能不确定是否安装错了,数据库很多人第一遍安装都会有问题的😊
强烈建议按3的步骤试一下,画上一分钟时间看下是否安装正确
3,数据库安装包第一次下载乱了怎么办
我们第一次很容易下载乱了,有的界面不小心点错,或者不确定自己到底下载对了没有
再点击一下第一个安装包,就能查看数据库的安装情况

就会进入下面这样一个界面,只要MySQL Sever 8.7版本后面有Reconfigure,那么恭喜你,安装成功了🎉🎉
如果在这里把5.7也安装了,那就参照前面的内容把5.7给禁用即可(下面的图就是两个版本都安装了,就需要禁用一个)

如果第一次安装点错了,只安装了5.7版本,这时候再点击右面的Add,把8.0版本下载上即可:

点击add后,按next直到到达这个界面,在MySQL中选择8.0版本,在Application中选中MySQL Workbench
点击绿色的小箭头,移入右面的边框,然后下面有个Execute(安装),点击一下即可:

这个Port是端口号,这里默认是3306,但是如果前面已经下载过了5.7版本,那个默认也是3306,就会冲突,出现一个红色的感叹号,手动改成3308即可,接着再一直next,8.0数据库就装好了。

这里博主为了给大家演示,就装了两个数据库,在服务中一个设置为禁用,一个就是自动。:

4,可视化客户端

下载完第一个mysql数据库安装包后,就下载数据库客户端navicat,navicat下载点开安装包就一直next就可以了
2,数据库基础
1,基本介绍
数据结构跟数据库有什么关系呢?
数据结构是组织数据的一种方法
数据库就是使用了合适的数据结构来组织数据,方便用户写入和查询数据。
举个例子,像ArrayList集合可以保存数据,它是储存在内存中的,我们电脑一旦重启,这些数据就没有了。
而数据库也可以保存数据,是存储在硬盘中的。
硬盘:断电不丢数据,内存大,便宜,存储速度慢。
内存:断电丢数据,内存小,贵,存储速度快。
数据管理系统是非常多的,最强的数据库就是Oracle开发的数据库,但是要收费,因此使用者大多是世界顶尖公司
使用最广泛的就是刚刚下载的MySQL数据库,不用收费,在中小企业使用十分广泛
常用数据库如下:
- Oracle:甲骨文产品,适合大型项目,业内最强的数据库,没有之一,需要收费。
- MySQL:开源免费,最受欢迎的数据库,在中小企业中普及率非常高,属于甲骨文,主要用在电商,论坛等。
- PostgreSQL:加州大学伯克利分校计算机系开发的关系型数据库,可以免费使用,修改和分发。
- SQL Sever:微软推出的一款专业级数据库,与旗下的操作系统,编程环境配合使用,适用于中大型项目。
- SQLite:一款轻型的数据库,占用资源非常低,常用于嵌入式设备,手机 APP,桌面程序等场景。
2,关系型数据库
关系型数据库就是以行和列的形式来组织数据
它的核心用 “二维表” 存储数据,并通过 “关系” 组织数据间的逻辑联系
可以简单理解为存一些表格,以行和列的形式来存储数据,不同的表之间通过一些关系来连接起来:例如下面这里有个学生表,有个班级表
这两个表就通过班级编号来建立联系,不同表之间通过一些元素建立联系就是关系型数据库的一大核心特征
3,数据库服务器,数据库,表之间的关系
数据库服务器就是指在机器上安装了一个数据库管理系统(MySQL就是一个数据库管理系统)
注意数据库服务器是硬件 + 软件,我们的数据库服务器其实就是计算机。MySQL数据库就相当于是一个软件,这个软件管理着许多的数据库,每个数据库下又有很多表,如下图所示:

就拿学习通来举个例子
这里可能教务系统是一个数据库,知识论坛是一个数据库
那么每个数据库中保存了很多个数据表,用来记录信息,比如老师表,学生表
每个数据表中其实还有很多数据行,例如老师表中每个数据行存着老师的各种信息
总结一下,数据库服务器上运行着数据库管理软件,数据库管理软件管理着很多的数据库,每个数据库中有很多数据表,每个数据表中又有很多数据行
操作数据库时,需要在客户端(下文会介绍到)上写入一些指令,例如创建数据表,修改数据表等等,向服务器发出请求,服务器对相应数据库中的内容进行修改

4,文件配置
打开C盘,在查看中把隐藏的项目也选上(如果以前就已经选上了,就不用搞了)

接下来找到ProgrameData目录,在里面找到MySQL目录,打开后再找到MySQL8.0目录
打开找到一个为my.ini的配置文件,用来修改数据库配置设置,在初学阶段,是不需要改这个的(后面的博客会提到具体如何修改)

5,客户端工具
1,mysql
这个是很简单的一个命令行工具,初学时会在上面写代码
点击win键,在搜索栏搜索mySQL,就能找到这个命令行工具
打开后需要输入密码,才能使用命令行工具(密码就是前面在安装数据库时输入的)

输入下面指令,可以查看当前数据库的版本select version();
2,workbench
这个也只是演示一下有这个东西,平常也不会怎么用,因为Navicat的功能比workbench更强大
按win键,搜索一个叫MySQL Workbench的应用
打开点击链接8.0数据库,输入密码,就连接上了,

可以写个select version(),点击上面的那个闪电符号,就是运行的意思,就可以显示当前数据库的版本

3,Navicat
打开Navicat,点击左上角的连接,选择MySQL

这里连接一下数据库,连接名称随便命名
博主这里修改了一下端口号,因为博主为了演示下载了两个数据库
5.7版本的端口号是3306,8.0的只能改成3308了
正常只下载了8.0的话,端口都是3306,这里默认就会显示3306,无需修改
如果不确定端口号,可以打开数据库安装包,点击Reconfigure看一下即可

输完所有信息后接着点下左下角的测试连接,显示连接成功就可以了

这个主界面就是这样的:

6,SQL
SQL (Structured Query Language) 是结构化查询语言的简称,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库。
可以把它理解为是数据库管理语言,用来对数据库进行操作,不同数据库管理软件的基础SQL语言都是一样的SQL语言分为以下几类:
- DDL【Data Definition Language】数据定义语言,用来维护存储数据的结构 代表指令: create, drop, alter
- DML【Data Manipulation Language】数据操纵语言,用来对数据进行操作 代表指令: insert, delete, update, select
- DCL【Data Control Language】数据控制语言,主要负责权限管理和事务 代表指令: grant, revoke, commit
这些语言后面的博客中也都会逐渐提到
7,MySQL架构
- 首先,外部程序对数据库服务器发出操作指令
- 接着在连接层进行鉴权,判断是否允许连接
- 在服务层解析优化
- 接着就到达存储引擎层,这也是MySQL的核心,现在数据库广泛使用的引擎就是innoDB。
- 最后才是在文件上进行修改

结语💕💕
数据库部分相比C语言,JavaSE的学习,是要简单很多的🐵😄
有的学校老师可能上课演示时使用的是其他的数据库软件,但是不同数据库的基础SQL语言都是相同的,学会了用什么数据库都会操作
以上就是今天所有的内容啦~ 大家都学废了吗?完结撒花~ 🥳🎉🎉
MySQL安装与数据库基础详解

513





