简介
- 开源性:MySQL是开源软件,可以自由使用和修改,遵循GNU通用公共许可证(GPL)。
- 多平台支持:MySQL可以在多种操作系统上运行,包括Linux、Windows、macOS等。
- 广泛应用:广泛用于Web应用程序、数据仓库、电子商务和基于云的应用程序。
主要特点
- 高性能:MySQL通过存储引擎(如InnoDB和MyISAM)提供出色的读写性能。
- 可靠性:支持事务处理、ACID特性(原子性、一致性、隔离性、持久性)、外键约束等,确保数据的一致性和完整性。
- 可扩展性和灵活性:能够处理从小型应用到大型企业级应用的各种需求,支持水平和垂直扩展。
- 安全性:提供强大的用户权限管理和加密功能,确保数据的安全性。
- 备份与恢复:支持多种备份和恢复策略,包括冷备份、热备份、增量备份等。
- 丰富的工具和社区支持:提供了许多管理、监控、开发工具,如MySQL Workbench,并拥有一个庞大的用户和开发者社区。
基本架构
- 客户端/服务器架构:MySQL采用标准的客户端/服务器模型,客户端通过SQL进行数据查询和操作,服务器负责处理请求并返回结果。
- 存储引擎:MySQL支持多种存储引擎,如InnoDB(支持事务和外键)、MyISAM(适合只读和较少更新的场景)等,可以根据具体需求选择合适的存储引擎。
-
MySQL 数据库多种数据类型
-
数值类型 (Numeric Types):
- 整数类型 (Integer Types):
TINYINT
:非常小的整数SMALLINT
:小整数MEDIUMINT
:中等大小的整数INT
或INTEGER
:标准整数BIGINT
:大整数
- 定点和浮点类型 (Fixed-Point and Floating-Point Types):
FLOAT
:单精度浮点数DOUBLE
或DOUBLE PRECISION
:双精度浮点数DECIMAL
或NUMERIC
:定点数
- 整数类型 (Integer Types):
-
日期和时间类型 (Date and Time Types):
DATE
:日期值(年、月、日)TIME
:时间值(时、分、秒)DATETIME
:日期和时间组合TIMESTAMP
:时间戳YEAR
:年份
-
字符串类型 (String Types):
- 字符类型 (Character Types):
CHAR
:定长字符串VARCHAR
:变长字符串
- 文本类型 (Text Types):
TINYTEXT
:非常小的文本TEXT
:小文本MEDIUMTEXT
:中等大小的文本LONGTEXT
:大文本
- 二进制类型 (Binary Types):
BINARY
:定长二进制数据VARBINARY
:变长二进制数据
- 二进制大对象类型 (Binary Large Object Types):
TINYBLOB
:非常小的二进制大对象BLOB
:小二进制大对象MEDIUMBLOB
:中等大小的二进制大对象LONGBLOB
:大二进制大对象
- 字符类型 (Character Types):
-
空间数据类型 (Spatial Data Types):
GEOMETRY
:几何类型POINT
:表示一个点LINESTRING
:表示线POLYGON
:表示多边形- 其他如
MULTIPOINT
、MULTILINESTRING
、MULTIPOLYGON
等
-
JSON 类型:
JSON
:用于存储 JSON 格式的数据
MySQl的基本操作
1.首先,使用命令行或其他客户端工具(如 MySQL Workbench)连接到 MySQL 服务器。
输入密码后即可进入 MySQL 命令行界面。
2.创建数据库
3.选择数据库
4.创建表
5. 插入数据
6.查询数据
查询所有记录
条件查询
7.更新数据
8.删除数据
9.删除表
10.删除数据库