MySQL数据库学习笔记(1)- 数据库基本概念
1. 数据库的基本概念和分类
(1) 什么是数据库
数据库 是按照数据结构来组织、存储和管理数据的仓库。
数据库是长期存储在计算机内、有组织、可共享的、统一管理的大量数据的集合。数据库中数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
(2) 数据库的分类
根据模型的不同,数据库通常被分为层次数据库 、网状数据库 和 关系型数据库 。
对数据库的划分还有常见的一种 关系型数据库 和 非关系型数据库 。
常见的关系型数据库有 SQL Server 、 MySQL 、 Oracle 等。
非关系型数据库有 Redis 、 MongoDB 等。
(3) 数据库管理系统
数据库管理系统 (Database Management System,简称 DBMS )是专门用于管理数据的计算机软件。
(通常我们所说的数据库,其实就是指数据库管理系统)。
数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能,它位于用户和操作系统之间,是一层数据管理软件。
(4) RDBMS介绍
RDBMS 是 Relational Database Management System 的简称,
即 关系型数据库管理系统 , 它是指用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列称为表,一组表组成了数据库,用户通过查询来检索数据库中的数据。
RDBMS 具有如下特点:
- 数据以表格的形式出现。
- 每行为一条记录。
- 每一列为记录名称所对应的数据域(Field),也称为字段。
- 许多的行和列组成一张表(Table)。
- 一个或多个表组成数据库 (Database)。
- 查询方式:关系型数据库采用结构化查询语言 (SQL) 来对数据库进行查询。
- 事务性:关系型数据库强调ACID规则,即 原子性 (Atomicity) 、
一致性 (Consistency) 、
隔离性 (Isolation) 、
持久性 (Durability)。
- 读写性能:关系型数据库十分强调数据的一致性,并为此降低读写性能付出了巨大的代价,在面对海量数据处理、高并发数据读写场景时性能下降的很厉害。此时正式非关系数据库派上用场的时候。
(5) 主流的RDBMS
主流的RDBMS有下面几种:
- SQL Server :微软推出的DBMS(最初由Microsoft、Sybase和Ashton-Tate共同研发),运行在Windows NT平台。
- Sybase : Sybase公司出品,可运行于Windows NT、Unix/Linux平台。
- DB2 : IBM公司出品,主要运行于Unix (包括IBM的AIX)、Linux和Windows。
- Oracle : Oracle公司出品,世界上第一个支持SQL语言的商业数据库,应用广泛,功能强大。
- MySQL : 瑞典MySQL AB公司开发,08年被SUN收购,09年SUN被Oracle收购。具有体积小、速度快、开源免费的特点;是目前最流行的关系型数据库管理系统。
2. SQL简介及分类
(1) SQL简介
SQL是Structured Query Language 的缩写,即结构化查询语言。SQL是一门标准的计算机语言,用于访问和操作数据库,其主要功能包括数据的定义、数据操作、数据查询和数据控制。
SQL能做什么??
- SQL可以创建和管理数据库、数据表、存储过程、视图等
- SQL可以向数据库中插入新的记录,并进行修改和删除
- SQL可以查询数据库表中的记录
- SQL可以对数据库进行事务控制和权限管理
(2) SQL语言的分类
按照功能用途,可以将SQL语言分为4类,即 DDL 、DML 、
DQL 和 DCL 。
- DDL : Data Definition Language 即 数据定义语言 ,用于数据库、表、视图等的建立、删除。DDL包括 CREATE 、 ALTER 、 DROP 等。
- DML :Data Manipulation Language 即 数据操纵语言 ,用于添加、删除和修改数据表中的记录。 DML包括 INSERT 、DELETE 和 UPDATE 。
- DQL :Data Query Language 即 数据查询语言 ,用于查询数据库的基本功能。DQL中主要使用 SELECT 查询数据库表中的记录。
- DCL :Data Control Language 即 数据库控制语言 ,用于数据库对象的权限管理和事务管理。 DCL包括 COMMIT 、 ROLLBACK 、 GRANT 等。
3. 数据库的连接
(1) 服务的启停
Windows下,可以使用图形界面和命令行的方式,启停MySQL服务
1) 图像界面
- 在DOS窗口执行:services.msc
- 在服务列表中,找到MySQL80,鼠标右键或左侧控制按钮控制服务的启停。
2) 命令行
- 启动MySQL服务;net start mysql80 因为这里服务中的名称为mysql80,因此这里为mysql80
- 停止MySQL服务;net stop mysql80
(2) 连接MySQL服务
使用命令 :mysql -h mysql服务主机地址 -u 用户名 -p
输入密码后就连接了MySQL服务器,可以执行数据库管理操作了。
我这里 主机在本地,为localhost,数据库安装完成后,都有一个最高管理权限的root用户。
可以使用命令 select version(); 查看数据库的版本。我这里输出如下:
±----------+
| version() |
±----------+
| 8.0.20 |
±----------+
1 row in set (0.00 sec)
或者使用命令 status; 查看当前数据库的状态信息(包括当前数据库版本、连接状态等信息)。