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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL核心知识点整理大全1-笔记

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数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
49 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
|
15天前
|
存储 Oracle 关系型数据库
[MySQL]知识点
本文详细介绍了MySQL中int族和char族数据类型的特点、存储范围及使用建议,以及text、blob类型和内置字符处理函数。文章强调了数据类型选择的重要性,并提供了多个实例帮助理解。
31 0
[MySQL]知识点
|
6月前
|
SQL 存储 关系型数据库
Mysql优化提高笔记整理,来自于一位鹅厂大佬的笔记,阿里P7亲自教你
Mysql优化提高笔记整理,来自于一位鹅厂大佬的笔记,阿里P7亲自教你
|
3月前
|
存储 关系型数据库 MySQL
mysql锁的知识点简述
了解和合理应用MySQL中的锁机制,对于设计高并发、高可用的数据库应用至关重要。在系统设计初期就要考量锁策略,根据实际使用场景灵活调整,以最小化锁竞争,提高事务处理速度。
57 0
|
3月前
|
SQL 存储 关系型数据库
运维笔记.MySQL.基于mysqldump数据备份与恢复
运维笔记.MySQL.基于mysqldump数据备份与恢复
53 0
|
3月前
|
SQL 关系型数据库 MySQL
【go笔记】使用sqlx操作MySQL
【go笔记】使用sqlx操作MySQL
|
5月前
|
存储 关系型数据库 MySQL
Mysql优化之索引相关介绍(笔记)
索引查找从顶层节点开始查找,通过key值,也就是主键的值进行比较,最终定位到存储数据的叶子节点上面,从叶子节点取出响应的数据。
58 0
Mysql优化之索引相关介绍(笔记)
|
6月前
|
存储 SQL 关系型数据库
MySQL万字超详细笔记❗❗❗
MySQL万字超详细笔记❗❗❗
152 1
MySQL万字超详细笔记❗❗❗
|
5月前
|
存储 关系型数据库 MySQL
技术笔记:MySQL数据库优化详解(收藏)
技术笔记:MySQL数据库优化详解(收藏)
58 0
|
5月前
|
SQL 关系型数据库 MySQL
技术笔记:python连接mysql数据库
技术笔记:python连接mysql数据库
88 0