【JavaEE基础学习打卡04】JDBC之MySQL数据库安装

目录


前言

📜 本系列教程适用于JavaWeb初学者、爱好者,小白白。我们的天赋并不高,可贵在努力,坚持不放弃。坚信量最终引发质变,厚积薄发。

🚀 文中白话居多,尽量以小白视角呈现,帮助大家快速入门。

🎅 我是 蜗牛老师 ,之前网名是 Ongoing蜗牛,人如其名,干啥都慢,所以更新也慢。希望大家多多支持,让我动力十足!

接下来我们要学习 Java EE 中的数据库连接 API,毕竟数据是存储在数据库中,我们要使用 Java 编程去操作数据库中的数据,就要用到 JDBC。既然学习 JDBC 去操作数据库,就需要现在我们本地安装数据库,这里我们使用目前最流行的数据库 MySQL。本文学习如何下载安装 MySQL 服务,安装 MySQL 客户端。


一、JDBC与数据库

在 Java EE 中,有 Java Database Connectivity API,翻译过来就是 Java 数据库连接 API,简称 JDBC。它是使用 Java 代码连接数据库并进行数据操作。所以学习 JDBC 要有数据库相关的知识及会一些简单的 SQL 语法。

数据库是指用于存储和管理数据的系统软件。它是一个结构化数据的集合,可以通过计算机系统进行访问、管理和更新。数据库提供了一种有效的方式来组织和存储大量数据,并提供了各种功能来处理和管理这些数据。

数据库可以按照不同的存储方式进行分类,常见的数据库类型包括关系型数据库(例如 Oracle、MySQL、PostgreSQL)、非关系型数据库(例如 MongoDB、Redis)和图形数据库(例如 Neo4j)。每种类型的数据库都有其特定的优势和适用场景。

  • 关系型数据库采用表格的形式结构化数据,并使用事先定义的模式(Schema)来描述数据的结构和关系。它们支持丰富的查询语言(如SQL)和复杂的数据操作,适用于需要严格数据一致性、事务支持和复杂查询的应用。
  • 非关系型数据库则以不同的方式存储数据,例如键值对、文档、列族等形式。它们通常具有高度可伸缩性、灵活的数据模型和高吞吐量,适用于需要处理大量非结构化数据、高并发读写和分布式存储的应用。
  • 图形数据库则专注于处理复杂的图形结构数据,如社交网络关系、知识图谱等。它们使用图形模型来表示和存储数据,并提供了强大的图形查询语言和算法,适用于需要深入分析和挖掘图形数据关系的应用。

数据库在各个领域广泛应用,包括企业管理系统、电子商务、金融服务、物联网、科学研究等。它们为应用程序提供了可靠的数据存储和管理能力,帮助用户有效地存储、查询、修改和分析数据。

数据库是我们 Java Web 项目存储数据的地方,常用的是关系型数据库,这时使用 SQL 进行数据库操作就不可避免。所以提前告知:SQL 很重要,建议重点学习哦。

二、MySQL数据库

1.MySQL数据库

MySQL 官网:https://www.mysql.com/

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL 是最好的 RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一 。

MySQL 是一种开源的关系型数据库管理系统,它是一个客户端-服务器型的数据库管理系统,使用标准的 SQL 语言进行访问和操作。

MySQL 的优点包括:

  • 体积小、速度快、总体拥有成本低,开源;
  • 支持多种操作系统;
  • 是开源数据库,提供的接口支持多种语言连接操作;
  • MySQL 的核心程序采用完全的多线程编程。

2.MySQL服务下载安装

MySQL 服务下载安装,请参考以下这篇博文,详细记录了 MySQL 服务如何从官方下载,如何安装到 Windows 系统中,如何验证是否安装成功。

https://blog.csdn.net/Li_Ya_Fei/article/details/104292170

这里对 MySQL 服务下载安装整个流程进行简单梳理。

  • 建议在 MySQL 官方下载,官方网址是:https://www.mysql.com/cn/
  • 要明确下载的 MySQL 服务版本是社区版:MySQL Community Server(就找它下载)
  • 下载页面选择 MySQL 安装版,个人认为安装版比解压版要省事儿多了。
  • 博文中下载的版本是8.0.19,大家可以下载更高版本,比如8.0.30。但是不建议下载8.1.0版本,该版本最近发布,且有不少的新特性,稳定性有待验证。我们使用8.0版本足以。
  • 安装时选择仅服务器安装即可(Server only),其他没有必要。
  • 安装过程可能需要一些必要环境,如果没有,会在线下载安装,注意提示信息。(英语看不懂就查)
  • 产品配置时要注意 MySQL 数据端口号默认是3306。
  • 要记住自己配置的 Root 这个账号的密码,建议简单点,学习用,没人盗你号。
  • 也要知道配置时要将 MySQL 添加到 Windows 服务中,服务名默认即可。
  • 最后安装时可以出现×,不要着急,不要气馁,需要仔细查看报错信息,找线索,各种资料查。

安装完成后,我们可以找到如下图的快捷方式:

这个比较重要,双击打开,我们可以看到自己安装了哪些产品,可以在界面右侧进行添加,修改,移除相关产品。满足了我们后期 MySQL 相关产品的变动需求。

安装成功后:

  • 默认安装目录:C:\Program Files\MySQL\MySQL Server 8.0
  • 默认存放数据库文件:打开隐藏的项目 -> C:\ProgramData\MySQL\MySQL Server 8.0\Data

安装成功后,我们就要进行验证了。很简单,找到 MySQL 命令行客户端的快捷方式。

点击任意一个打开,在客户端界面按照提示输入密码,回车,会出现如下图的界面。这时说明 MySQL 服务已经安装成功。

这里有一点需要大家重点理解,就是 MySQL 是一个 客户端-服务器 型的数据库管理系统。我们现在安装的 MySQL 服务,也就是说我们的电脑已经成为了一个运行 MySQL 数据库的服务器了,不仅我们自己可以连接该数据库进行操作,其他电脑也可以连接。如何连接操作呢?是通过客户端。上面的 MySQL 8.0 Command Line Client 就是命令行客户端,通过命令去连接操作数据库。

3.MySQL服务启动停止

MySQL 安装成功后,MySQL 服务就已经启动了,我们也就可以通过客户端连接到服务了。如果 MySQL 服务停止了,或是我们想要重启服务或停止服务,该如何操作呢?

我比较常用的方式是:Win+R 组合键打开运行。

在运行界面输入 services.msc 回车。

这时就可以打开 Windows 系统的服务界面,可以找到 MySQL80 服务,它就是我们安装的 MySQL 服务,可以通过界面的左侧对其停止/暂停/重启动操作。

当然使用其他方式也可以找到 Windows 系统的服务界面,方式也很多。

4.MySQL命令

接下来我们使用 SQL 来操作 MySQL 数据库。

SQL 是用于访问和处理数据库的标准的计算机语言。

SQL 是一种标准 - 但是...

SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。

不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。

这里要注意:除了 SQL 标准之外,大部分 SQL 数据库程序都拥有它们自己的私有扩展!也就是说 MySQL 有自己个扩展,特殊的地方。比如, MySQL 的分页 SQL 就和 Oracle 数据库的不一样。

接下来我们直接在命令行客户端进行操作。

(1) 显示数据库

先使用 show 语句查看服务器上存在哪些数据库:show databases;(注意,一条 SQL 语句要以 ; 结尾),这个语法很简单,show 单词就是显示的意思,database 单词是数据库,加 s 就是复数,显示所有的数据库。

可以看到在 MySQL 服务器上有9个数据库。

(2) 创建数据库

那么我们如何创建数据库呢?使用 create database 数据库名; 这个语法。也很简单 create 就是创建的意思,database 是数据库,然后定义创建的数据库名称即可。

大家再次使用 show databases; 查看服务器中的数据库,有没有创建的 test_mysql 这个数据库。

(3) 使用数据库

创建数据库但并不会选择它以供使用,如果要操作该数据库,就需要选择/使用数据库。语法为:use 数据库名; ,use 单词就是使用的意思。


(4) 查看数据库表

选择 test_mysql 数据库后,要查看该数据库下的表。语法为 show tables;show 显示,tables 多张表。

从结果可知道,该数据库中没有表,是空的。

(5) 创建数据库表

接下来我们创建数据库表,使用 create table 表名称...; 语句,执行以下 SQL。

sql 复制代码
create table student (name varchar(20), sex char(1), birth date, age tinyint);

创建表成功后,在显示该数据库中表,从结果可知 student 表创建成功。

(6) 描述语句

使用 describe 表名; 来查看表结构。


(7) 表中插入数据

这里使用到 insert 语句,执行以下 SQL 语句。

sql 复制代码
insert into student values ('张三', '男', '2000-03-30', 23);


(8) 查看表数据

查看表数据使用 select 语句,执行以下 SQL 语句。

sql 复制代码
select * from student;

这里只是展示练习了基本的 SQL,当然还有很多 SQL 语法,希望大家自行学习实践。SQL 很重要!

三、MySQL客户端安装

前面我们使用命令行客户端操作数据库,看起来很酷,一行一行命令的执行。但是它操作起来并不方便,不易于使用。我们一般会使用支持图形用户界面的客户端。

MySQL 图形界面的客户端有很多:

  • Navicat:Navicat 是一个桌面版 MySQL 数据库管理和开发工具,支持多个数据库系统,分为免费版和收费版。一般来说,免费版的功能就已经够了,而且比较容易上手,适合刚接触数据库的小白同学。
  • MySQL Workbench:MySQL Workbench 是 MySQL 官方出品的一款客户端工具,免费,功能强大,可支持数据库建模和设计、查询开发和测试、服务器配置和监视、用户和安全管理、备份和恢复自动化、审计数据检查以及向导驱动的数据库迁移。
  • SQLyog:SQLyog 是一款非常好用的 MySQL 数据库工具,功能非常齐全,可以快速直观地让您从世界的任何角落通过网络来维护远端的 MySQL 数据库。不过缺点高级功能收费。
  • dbForge Studio for MySQL:这个多功能客户端是一个 IDE(集成开发环境),其中包含 MySQL 数据库开发和维护所需的广泛特性,可以让你创建和执行查洵、开发和调试存储过程、自动化数据库对管理、通过直观的界面分析表数据等等。

上述几款客户端收费的肯定是好用,但是问题是它收费了。这里建议使用 MySQL 官方图形界面客户端 MySQL Workbench,功能强大,虽然感觉不是很好用,但是它肯定免费呀。

如何安装呢?找到 MySQL 安装器。就是以下的这个快捷方式:

打开后界面如下,这里我已经安装了 MySQL Workbench。

小伙伴安装可以点击右侧 Add...,找到 MySQL Workbench,点击到右侧的安装区域,下一步,按提示下载安装即可。

安装成功后,会有以下快捷方式:

打开 MySQL Workbench,创建连接,用来连接 MySQL 数据库。

  • 我们可以在 ① 处填写该连接的名称,随意起名。
  • 在 ② 处点击填写账户 root 的密码。
  • 然后就可以点击 ③ 处,测试连接是否正确。

登录后,就是如下图的界面,左侧是数据库,鼠标双击选择,可以新增数据库、新增表,新增表数据,查看表数据等等功能。不需要写 SQL,图形操作即可。大家自行探索吧。


总结

要到官网下载 MySQL 服务:社区版本 MySQL Community Server

下载后安装后,MySQL 自带命令行客户端

我们要使用 MySQL 自己的图形客户端 MySQL Workbench

我们要区别数据库服务和客户端软件

服务端就是数据库,客户端就是访问服务端的,服务端运行了,客户端才能访问到服务端。

还有 MySQL 的命令,大家一定要认真学习,多多练习,SQL 很重要!

相关推荐
shyの同学1 小时前
分布式ID生成方案:数据库号段、Redis与第三方开源实现
redis·分布式·mysql·id
月落星还在1 小时前
Redis 的过期策略与键的过期时间设置
数据库·redis·bootstrap
cg50174 小时前
MySQL数据库复杂的增删改查操作
数据库·mysql
虾球xz5 小时前
游戏引擎学习第147天
数据库·学习·游戏引擎
向上的车轮6 小时前
什么是时序数据库?有哪些时序数据库?常见的运用场景有哪些?
数据库·时序数据库
岱宗夫up7 小时前
【Python】Django 中的算法应用与实现
数据库·python·opencv·django·sqlite
比花花解语8 小时前
使用数据库和缓存的时候,是如何解决数据不一致的问题的?
数据库·缓存·数据一致性
YGGP8 小时前
Redis篇:基础知识总结与基于长期主义的内容更新
数据库·redis·缓存
KINICH ahau8 小时前
数据库1-2章
数据库·oracle
我想吃烤肉肉9 小时前
leetcode-sql数据库面试题冲刺(高频SQL五十题)
数据库·sql·leetcode