当前位置: 首页 > news >正文

MySQL核心知识点整理大全1-笔记

目录

MySQL

一、MySQL的基本概念

1.数据库

2.表

3.列

4.行

5.主键

6.索引

二、MySQL的安装与配置

1.下载MySQL安装包

2.安装MySQL

3.启动MySQL

4.配置MySQL

a.设置监听端口和IP地址

b.设置数据存储路径

c.设置字符集和排序规则

5.测试MySQL

三、MySQL的基本操作

1.创建表

2.插入数据

3.查询数据

4.更新数据

四、MySQL的高级操作

1.事务

2.备份和恢复


MySQL

是一种流行的关系型数据库管理系统,它是以C和C++语言编写的,最初是由瑞典公司MySQL AB开发的,现在是由Oracle公司维护和支持。MySQL是开源软件,可在Windows、Linux、Mac OS、FreeBSD等各种操作系统上运行。MySQL的主要特点是速度快、易于使用、扩展性强、可定制性高、具有高度的可靠性和稳定性。MySQL广泛应用于互联网应用、企业应用、科研等领域,被广泛认为是开发Web应用程序的首选数据库。

一、MySQL的基本概念

1.数据库

数据库是指以一定的结构和规则存储在计算机中、可供多个应用程序共享和使用的数据集合。数据库中的数据通常按照特定的模式进行组织和存储,并且可以通过SQL等语言来对其进行操作和管理。

MySQL数据库是一个以表为基础的数据库管理系统,常用的数据类型有整数、浮点数、字符型、日期型等,其中最主要的数据存储单位是表,一个表可以包含若干个字段,每个字段有其唯一的名称和数据类型。

2.表

表是存储数据的基本单位,用于存储一个特定类型的数据集合。表由若干列组成,每一列都有一个唯一的名称和数据类型,用于存储特定类型的数据。表的每一行都包含一组数据,也称为记录或行。

在MySQL中,表的设计需要考虑到数据的准确性、完整性和一致性。表的创建通常包括表名、字段名称、字段数据类型、字段长度、主键、索引等,表可以按照一定的规则进行分区、备份、恢复等管理操作。

3.列

列是表的组成部分之一,包含了一个特定类型的数据,每个列都由其唯一的名称和数据类型组成。列的数据类型包括整数型、浮点型、字符型、日期型等。在创建表时,需要指定每个列的名称和数据类型。

4.行

行是表的记录,也称为元组或实体。每行包含了若干列的数据,用于描述特定的现象或对象。在MySQL中,每行的数据都是唯一的,通常可以通过主键来唯一标识一行数据。

5.主键

主键是一种特殊的列,用来唯一标识表中的每一行数据。主键通常是一个整数型的数据,自动递增,保证每行数据的唯一性。主键可以通过索引来加快查询的速度,在表的设计中起到了至关重要的作用。

6.索引

索引是一种数据结构,用于快速定位数据表中特定数据的位置。通过在表的一列或多列上创建索引,可以大大提高查询的速度和性能。在MySQL中,常用的索引包括B树、B+树等,其中B+树是一种常用的索引类型,它具有高度的平衡性和查询效率,被广泛应用于数据库系统中。

二、MySQL的安装与配置

MySQL的安装和配置相对较为简单,主要包括以下几个步骤:

1.下载MySQL安装包

可以从MySQL官网(https://dev.mysql.com/downloads/mysql/)上下载到最新的MySQL安装包,选择适合自己系统的版本进行下载,通常包括Windows、Linux、Mac OS等多个版本。

2.安装MySQL

在安装MySQL前,需要确保系统中已经安装了必要的依赖库和软件,如C++库、Perl、Python等。然后双击安装包进行安装,按照提示进行安装即可。

3.启动MySQL

安装完成后,需要通过命令行或者图形界面启动MySQL服务。在Windows系统中,可以通过“服务管理器”来启动MySQL服务,在Linux系统中,可以通过命令“service mysql start”来启动MySQL服务。

4.配置MySQL

MySQL的配置文件通常是“my.cnf”,可以通过编辑该文件来进行一系列的配置。其中最常见的配置包括:

a.设置监听端口和IP地址

MySQL默认监听端口为3306,可以通过修改端口号和IP地址来提高安全性。

b.设置数据存储路径

MySQL的数据存储路径可以通过配置文件来进行设置,通常设置在/data/mysql或/var/lib/mysql等路径下。

c.设置字符集和排序规则

MySQL支持多种字符集和排序规则,可以通过配置文件来进行设置,以确保数据的正确处理。

5.测试MySQL

启动MySQL服务后,可以通过命令行或图形界面工具来测试MySQL是否正常工作。在Windows系统中,可以使用MySQL Workbench或Navicat等工具来测试MySQL,而在Linux系统中,则可以使用命令行工具进行测试。

三、MySQL的基本操作

MySQL支持多种操作,包括创建、修改、查询、删除等。以下是MySQL的基本操作:

1.创建表

创建表是MySQL中最基本的操作之一,在创建表时需要指定表名、列名、数据类型、长度、主键等信息。以下示例创建了一个名为“employee”的表,包含了姓名、年龄、性别和工号等字段:

CREATE TABLE employee (
    name VARCHAR(20),
    age INT,
    sex VARCHAR(10),
    id INT PRIMARY KEY AUTO_INCREMENT
);

2.插入数据

向MySQL表中插入数据也是常见的操作之一,在插入数据时需要指定数据的值和列名。以下示例向“employee”表中插入了一条记录,包含了姓名、年龄、性别和工号等信息:

INSERT INTO employee(name,age,sex,id) VALUES('张三',18,'男',1);

3.查询数据

查询数据是MySQL中最常见的操作之一,可以通过SELECT语句来查询表中的数据,也可以通过WHERE子句来过滤需要查询的数据。以下示例查询了“employee”表中所有的数据:

SELECT * FROM employee;

4.更新数据

更新数据可以通过UPDATE语句来完成,可以指定更新的列和值,也可以通过WHERE子句来过滤需要更新的数据。以下示例将“employee”表中的姓名修改为“李四”:

UPDATE employee SET name='李四' WHERE id=1;

5.删除数据

删除数据可以通过DELETE语句来完成,可以指定需要删除的行和列。以下示例删除了“employee”表中工号为1的数据:

DELETE FROM employee WHERE id=1;

四、MySQL的高级操作

除了基本操作外,MySQL还支持多种高级操作,包括事务、备份、恢复、分区等功能。

1.事务

事务指的是一系列相关的操作,可以一起提交或者回滚。在MySQL中,事务由START TRANSACTION、COMMIT和ROLLBACK三个语句组成。以下示例创建了一个事务,通过ROLLBACK语句来回滚事务。

START TRANSACTION;
UPDATE account SET balance=balance-100 WHERE id=100;
UPDATE account SET balance=balance+100 WHERE id=200;
COMMIT;
ROLLBACK;

2.备份和恢复

备份和恢复是MySQL中最重要的操作之一,可以用于保护数据的安全性。在MySQL中,可以通过mysqldump工具来进行备份和恢复操作,也可以通过使用二进制日志来进行增量备份和恢复。以下示例演示了如何使用mysqldump来备份和恢复MySQL中的数据:

备份数据:mysqldump -u root -p dbname > /path/to/backup.sql

恢复数据:mysql -u root -p dbname < /path/to/backup

相关文章:

MySQL核心知识点整理大全1-笔记

目录 MySQL 一、MySQL的基本概念 1.数据库 2.表 3.列 4.行 5.主键 6.索引 二、MySQL的安装与配置 1.下载MySQL安装包 2.安装MySQL 3.启动MySQL 4.配置MySQL a.设置监听端口和IP地址 b.设置数据存储路径 c.设置字符集和排序规则 5.测试MySQL 三、MySQL的基本操…...

理解输出电压纹波和噪声:来源与抑制

医疗设备、测试测量仪器等很多应用对电源的纹波和噪声极其敏感。理解输出电压纹波和噪声的产生机制以及测量技术是优化改进电路性能的基础。 1&#xff1a;输出电压纹波 以Buck电路为例&#xff0c;由于寄生参数的影响&#xff0c;实际Buck电路的输出电压并非是稳定干净的直流…...

uni-app 微信小程序之好看的ui登录页面(二)

文章目录 1. 页面效果2. 页面样式代码 更多登录ui页面 uni-app 微信小程序之好看的ui登录页面&#xff08;一&#xff09; uni-app 微信小程序之好看的ui登录页面&#xff08;二&#xff09; uni-app 微信小程序之好看的ui登录页面&#xff08;三&#xff09; uni-app 微信小程…...

Textual Inversion

参考博客1:https://www.bilibili.com/read/cv25430752/...

笙默考试管理系统-MyExamTest----codemirror(47)

笙默考试管理系统-MyExamTest----codemirror&#xff08;44&#xff09; 目录 笙默考试管理系统-MyExamTest----codemirror&#xff08;44&#xff09; 一、 笙默考试管理系统-MyExamTest----codemirror 二、 笙默考试管理系统-MyExamTest----codemirror 三、 笙默考试…...

JVM中 Minor GC 和 Full GC 的区别

Java中的垃圾回收&#xff08;Garbage Collection, GC&#xff09;是自动内存管理的一部分&#xff0c;其主要职责是识别并清除程序中不再使用的对象来释放内存。Java虚拟机&#xff08;JVM&#xff09;在运行时进行垃圾回收&#xff0c;主要分为两种类型&#xff1a;Minor GC和…...

二十一章(网络通信)

计算机网络实现了多台计算机间的互联&#xff0c;使得它们彼此之间能够进行数据交流。网络应用程序就是在已连接的不同计算机上运行的程序&#xff0c;这些程序借助于网络协议&#xff0c;相互之间可以交换数据。编写网络应用程序前&#xff0c;首先必须明确所要使用的网络协议…...

[linux运维] 利用zabbix监控linux高危命令并发送告警(基于Zabbix 6)

之前写过一篇是基于zabbix 5.4的实现文章&#xff0c;但是不太详细&#xff0c;最近已经有两个小伙伴在zabbix 6上操作&#xff0c;发现触发器没有str函数&#xff0c;所以更新一下本文&#xff0c;基于zabbix 6 0x01 来看看效果 高危指令出发问题告警&#xff1a; 发出邮件告…...

手机升级到iOS15.8后无法在xcode(14.2)上真机调试

之前手机是iOS14.2的系统,在xcode上进行真机测试运行良好&#xff0c;因为想要使用Xcode的Instruments功能&#xff0c;今天将系统更新到了iOS15.8 &#xff0c;结果崩了 说是Xcode和手机系统不兼容不能进行真机测试。在网上查了好些方法&#xff0c;靠谱的就是下载相关版本的…...

安装TensorFlow2.12.0

文章目录 一、安装Anaconda步骤 1: 下载Anaconda步骤 2: 运行安装程序步骤 3: 选择安装路径步骤 4: 完成安装步骤 5: 启动Anaconda Navigator步骤 6: 创建和管理环境二、安装TensorFlow​(一)Anaconda修改国内镜像源(二)安装CPU版TensorFlow2.12.0(三)查看TensorFlow版本…...

elasticsearch 索引数据多了怎么办,如何调优,部署?

当Elasticsearch索引的数据量不断增加时&#xff0c;可以考虑以下调优和部署措施&#xff1a; 增加索引规模&#xff1a;Elasticsearch支持动态增加索引&#xff0c;可以根据数据量的增长情况逐步增加新的索引。同时&#xff0c;也可以考虑使用分片技术&#xff0c;将数据分散…...

人工智能企业引入S-SDLC,推动安全能力大跃升,保障AI技术体系深化落地

某人工智能公司是国际知名的上市企业&#xff0c;核心技术处于世界前沿水平。多年来&#xff0c;该企业在智慧教育、智慧医疗、智慧城市、智慧司法、金融科技、智能汽车、运营商、消费者等领域进行深度技术赋能&#xff0c;深入推进各个行业的智能化、数字化转型建设。 人工智能…...

Docker的数据卷

数据卷 1.数据卷概述 数据卷&#xff1a;容器与宿主机之间数据共享。 数据卷是一个供容器使用的特殊目录&#xff0c;位于容器中。 可将宿主机的目录挂载到数据卷上&#xff0c;对数据卷的修改操作立刻可见&#xff0c;并且更新数据不会影响镜像&#xff0c;从而实现数据在宿…...

第二十一章总结博客

网络程序设计基础 局域网与互联网 为了实现两台计算机的通信&#xff0c;必须用一个网络线路连接两台计算机。如下图所示 网络协议 1.IP协议 IP是Internet Protocol的简称&#xff0c;是一种网络协议。Internet 网络采用的协议是TCP/IP协议&#xff0c;其全称是Transmission …...

学习php中使用composer下载安装firebase/php-jwt 以及调用方法

学习php中使用composer下载安装firebase/php-jwt 以及调用方法 1、安装firebase/php-jwt2、封装jwt类 1、安装firebase/php-jwt composer require firebase/php-jwt安装好以后出现以下文件: 2、封装jwt类 根据所使用的php框架&#xff0c;在指定目录创建 Token.php <?ph…...

『TypeScript』深入理解变量声明、函数定义、类与接口及泛型

&#x1f4e3;读完这篇文章里你能收获到 了解TypeScript变量声明与类型注解掌握TypeScript函数与方法的使用掌握TypeScript类与接口的使用掌握TypeScript泛型的应用 文章目录 一、变量声明与类型注解1. 变量声明2. 类型注解3. 类型推断 二、函数与方法定义1. 函数定义2. 方法定…...

如何优雅使用 vue-html2pdf 插件生成pdf报表

使用 vue-html2pdf 插件 业务背景&#xff0c;老板想要一份能征服客户的pdf报表&#xff0c;传统的pdf要手撕&#xff0c;企业中确实有点耗费时间&#xff0c;于是github上面看到开源的这个插件就…废话不多说&#xff0c;直接上教程 1.使用下面命令安装 vue-html2pdf npm i…...

C语言第十六集(前)

1.关于那个整形存储入char的 是先取好补码,再截断 例: 2.%u是以十进制的形式打印无符号整数 3.注意(背):存储的char类型变量的补码为10000000的直接解析为-128 4.signed char 类型的变量取值范围是-128~127 5.unsigned char 类型的变量取值范围是0~255 6.有符号类型的变量…...

Makefile语法

一、Makefile规则格式 Makefile 里面是由一系列的规则组成的&#xff0c;这些规则格式如下&#xff1a; 目标…... : 依赖文件集合…… 命令 1 命令 2 ……参考上一节gcc编译器与Makefile入门参考这条规则 1 main: main.o input.o calcu.o2 gcc -o main main.o input.o c…...

用户案例|Milvus 助力 Credal.AI 实现 GenAI 安全与可控

AIGC 时代&#xff0c;企业流程中是否整合人工智能&#xff08;AI&#xff09;对于的企业竞争力至关重要。然而&#xff0c;随着 AI 不断发展演进&#xff0c;企业也在此过程中面临数据安全管理、访问权限、数据隐私等方面的挑战。 为了更好地解决上述问题&#xff0c;Credal.A…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

面向无人机海岸带生态系统监测的语义分割基准数据集

描述&#xff1a;海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而&#xff0c;目前该领域仍面临一个挑战&#xff0c;即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...