【MySQL — 数据库基础】MySQL的安装与配置 & 数据库简单介绍

数据库基础


本节目标

  • 掌握关系型数据库,数据库的作用
  • 掌握在Windows和Linux系统下安装MySQL数据库
  • 了解客户端工具的基本使用和SQL分类
  • 了解MySQL架构和存储引擎

1. 数据库的安装与配置


1.1 确认MYSQL版本



处理无法在 cmd 中使用 mysql 命令的情况,就需要去配置环境:


(2) 官网下载相应的版本


MySQL官网






下载历史版本


停止之后,原来版本的MySQL占用的资源和端口就会释放,就可以让新下载的MySQL来使用资源和端口;


1.2 安装数据库服务


window环境下各种环境安装及使用


    1. 安装包:





确认之后,可以根据相应的安装路径去查看是否有文件



设置密码之后,来到下面的页面:



在配置第一个错误日志路径时,可以在本机上创建一个文件夹,来存放日志






运行数据库后,有对应操作,就会在这些设置好的路径生成日志;





1.3 检查数据库服务


安装和配置都完成之后,我们需要到服务列表中检查一下:

在服务中,刷新之后,可以看到MYSQL80(刚刚配置时的serverID)是一个正在运行的状态



也可以先打开文件位置


一般使用 UniCode 编码的快捷方式打开MYSQL

1.4 通过配置文件修改默认配置


如果以后要修改其他大版本,强烈建议修改;


  • 我们之前配置数据目录的时候,默认的路径是在C盘;
  • 数据目录是MYSQL工作的主要目录,非常重要,所有的数据都会在这个目录中存储,如果它在系统盘,我们就需要手动指定它到其他的目录;
  • 刚刚没有修改,是因为它会在这个目录中,自动生成一个配置文件,我们需要找到这个配置文件,先打开文件看看目录结构是什么;


MYSQL全局配置文件


我们可以使用文本编辑器/记事本打开这个配置文件:

当MYSQL启动的时候,会读取这个文件的内容,作为启动的默认值,默认值要在这个文件中配置,所以每次改动默认配置,都需要重启一下MYSQL服务,以便配置生效;


如果是以#开头,就表示注释,所有客户端相关的配置

什么是客户端程序呢?我们打开安装目录:

这些以exe为后缀的程序,除了极个别的,都是客户端程序,它们有不同的作用,要连接服务器,要备份服务器,要导出,要查看日志,都是通过这些客户端程序



我们查看快捷方式中的属性,可以发现快捷方式的目标:


只要mysql.exe程序运行,就会读取配置文件[client]节点下的这些相应的配置,如果要指定不同的端口号,也需要加不同的选项,因为MYSQL服务器默认开启的是3306端口,所以默认的端口号是3306


client\]针对所有客户端程序,所有客户端程序,都会读取\[client\]节点下的配置 ![](https://i-blog.csdnimg.cn/direct/e46e9addbecd45d8a91a1fa239430f8f.png) *** ** * ** *** 可执行程序 mysqld 是服务端程序,跟其他客户端程序不一样,运行就意味着MYSQL服务启动了; ![](https://i-blog.csdnimg.cn/direct/6e3a63c5d2744ddaa2fa579a3a773b13.png) mysqld 节点下面的所有配置,都是服务于MYSQL的配置;d的意思是daemon,就是"守护"的意思,服务器启动,\[mysqld\]也跟着启动,和服务器的生命周期是一样的,只在后台运行,服务器关闭, mysqld 也会跟着关闭; *** ** * ** *** 接下来,我们需要修改一些配置文件;这些配置修改的时候,我们需要备份一份my.ini 的原始文件: ![](https://i-blog.csdnimg.cn/direct/b7d4594cb7e5470d8b225960984d28f9.png) ![](https://i-blog.csdnimg.cn/direct/4131d90d2c04414c9fe45b1a9fd06c25.png) **通常我们会配置一些常用的选项,在修改配置文件之前,一定要把原来的配置文件备份一份,防止改错了导致服务器启动失败,如果改错了可以快速回退到修改前的版本;** *** ** * ** *** 我们来看一下,配置文件中的哪一些配置需要我们去修改: *** ** * ** *** 1. 如果要修改端口号,直接在这里修改即可(1025---65535,因为1024之前是系统占用的一些端口),开发机应该是不需要修改的,但是在线上部署的时候,有些对外网公布端口号的时候,一般都是需要修改的,因为3306是默认端口,在网络扫描的时候会扫描这个端口,扫描会给系统带来一些安全的隐患; ![](https://i-blog.csdnimg.cn/direct/f447a617497d42c999ea864737754497.png) *** ** * ** *** **2. 配置数据目录的路径(强烈建议改,否则一些大数据会占用大量内存空间)** ![](https://i-blog.csdnimg.cn/direct/4f0ad8411de5408a9c62a4ec3968103c.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/cc38cbae79a24141a7ac4cb3d2cb4692.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/b1455d29c1954bcaa568725f052d5d9a.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/cb1da95290e841fbb3774c5a03bb42f3.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/b44f629e458742468f2527eb763221dd.png) ![](https://i-blog.csdnimg.cn/direct/e82b273060ad4e6a997419e014a02ec5.png) 如果出现没有权限修改的问题,可以把文件拖拽到桌面进行修改,修改完成并保存后,再拖拽回原文件; *** ** * ** *** 跟配置文件目录有一个同级目录Data: ![](https://i-blog.csdnimg.cn/direct/06650d6d1f2146a9ae8b79584773cb58.png) *** ** * ** *** 复制Data,然后粘贴到刚刚修改的目标目录中 ![](https://i-blog.csdnimg.cn/direct/dc89ac60ee104eec92865c3c9fdb6024.png) *** ** * ** *** 复制好后,修改目录的名字为刚刚数据目录的目录名 ![](https://i-blog.csdnimg.cn/direct/f986fe2f9fe94b4787b9da2905e86b83.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/c0a5df208fe3417db211377fbe13d667.png) **因为我们设置了一些用户名和密码,这些密码都会存储在系统库中,就是在默认的数据目录中,所以整体拷贝刚刚的Data到目标路径中,就不会出错** *** ** * ** *** * 存储引擎用于处理数据,MYSQL怎么解析,怎么存储,用什么数据结构来存储,都是由存储引擎决定的,每一个存储引擎对数据的增删改查是不一样的; * 存储引擎是MYSQL的核心; ![](https://i-blog.csdnimg.cn/direct/bf4542db22af4f8e89cf943bad59bd3d.png) *** ** * ** *** ![](https://i-blog.csdnimg.cn/direct/6b31d30409e240b898763037413e5900.png) *** ** * ** *** 不同版本的字符集是不一样的,如果配置不好,可能无法将中文写入数据库中,默认在 8.0版本是 utf8mb4 这个字符编码集,涉及到解码编码的,都会指定编码集,类似于协议 ![](https://i-blog.csdnimg.cn/direct/19e7e75ced9c42e99c4a9a5a4488cd6c.png) *** ** * ** *** 强烈建议手动指定编码集,MYSQL5.7默认编码集是latin1,意味着不支持中文,无法写入中文,如果要写入中文,一定要在配置文件中手动指定编码集为utf8mb4;在MYSQL8.0默认编码集是utf8mb4,不过不管是哪个版本的MYSQL,都建议手动指定 ![](https://i-blog.csdnimg.cn/direct/67a3193c61514cbe8681a2a914d5cd74.png) *** ** * ** *** 修改好配置后,重新启动MYSQL ![](https://i-blog.csdnimg.cn/direct/7cb6987fdcbe4382a098e8a59f18fcdf.png) 重新启动后,也会在我们指定的数据目录中,找到相应的Data目录,就可以完成相应读取了 ![](https://i-blog.csdnimg.cn/direct/9e771413e4b04543ab73d9cbdef7c280.png) *** ** * ** *** 我们重新登录一下: ![](https://i-blog.csdnimg.cn/direct/74fbc93758ea40a7913d399bc7165895.png) 访问成功,就说明没有问题了;这就是整个安装过程;


2.数据库简介


2.1 什么是数据库


数据库是20世纪60年代末发展起来的一项重要技术,已经成为计算机科学与技术的一个重要分支。数据库技术主要是用来解决数据处理的非数值计算问题,数据处理的主要内容是数据的存储、查询、修改、排序和统计等。


2.2 为什么要使用数据库


|----------|------------------------------------------------|
| 1.数据持久化 | 数据库可以将数据保存在存储介质中,即使应用程序关闭或服务器重启,数据也不会丢失。 |
| 2.数据结构化 | 数据库能够以结构化的方式存储数据,使得数据易于管理和查询。 |
| 3.数据完整性 | 数据库管理系统(DBMS)提供了数据完整性的保障,确保数据的准确性和一致性。 |
| 4.并发控制 | 数据库可以处理多个用户或进程同时访问和修改数据,同时确保数据的一致性。 |
| 5.安全性 | 数据库提供了多种安全机制,如访问控制、加密等,保护数据不被未授权访问。 |
| 6.可扩展性 | 随着数据量的增长,数据库可以水平或垂直扩展,以适应不断增长的数据需求。 |
| 7.备份和恢复 | 数据库支持数据的备份和恢复,以防数据丢失或损坏。 |
| 8.查询优化 | 数据库系统提供了高效的查询优化器,可以快速执行复杂的查询操作。 |
| 9.事务管理 | 大部分关系型数据库都支持事务,确保一系列操作要么完全成功,要么完全失败,提高了操作的可靠性。 |
| 10.多用户支持 | 数据库允许多个用户同时访问和操作数据,适合多用户环境。 |


2.3 主流数据库


2.3.1 关系型数据库


什么是关系型数据库


关系型数据库是指采用了关系模型来组织数据的数据库,以行和列的形式存储数据。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。

每个表中的每一条记录称为一行数据,每一个数据行由一个或多个列组成;


关系型数据库种类



2.3.2 非关系型数据库


数据库引擎排名


3. 数据库服务器,数据库与表之间的关系


  • 数据库服务器是指在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,
  • 一般开发人员会针对每一个应用创建一个数据库。
  • 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。
  • 数据库服务器、数据库和表的关系如下:

相关推荐
wirepuller_king17 分钟前
创建Linux虚拟环境并远程连接,finalshell自定义壁纸
linux·运维·服务器
这个懒人19 分钟前
深入解析Translog机制:Elasticsearch的数据守护者
数据库·elasticsearch·nosql·translog
Yan-英杰28 分钟前
【百日精通JAVA | SQL篇 | 第二篇】数据库操作
服务器·数据库·sql
天天向上杰43 分钟前
面基JavaEE银行金融业务逻辑层处理金融数据类型BigDecimal
java·bigdecimal
闪电麦坤951 小时前
C#:base 关键字
开发语言·c#
Mason Lin1 小时前
2025年3月29日(matlab -ss -lti)
开发语言·matlab
风123456789~1 小时前
【Linux运维】查询指定日期的上月
linux·运维·服务器
请来次降维打击!!!1 小时前
优选算法系列(5.位运算)
java·前端·c++·算法
用键盘当武器的秋刀鱼1 小时前
springBoot统一响应类型3.5.1版本
java·spring boot·后端
NineData1 小时前
NineData云原生智能数据管理平台新功能发布|2025年3月版
数据库