什么是 MySQL?
MySQL 是应用最广泛的开源关系数据库,是许多常见网站、应用程序和商业产品使用的主要关系数据存储。MySQL 有 20 多年的社区开发和支持历史,是一种可靠、稳定而安全的基于 SQL 的数据库管理系统。MySQL 数据库适用于各种使用案例,包括任务关键型应用程序、动态网站以及用于软件、硬件和设备的嵌入式数据库。
亚马逊云科技通过多种方式支持 MySQL,其中包括 Amazon Relational Database Service (RDS) for MySQL 这种完全托管的数据库服务。我们还利用 MySQL 实现了 Amazon Aurora 与 MySQL 的兼容,并且 Amazon RDS 支持热门 MySQL 分支项目 MariaDB。您也可以在 Amazon EC2 上托管 MySQL 并自行管理数据库,或者在亚马逊云科技 Marketplace 中查找第三方 MySQL 产品。
MySQL 数据库易于使用,功能强大,支持触发器、存储的程序和可以更新的视图,受到了 Web 开发人员的青睐。MySQL 包含多种实用工具,例如备份程序 mysqldump、管理客户端 mysqladmin 和用于管理工作和迁移工作的 GUI MySQL Workbench。
随着时间的推移,MySQL 推出了包含索引压缩的 B-tree 磁盘表、基于线程的内存分配和优化的嵌套循环连接等功能,提升了其性能。存储引擎中的行级锁定和一致性读取为 MySQL 提供了支持多用户并发的额外性能优势。
MySQL 的 InnoDB 事务性存储引擎符合 ACID 模型,具有改进数据保护的功能,例如时间点恢复和自动提交。InnoDB 支持外键约束,可以避免不同表中的数据不一致,从而实现更高的数据完整性。
MySQL 附带强化而灵活的安全功能,其中包括基于主机的验证和密码流量加密。InnoDB 采用双层加密密钥架构进行静态数据表空间加密,具备额外的安全优势。
MySQL 采用开源许可(GNU 通用公共许可),您可以自由使用和修改源代码。Amazon RDS for MySQL 等托管版本的 MySQL 没有额外的许可费用。
MySQL 在全球有大规模的贡献者和爱好者社区,为使用这种数据库系统带来了许多额外的长期优势。例如,MySQL 社区一直关注安全问题和错误修复,提高了软件的整体弹性。MySQL 的用户群、活动、论坛和邮寄名单组成了一个内建的教育和支持网络。
MySQL 适用于需要事务性 SQL 引擎的任何应用场景,其中包括任务关键型应用程序和大流量网站。MySQL 遵守 ACID 原则,附带对 ANSI/ISO 标准 SQL 的扩展以及对 XML 和 JSON 的支持。MySQL 还支持高可用性数据库集群,可以处理 TB 级数据库。使用 MySQL 数据库的常见应用程序包括 TYPO3、MODx、Joomla、WordPress、phpBB、MyBB 和 Drupal 等。
MySQL 是电子商务平台最常用的事务引擎之一。MySQL 特别适合管理客户数据、交易和产品目录。在电子商务解决方案中,MySQL 经常与其他非关系数据库结合使用,例如用于同步订单数据的文档和键值存储以及存储非产品数据。
MySQL 是 LAMP 开源软件栈(LAMP 代表 Linux、Apache、MySQL 和 PHP/Python/Perl)上运行的无数应用程序不可分割的组成部分。LAMP 是一种无处不在的 Web 服务解决方案堆栈,被广泛认为是动态网站和高性能 Web 应用程序的首选平台。
MariaDB 是 MySQL 的一个流行分支,来自由 MySQL 的原始开发人员创建的 MariaDB,其目的是在 GNU GPL 下保持免费和开源。虽然 MariaDB 与 MySQL 分开维护,但其仍保持高度的 MySQL 兼容性,包括库二进制等同性以及与 API 的精确匹配。亚马逊云科技通过 Amazon RDS for MariaDB 这种完全托管的数据库服务来支持 MariaDB。
Percona Server 是 MySQL 的另一个流行分支,来自 Percona。Percona Server 中附带 XtraDB,这是 Percona 的 InnoDB 存储引擎分支。
语言支持
MySQL 支持大多数领先的编程语言和协议,包括:
Python
Java
Perl
Node.js
.Net
PHP
Ruby
Erlang
C/C++
Tcl
ODBC
Objective-C
MySQL 和 PostgreSQL 都是流行的开源关系数据库。从传统意义上说,我们认为 MySQL 比较易用且速度快,而 PostgreSQL 的功能比较丰富,并且与 Oracle 等商业数据库的兼容性更好。然而,目前 MySQL 和 PostgreSQL 的主要版本在性能、可靠性、安全性等方面均提供大量强大的功能和良好的特性。您可以详细了解 PostgreSQL,并通过亚马逊云科技免费套餐试用 Amazon RDS for PostgreSQL。