专业评测报告来源于Percona,这里摘要关键部分展示二者区别。
https://www.percona.com/blog/mysql-vs-mariadb-reality-check/
MariaDB vs. MySQL vs Percona Server for MySQL:一般比较
MariaDB、MySQL 和 Percona Server for MySQL 都是非常流行的关系数据库管理系统。在下图中,我们将讨论它们之间的一般协议、功能、可扩展性、安全性和可用性。阅读图表时应注意的事项:
- MariaDB是MySQL的社区开发分支
- MySQL归甲骨文所有
- Percona Server for MySQL 是注重性能的 MySQL 变体,免费提供额外的优化和可扩展性功能
|
MariaDB Server |
MySQL |
Percona Server for MySQL* |
Protocols |
MySQL protocol, MariaDB Server extensions |
MySQL protocol over port 3306, X Protocol over port 33060 |
MySQL protocol over port 3306, X Protocol over port 33060 |
Community – Source Code |
Open Source |
Open Source |
Open Source |
Community – Development |
Open Source, contributions via the new BSD license or signing the MariaDB Contributor Agreement (MCA) |
Open Source, contributions via signing the Oracle Contributor Agreement (OCA) |
Open Source |
Community – Collaboration |
Mailing list, bugs system (Jira), IRC channel |
Mailing list, forums, bugs system |
Mailing list, forums, bugs system (Jira, Launchpad) |
Core – Replication |
MariaDB Server replication, with own GTID, compatible only if MariaDB Server is a slave to MySQL, not vice versa |
MySQL replication with GTID |
MySQL replication with GTID |
Core – Routing |
MariaDB MaxScale (Business Source License) |
MySQL Router (GPLv2) |
ProxySQL (GPLv3) |
Core – Partitioning |
Standard, with extra engines like SPIDER/CONNECT that offer varying levels of support |
Standard |
Standard |
Tool – Editing |
Webyog’s SQLYog for Microsoft Windows (MySQL Workbench notes an incompatible服务器托管网 server) |
MySQL Workbench for Microsoft Windows, macOS, and Linux |
MySQL Workbench for Microsoft Windows, macOS, and Linux |
Tool – Monitoring |
Webyog’s Monyog |
MySQL Enterprise Monitor |
Percona Monitoring & Management (PMM) (100% open source) |
Scalability – Client Connections |
Open Source Threadpool |
MySQL Enterprise Threadpool |
Open Source Threadpool with support for priority tickets |
Scalability – Clustering |
MariaDB Enterprise Cluster (based on Galera Cluster) |
MySQL Group Replication |
MySQL Group Replication, Percona XtraDB Cluster (based on a further engineered Galera Cluster) |
Security – Encryption |
Tablespace and table data-at-rest encryption. Amazon KMS, binlog/redo/tmp file with Aria tablespace encryption |
Tablespace data-at-rest encryption. Amazon KMS, Oracle Vault Enterprise Edition |
Tablespace data-at-rest encryption with Keyring Vault plugin |
Security – Data Masking |
MariaDB MaxScale data masking |
ProxySQL data masking |
ProxySQL data masking |
Security – Firewall |
MariaDB MaxScale Firewall |
MySQL Enterprise Firewall |
ProxySQL Firewall |
Security – Auditing |
MariaDB Audit Plugin (OSS) |
MySQL Enterprise Audit Plugin |
Percona Audit Plugin (OSS) |
Analytics |
MariaDB ColumnStore |
No |
ClickHouse |
SQL – Common Table Expressions |
Present in MariaDB Server 10.2 |
In-development for MySQL 8.0 (now a release candidate) |
In-development for MySQL 8.0 (now a release candidate) |
SQL – Window Functions |
Present in MariaDB Server 10.2 |
In-development for MySQL 8.0 (now a release candidate) |
In-development for MySQL 8.0 (now a release candidate) |
Temporal – Log-based rollback |
In development for MariaDB Server 10.3 |
No |
No |
Temporal – system versioned tables |
In development for MariaDB Server 10.3 |
No |
No |
JSON |
No JSON Data Type, 26 functions |
JSON Data type, 21 functions |
JSON Data type, 21 functions |
Official client connectors |
C (libmariadbclient), Java, ODBC |
C (libmysqlclient), Java, ODBC, .NET, Node.js, Python, C++, mysqlnd for PHP |
C (libmysqlclient), Java, ODBC, .NET, Node.js, Python, C++, mysqlnd for PHP |
Usability – CJK Language support |
No |
Gb18030, ngram & MeCab for InnoDB full-text search |
Gb18030, ngram & MeCab for InnoDB full-text search |
Monitoring – PERFORMANCE _SCHEMA |
Instrumentation from MySQL 5.6, sys schema not included |
Thorough instrumentation in 5.7, sys schema included |
Thorough instrumentation in 5.7, sys schema included |
Security – Password authentication |
ed25519 (incompatible with sha256_password) |
sha256_password (with caching_sha2_password in 8.0) |
sha256_password (with caching_sha2_password in 8.0) |
Security – Secure out of the box |
No |
validate_password on by default, to choose a strong password at the start |
validate_password on by default, to choose a strong password at the start |
Usability – Syntax differences |
S服务器托管网HOW EXPLAIN FOR |
EXPLAIN FOR CONNECTION |
EXPLAIN FOR CONNECTION |
Optimiser – Optimiser Tracing |
No |
Yes |
Yes |
Optimiser – Optimiser Hints |
No |
Yes |
Yes |
DBA – Super readonly mode |
No |
Yes |
Yes |
Security – Password expiry |
No |
Yes |
Yes |
Security – Password last changed? Password lifetime? |
No |
Yes |
Yes |
Security – VALIDATE_PASSWORD _STRENGTH() |
No |
Yes |
Yes |
Security – ACCOUNT LOCK/UNLOCK |
No |
Yes |
Yes |
Usability – Query Rewriting |
No |
Yes |
Yes |
GIS – GeoJSON & GeoHash functionality |
Incomplete |
Yes |
Yes |
Security – mysql_ssl_rsa_setup |
No (setup SSL connections manually) |
Yes |
Yes |
MySQL Utilities |
No |
Yes |
Yes |
Backup locks |
No |
No (in development for 8.0) |
Yes |
Usability – InnoDB memcached interface |
No |
Yes |
Yes |
支持生态系统和工具
Purpose |
MySQL |
Percona Server for MySQL |
MariaDB Server |
Monitoring |
MySQL Enterprise Monitor |
Percona Monitoring & Management (PMM) (100% open source) |
Webyog Monyog |
Backup |
MySQL Enterprise Backup |
Percona XtraBackup |
MariaDB Backup (fork of Percona XtraBackup) |
SQL Management |
MySQL Workbench |
MySQL Workbench |
Webyog SQLyog |
Load Balancing & Routing |
MySQL Router |
ProxySQL |
MariaDB MaxScale |
Database Firewall |
MySQL Enterprise Firewall |
ProxySQL |
MariaDB MaxScale |
常见问题
1.MariaDB 和 MySQL 哪个更好?
选择 MariaDB 还是 MySQL 取决于您的具体要求和使用情况。两者都很流行,提供类似的核心功能。MariaDB可提高大型数据集的性能,并增强安全功能。另一方面,MySQL受益于庞大的用户群和社区,在可靠性和稳定性方面有着良好的记录。
2.MariaDB和MySQL在性能上有什么区别吗?
MariaDB和MySQL之间的性能差异通常很小,但具体的工作负载、数据库配置和您的数据库需求将决定哪种选择最适合您。为了做出正确的选择,更重要的是关注性能以外的差异,如功能、支持和兼容性。
3.MariaDB是否会取代MySQL?
虽然MariaDB越来越受欢迎,但它并没有取代MySQL成为首选数据库。MariaDB和MySQL仍被大大小小的公司用于各种应用中。
4.是否有一些特定的用例,MariaDB比MySQL更受青睐,反之亦然?
对于处理大型数据集和复杂工作负载的应用来说,MariaDB是一个很好的选择。相比之下,MySQL则是需要多种工具和集成、希望得到广泛采用和社区支持的用户的首选。
5.MariaDB与为MySQL开发的应用程序兼容吗?
是的,作为MySQL的分叉,MariaDB与为MySQL开发的应用程序高度兼容。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: SwiftUI Swift CoreData 计算某实体某属性总和
服务器托管网 有一个名为 Item 的实体,它有一个名为 amount 的 Double 属性,向你的 View 添加一个计算属性: Code: struct ContentView: View { @Environment(.managedObjectCon…