【mysql】MySQL基础

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【mysql】MySQL基础

什么是数据库

文件保存数据有以下几个缺点:

  1. 文件的安全性问题
  2. 文件不利于数据查询和管理
  3. 文件不利于存储海量数据
  4. 文件在程序中控制不方便

所以设计出了数据库,用来管理数据。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。

数据库的水平是衡量一个程序员水平的重要指标

主流数据库

SQL Sever: 微软的产品,.Net程序员的最爱,中大型项目。

Oracle: 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。

MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。

PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。

SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

连接服务器

mysql -h 127.0.0.1 -P 3306 -u root -p

注意:

如果没有写 -h 127.0.0.1 默认是连接本地
如果没有写 -P 3306 默认是连接3306端口号

所以 ,MySQL服务其实是一个网络服务。

服务器,数据库,表关系

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库。

为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

其实,在Linux下:

一个数据库表现为一个目录,而数据库中的表,则为该目录下的一个二进制文件

MySQL架构

MySQL是一个可移植的数据库,能在几乎所有的操作系统下运行。

MySQL 从整体来说还是 CS 架构,也就是由客户端(Client)和服务器端(Server)两大部分构成

服务器端大体可以分为两部分:Server 层和存储引擎层。

Server 层主要包括连接器(Connector)、查询缓存(Cache)、分析器(Parser)、优化器(Optimizer)和执行器(Executor)等。

存储引擎(Storage Engine)层主要负责数据的存储和提取,它是直接和磁盘打交道的,以「插件」的形式存在,例如 InnoDB、MyISAM、Memory 等多种存储引擎。

链接: MySQL基本架构

从 MySQL 5.5.5 开始,InnoDB 成为了默认的存储引擎。MySQL 支持的所有存储引擎如下:

show engines;

SQL分类

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

DML【data manipulation language】 数据操纵语言,用来对数据进行操作,代表指令: insert,delete,update

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


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
机器学习/深度学习 SQL 关系型数据库
MySql基础命令(MySql学习——四)
MySql基础命令(MySql学习——四)
39 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL决战:MySQL数据导入导出
MySQL决战:MySQL数据导入导出
|
5月前
|
SQL Oracle 关系型数据库
MySql基础一之【了解MySql与DBeaver操作MySql】
MySql基础一之【了解MySql与DBeaver操作MySql】
81 0
|
SQL 关系型数据库 MySQL
MySQL的使用——【初识MySQL】第二节
MySQL的使用——【初识MySQL】第二节
|
SQL Oracle 关系型数据库
|
11月前
|
存储 关系型数据库 MySQL
【MySQL】快速了解MySQL基础
【MySQL】快速了解MySQL基础
|
关系型数据库 MySQL 数据库
MySQL的初步认识——【初识MySQL】第一节
MySQL是一个开源的关系型数据库管理系统,由于其性能稳定、功能完善、使用广泛等特点,成为了很多企业和开发者的首选。MySQL 5.5、MySQL 5.6、MySQL 5.7和MySQL 8.0是MySQL数据库中比较常用的版本,每个版本都有其独特的特点和使用场景,开发者可以根据自己的需求选择适合自己的版本。
|
SQL 网络协议 Oracle
学习MySQL系列:1. MySQL基础知识以及安装MySQL
学习MySQL系列:1. MySQL基础知识以及安装MySQL
148 1
|
SQL 存储 监控
MySQL的SQL基础应用
MySQL的SQL基础应用
117 0
|
SQL 关系型数据库 MySQL
MySQL复习资料(五)——MySQL-索引
MySQL复习资料(五)——MySQL-索引
83 0
MySQL复习资料(五)——MySQL-索引
下一篇
无影云桌面