【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]节点下的配置


可执行程序 mysqld 是服务端程序,跟其他客户端程序不一样,运行就意味着MYSQL服务启动了;

 mysqld 节点下面的所有配置,都是服务于MYSQL的配置;d的意思是daemon,就是“守护”的意思,服务器启动,[mysqld]也跟着启动,和服务器的生命周期是一样的,只在后台运行,服务器关闭, mysqld 也会跟着关闭;


接下来,我们需要修改一些配置文件;这些配置修改的时候,我们需要备份一份my.ini 的原始文件:

通常我们会配置一些常用的选项,在修改配置文件之前,一定要把原来的配置文件备份一份,防止改错了导致服务器启动失败,如果改错了可以快速回退到修改前的版本;


我们来看一下,配置文件中的哪一些配置需要我们去修改:


1. 如果要修改端口号,直接在这里修改即可(1025—65535,因为1024之前是系统占用的一些端口),开发机应该是不需要修改的,但是在线上部署的时候,有些对外网公布端口号的时候,一般都是需要修改的,因为3306是默认端口,在网络扫描的时候会扫描这个端口,扫描会给系统带来一些安全的隐患;


    2. 配置数据目录的路径(强烈建议改,否则一些大数据会占用大量内存空间)  





如果出现没有权限修改的问题,可以把文件拖拽到桌面进行修改,修改完成并保存后,再拖拽回原文件;


跟配置文件目录有一个同级目录Data:


复制Data,然后粘贴到刚刚修改的目标目录中


复制好后,修改目录的名字为刚刚数据目录的目录名


因为我们设置了一些用户名和密码,这些密码都会存储在系统库中,就是在默认的数据目录中,所以整体拷贝刚刚的Data到目标路径中,就不会出错


  • 存储引擎用于处理数据,MYSQL怎么解析,怎么存储,用什么数据结构来存储,都是由存储引擎决定的,每一个存储引擎对数据的增删改查是不一样的;
  • 存储引擎是MYSQL的核心;



不同版本的字符集是不一样的,如果配置不好,可能无法将中文写入数据库中,默认在 8.0版本是 utf8mb4 这个字符编码集,涉及到解码编码的,都会指定编码集,类似于协议


强烈建议手动指定编码集,MYSQL5.7默认编码集是latin1,意味着不支持中文,无法写入中文,如果要写入中文,一定要在配置文件中手动指定编码集为utf8mb4;在MYSQL8.0默认编码集是utf8mb4,不过不管是哪个版本的MYSQL,都建议手动指定


修改好配置后,重新启动MYSQL

重新启动后,也会在我们指定的数据目录中,找到相应的Data目录,就可以完成相应读取了


我们重新登录一下:

访问成功,就说明没有问题了;这就是整个安装过程;


    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 非关系型数据库    


数据库引擎排名


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/927167.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

shell编程基础笔记

目录 echo改字体颜色和字体背景颜色 bash基本功能: 运行方式:推荐使用第二种方法 变量类型 字符串处理: 条件判断:(使用echo $?来判断条件结果,0为true,1为false) 条件语句&a…

maxun爬虫工具docker搭建

思路来源开源无代码网络数据提取平台Maxun 先把代码克隆到本地(只有第一次需要) git clone https://github.com/getmaxun/maxun.git 转到maxun目录 cd maxun 启动容器 docker-compose --env-file .env up -d 成功启动六个容器 网址 http://local…

redis揭秘-redis01-redis单例与集群安装总结

文章目录 【README】【1】安装单机【1.1】安装环境【1.2】安装步骤 【2】redis集群主从模式配置【2.1】集群架构【2.2】redis集群主从模式搭建步骤【2.3】redis集群主从模式的问题(单点故障问题) 【3】redis集群哨兵模式配置【3.1】集群架构【3.2】redis…

构建高可用系统设计OpenStack、Docker、Mesos和Kubernetes(简称K8s)

如果构建高可用、高并发、高效运维的大型系统 大型系统架构设计包括业务层设计、服务层设计、基础架层设计、存储层设计、网络层协同设计来完成。 一、业务层 根据主要业务范畴的分类和特征提取,抽象出独立的业务系统,分别统计系统的用户角色群体、访…

mrRobot解题过程

一、靶场环境需要桥接网络 不建议使用校园网,因为使用校园网进行主机探索的时候会出现数不完的主机。 arp-scan -l若是流量少只能用校园网,便在这里看靶机ip 二、端口扫描 我习惯用fscan了(需要自己安装),你们用nma…

解决“ VMware Tools for Windows Vista and later“报错问题

今天,在Win7虚拟机上安装VMware Tools,报"VMware Tools for Windows Vista and later"证书错误,如图(1)所示: 图(1) 虚拟机报" VMware Tools for Windows Vista and later"证书错误 问题原因:VMwa…

C-操作符

操作符种类 在C语言中,操作符有以下几种: 算术操作符 移位操作符 位操作符 逻辑操作符 条件操作符 逗号表达式 下标引用,函数调用 拓展:整型提升 我们介绍常用的几个 算术操作符 (加)&#xff…

时频转换 | Matlab基于S变换S-transform一维数据转二维图像方法

目录 基本介绍程序设计参考资料获取方式基本介绍 时频转换 | Matlab基于S变换S-transform一维数据转二维图像方法 程序设计 clear clc % close all load x.mat % 导入数据 x =

物联网——WatchDog(监听器)

看门狗简介 独立看门狗框图 看门狗原理:定时器溢出,产生系统复位信号;若定时‘喂狗’则不产生系统复位信号 定时中断基本结构(对比) IWDG键寄存器 独立看门狗超时时间 WWDG(窗口看门狗) WWDG特性 WWDG超时时间 由于…

Socket编程:UDP网络编程项目

目录 一、回显服务器 二、翻译器 三、聊天室 一、回显服务器 项目介绍:使用UDPIPv4协议进行Linux网络编程,实现回显服务器和客户端 功能介绍:客户端发送数据,经过服务端再返回到客户端,输出数据 源代码&#xff1…

Hbase2.2.7集群部署

环境说明 准备三台服务器,分别为:bigdata141(作为Hbase主节点)、bigdata142、bigdata143确保hadoop和zookeeper集群都先启动好我这边的hadoop版本为3.2.0,zookeeper版本为3.5.8 下载安装包 下载链接:In…

STM32 BootLoader 刷新项目 (十二) Option Byte之FLASH_OPTCR-命令0x58

STM32 BootLoader 刷新项目 (十二) Option Byte之FLASH_OPTCR-命令0x58 STM32F407芯片的OPTION Byte全面解析 STM32F407芯片是STMicroelectronics推出的一款功能强大的微控制器,广泛应用于工业控制、通信和消费电子等领域。其中,OPTION Byte&#xff0…

Matlab 绘制雷达图像完全案例和官方教程(亲测)

首先上官方教程链接 polarplothttps://ww2.mathworks.cn/help/matlab/ref/polarplot.html 上实例 % 定义角度向量和径向向量 theta linspace(0, 2*pi, 5); r1 [1, 2, 1.5, 2.5, 1]; r2 [2, 1, 2.5, 1.5, 2];% 绘制两个雷达图 polarplot(theta, r1, r-, LineWidth, 2); hold …

【C/C++】内存管理详解:从new/delete到智能指针的全面解析

文章目录 更多文章C/C中的传统内存管理方式new和delete运算符malloc和free函数传统内存管理的弊端 智能指针的崛起智能指针的定义与作用C11引入的标准智能指针 详解C标准智能指针std::unique_ptr特点使用方法适用场景 std::shared_ptr特点使用方法适用场景 std::weak_ptr特点使…

Python实现2048小游戏

2048是一个单人益智游戏,目标是移动和合并数字,以达到2048。 1. 实现效果 Python实现2048小游戏 2. 游戏规则 简单地理解一下规则 基本规则: 4x4棋盘,每个格可包含一个2的倍数的数字,初始时为空,表示0。…

Wireshark常用功能使用说明

此处用于记录下本人所使用 wireshark 所可能用到的小技巧。Wireshark是一款强大的数据包分析工具,此处仅介绍常用功能。 Wireshark常用功能使用说明 1.相关介绍1.1.工具栏功能介绍1.1.1.时间戳/分组列表概况等设置 1.2.Windows抓包 2.wireshark过滤器规则2.1.wiresh…

像素流送api ue多人访问需要什么显卡服务器

关于像素流送UE推流,在之前的文章里其实小芹和大家聊过很多,不过今天偶然搜索发现还是有很多小伙伴,在搜索像素流送相关的问题,搜索引擎给的提示有这些。当然这些都是比较短的词汇,可能每个人真正遇到的问题和想获取的…

基于Vue3+Element Plus 实现多表单校验

使用场景 表单校验在日常的开发需求中是一种很常见的需求,通常在提交表单发起请求前校验用户输入是否符合规则,通常只需formRef.value.validate()即可校验,但是,例如一些多步骤表单、动态表单、以及不同的用户角色可能看到不同的表…

ONVIF协议网络摄像机客户端使用gsoap获取RTSP流地址GStreamer拉流播放

什么是ONVIF协议 ONVIF(开放式网络视频接口论坛)是一个全球性的开放式行业论坛,旨在促进开发和使用基于物理IP的安全产品接口的全球开放标准。 ONVIF规范的目标是建立一个网络视频框架协议,使不同厂商生产的网络视频产品完全互通。…

【Datawhale组队学习】模型减肥秘籍:模型压缩技术6——项目实践

NNI (Neural Network Intelligence) 是由微软开发的一个开源自动化机器学习(AutoML)库,用于帮助研究人员和开发人员高效地进行机器学习实验。它提供了一套丰富的工具来进行模型调优、神经网络架构搜索、模型压缩以及自动化的超参数搜索。 1…