MySQL —— 初始数据库

数据库概念

在学习数据库之前,大家保存数据要么是在程序运行期间,例如:在学习编程语言的时候,大家写过的管理系统,运用一些简单的数据结构(例如顺序表)来组织数据,可是程序一旦结束,数据就会丢失,只有程序重新运行才能输入和查看数据,这是因为我们的数据是在内存上保存的,一旦遇到断电或者程序关闭等外部影响,我们的数据就会清空,这也是内存上数据的存储特点。

如果再高级一点,我们可以使用文件来保存数据,例如在C语言中的文件操作函数,我们可以将数据保存到文件上,或者使用 excel 来保存数据,但是文件保存数据不利于数据的查询和管理,也不利于存储海量的数据,文件在程序中不方便控制。

因此,数据库就顺势而生。

数据库是组织和保存数据的应用程序,底层使用了一些合适的数据结构对数据进行组织,方便用户进行增删查改的基本操作。

数据库把数据保存在磁盘中,实现对数据的持久化,每次程序重新加载数据就可以从数据库中读取以前的数据;
数据库还能提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

数据库的分类

关系型数据库(RDBMS):
是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个
关系型数据库就是由二维表及其之间的联系所组成的一个数据组织

举例:
一张图表由行和列组成:例如我们使用的 excel 表格

在这里插入图片描述

数据库里由很多的表格,这些表格之间存在某些联系,例如:一家商店使用一个数据库来保存数据,里面由很多张数据表,一张商品表包含商品名称、商品价格、商品库存、商品描述,一张客户需求表包括客户名称,需要的商品以及数量,金额,这两张数据表相辅相成,存在联系,而包含这两个数据表的数据库被称为关系型数据库。

关系型数据库基于标准的SQL,只是内部一些实现有区别。常用的关系型数据库如:
1.Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系统,收费。
2.MySQL:属于甲骨文,不适合做复杂的业务。开源、免费。
3.SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目。收费。

非关系型数据库:
不规定基于SQL实现。现在更多是指NoSQL数据库,如:
1.基于键值对(Key-Value):如 memcached、redis
2.基于文档型:如 mongodb
3.基于列族:如 hbase
4.基于图型:如 neo4j

在这里插入图片描述

MySQL

这里我使用的是 MySQL 8.0 大版本作为演示

配置文件的介绍

注意别乱删东西!!!!
修改配置文件记得要备份一份!!!

MySQL 的配置文件是 my.ini
在这里插入图片描述
如果你是默认安装路径,可以在 C:\ProgramData\MySQL\MySQL Server 8.0 这个路径找到这个配置文件,文件的打开方式,这里使用 VS2022 编译器打开,你也可以使用 VScode 或者记事板,编译器打开会有颜色标记,比较好看一些。


在这里插入图片描述
所有的客户端配置都在 client 结点下,注释以 # 开头,绿色的是注释。

port = 3306 表示MySQL 服务开启的是 3306 端口


在这里插入图片描述
mysqld 是MySQL 守护


在这里插入图片描述
下面的 datadir=D:/database/MySQL/data8.0 是我指定 MySQL 数据保存的位置,大家可以自行设置。


在这里插入图片描述
存储引擎,用来处理数据的,是 MySQL 的核心


在这里插入图片描述
log-output=FILE 通用日志保存在文件中

general-log=1 开启通用日志,记录每一条数据库操作

general_log_file=“路径” ,通用日志的路径

slow-query-log=1 慢查询日志,数据操作超过了指定的时间

slow_query_log_file="路径” 慢日志的路径

long_query_time=10 慢查询日志的执行超过时间

log-error=“路劲” ,错误日志的存储路劲

log-bin=“路径” 记录所有的修改操作,用于集群环境

server-id=1 用于集群环境,一个集群环境的 id 不能重复


客户端工具

我们使用 MySQL 数据库的时候,我们可以直接通过 cmd 窗口打开 MySQL ,前提是你配置好了环境变量:
win + r ,输入 cmd ,输入 mysql -uroot -p

解释一些这个命令行:mysql 表示要执行 mysql.exe 的程序,-u 表示使用(use),后面 root 是用户名(默认是 root),-uroot b表示登录用户名,-p 表示需要用户输入密码才能使用

在这里插入图片描述


我们还可以直接点击MySQL 自带的客户端工具:
在这里插入图片描述


我们还可以使用可视化客户端工具:例如MySQL workbench ,这个可以在官网自行下载

在这里插入图片描述
可以在里面连接数据库,然后编辑我们的SQL 语句

或者你可以使用其他可视化工具。

SQL

DDL数据定义语言,用来维护存储数据的结构
代表指令: create, drop, alter

DML数据操纵语言,用来对数据进行操作
代表指令: insert,delete,update
DML中又单独分了一个DQL,数据查询语言,代表指令: select

DCL数据控制语言,主要负责权限管理和事务
代表指令: grant,revoke,commit

注意:SQL 是针对数据库操作的语言,可以类比我们的编程语言,数据库是用来存放数据的,这两个是两个东西,大家不要混淆。

数据之间的关系

在这里插入图片描述

MySQL数据库中可以包含很多个数据库

上面除了 javatest 是我自己创建的数据库, 其他四个数据库是MySQL自带的数据库,不要删除!!!不要删除!!! 这些自带的数据库包含MySQL 自身的一些配置、性能、系统变量等信息,在不清楚它们的具体作用的时候,不要修改!!!不要修改!!!如果改错了或者删除了,MySQL就可能无法启动,如果你还没有备份的话,那就 请重装数据库吧!!!!

一句忠告:不要随便删除系统自带的东西,因为你伤不起!!!!!

每个数据库中,又可以包含很多张数据表。

在这里插入图片描述
一张表有很多个数据行,例如 张三—男—1——54185254501 这就是数据行

每个数据行由列组成,例如上面的数据行是由 学生姓名、性别、班级和联系方式这四个列组成的

总结:

在 MySQL 数据库中我们可以创建属于自己的数据库,每个数据库中会有很多张数据表,每张数据表有很多的数据行,每个数据行有很多个列组成。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

硬盘数据丢失不再怕,四大恢复工具帮你轻松逆转局面!

硬盘故障、误删文件、病毒攻击等原因导致数据丢失的情况时有发生。面对这种情况,如何高效、快速地进行硬盘数据恢复呢?接下来几款好用的数据恢复软件推荐给大家。 一、福昕数据恢复:全方位恢复,让数据无遗漏 链接:ww…

Windows(Win10、Win11)本地部署开源大模型保姆级教程

目录 前言1.安装ollama2.安装大模型3.安装HyperV4.安装Docker5.安装聊天界面6.总结 点我去AIGIS公众号查看本文 本期教程用到的所有安装包已上传到百度网盘 链接:https://pan.baidu.com/s/1j281UcOF6gnOaumQP5XprA 提取码:wzw7 前言 最近开源大模型可谓闹…

观测器控制仿真案例详解(s-function函数)

目录 一、弹簧-质量-阻尼系统1. 系统状态空间方程2. 观测器状态空间方程 二、仿真(Simulink s-function函数)1. 搭建Simulink仿真模型2. s-function函数代码3. 仿真效果 控制理论–观测器设计 一、弹簧-质量-阻尼系统 系统参数: m 1 , K 1 , B 0.5 m 1\,, K 1…

【前端面试题】后端一次性返回10w条数据,该如何渲染?

后端一次返回 10w 条数据,本身这种技术方案设计就不合理。 问题分析: JS 支持处理10w 条数据,但 DOM 一次渲染 10w 条数据,可能会卡顿,所以需想办法减少 DOM 渲染 若非要实现,则可以考虑以下两种方案 自…

【C语言】程序环境,预处理,编译,汇编,链接详细介绍,其中预处理阶段重点讲解

目录 程序环境 翻译环境 1. 翻译环境的两个过程 2. 编译过程的三个阶段 执行环境 预处理(预编译) 1. 预定义符号 2. #define 2.1 用 #define 定义标识符(符号) 2.2 用 #define 定义宏 2.3 #define 的替换规则 2.4 # 和 ## 的用法 2.5 宏和函数 2.6 #undef …

Java小白入门到实战应用教程-权限修饰符

Java小白入门到实战应用教程-权限修饰符 前言 在前面的内容中我们其实已经接触到了权限修饰符:public 在java中权限修饰符除了public外,还有private、protected、默认权限。 权限修饰符可用来修饰类、成员变量、方法(函数)。 其中修饰类只能用publi…

使用Response.Write实现在页面的生命周期中前后台的交互

最近在做一个很大的查询,花时间很多, 用户会以为死掉了,就做了一个前后交互的,用于显示执行进度,在网上找了一下,这个比较合适。 主要是简单,大道至简 改进了一下:效果如下图 代码…

【数学建模】评价类模型:优劣解距离法

【数学建模】评价类模型:优劣解距离法 目录 【数学建模】评价类模型:优劣解距离法 1:前言 2:算法 1. 将原始矩阵正向化(统一为极大型) 2. 正向矩阵标准化(消除量纲) 3. 计算得分并归一化 3:例题 4&#xff1a…

shell脚本自动化部署

1、自动化部署DNS [rootweb ~]# vim dns.sh [roottomcat ~]# yum -y install bind-utils [roottomcat ~]# echo "nameserver 192.168.8.132" > /etc/resolv.conf [roottomcat ~]# nslookup www.a.com 2、自动化部署rsync [rootweb ~]# vim rsync.sh [rootweb ~]# …

jenkins集成jmeter

jenkins 安装插件HTML Publisher startup trigger Groovy 脚本介绍 cd /app/jmeter rm -rf result.jtl jmeter.log report mkdir -p report sh /app/jmeter/apache-jmeter-5.6.3/bin/jmeter.sh -n -t test.jmx -l result.jtl -e -o ./report-n: 表示以非 GUI 模式运行 JMete…

Java每日一练_模拟面试题1(死锁)

一、死锁的条件 死锁通常发生在两个或者更多的线程相互等待对方释放资源,从而导致它们都无法继续执行。死锁的条件通常被描述为四个必要条件,也就是互斥条件、不可剥夺条件、占有并等待条件和循环等待条件。 互斥条件:资源不能被共享&#x…

unity中实现流光效果——世界空间下

Properties{_MainTex ("Texture", 2D) "white" {}_FlowColor ("Flow Color", Color) (1, 1, 1, 1) // 流光颜色_FlowFrequency ("Flow Frequency", Float) 1.0 // 流光频率_FlowSpeed ("Flow Speed", Float) 1.0 // 流光…

QListView实现自定义的控件展示(可以根据选中与否置顶展示)

文章目录 0 问题引入1、方案1:使用QListwidget自定义的widget1.1 效果1.1 思路 2、方案2:使用QListView自定义model自定义delegate2.1.浅谈2.2.实现 3、总结4、引用 0 问题引入 问题:有人问我如何实现上图的功能,当时我脑海里有了…

手把手使用 SVG + CSS 实现渐变进度环效果

效果 轨道 使用 svg 画个轨道 <svg viewBox"0 0 100 100"><circle cx"50" cy"50" r"40" fill"none" stroke-width"10" stroke"#333"></circle></svg>简单的说&#xff0c;就是…

【Gin】深度解析:在Gin框架中优化应用程序流程的责任链设计模式(下)

【Gin】深度解析&#xff1a;在Gin框架中优化应用程序流程的责任链设计模式(下) 大家好 我是寸铁&#x1f44a; 【Gin】深度解析&#xff1a;在Gin框架中优化应用程序流程的责任链设计模式(下)✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 前言 本次文章分为上下两部分&#xf…

计算机毕业设计Hadoop+Spark旅游景点可视化 旅游景点推荐系统 景区游客满意度预测与优化 Apriori算法 景区客流量预测 旅游大数据 景点规划

### 开题报告 **论文题目&#xff1a;** 基于Spark的旅游景点可视化系统的设计与实现 **研究背景与意义&#xff1a;** 随着旅游业的快速发展&#xff0c;人们对旅游信息的获取和处理需求越来越高。传统的旅游信息系统虽然能够提供静态的数据查询和展示功能&#xff0c;但在…

C++(区别于C的)基础内容总结

参考&#xff1a; C 教程 | 菜鸟教程 (runoob.com) 简介 C 被认为是一种中级语言&#xff0c;它综合了高级语言和低级语言的特点。 C 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验室开始设计开发的。C 进一步扩充和完善了 C 语言&#xff0c;最初命名为带类的C&…

Java中类装载的执行过程

类装载的执行过程 类从加载到虚拟机中开始&#xff0c;直到卸载为止&#xff0c;它的整个生命周期包括了&#xff1a;加载、验证、准备、解析、初始化、使用和卸载这7个阶段。其中&#xff0c;验证、准备和解析这三个部分统称为连接&#xff08;linking&#xff09;。 1.加载 …

学习记录(9):Prompt提示词技巧

依旧照例先感谢前辈们的慷慨分享 今天学习的是这篇文章↓ 原文&#xff1a;转自公主号“博金斯的AI笔记” —《4篇Prompt论文的提示词技巧, 3 个 GPTs 实例测试》 文章目录 一、提示词框架二、逻辑链&#xff08;Chain of thought&#xff09;三、思维树&#xff08;Tree of th…

[渗透测试学习] PermX-HackTheBox

文章目录 PermX-HackTheBox信息搜集漏洞利用权限提升参考文章PermX-HackTheBox 信息搜集 nmap扫描一下端口 nmap -sC -v 10.10.11.23扫描结果如下 PORT STATE SERVICE 22/tcp open ssh | ssh-hostkey: | 256 e2:5c:5d:8c:47:3e:d8:72:f7:b4:80:03:49:86:6d:ef (ECDSA…