内容简介:It’s been 20 years since MySQL Replication was introduced in MySQL 3.23.15 (Released in May 2000). Since then, virtually every MySQL Database deployment in production has been using Replication in order to achieve high availability, disaster recovery, read
It’s been 20 years since MySQL Replication was introduced in MySQL 3.23.15 (Released in May 2000). Since then, virtually every MySQL Database deployment in production has been using Replication in order to achieve high availability, disaster recovery, read scale out and various other purposes.
Anyone using MySQL Replication is familiar with the terms: “master” and “slave”. The origins of these words are negative. That is clear. At MySQL, we made the decision to change this terminology. Already, many of us have changed how we refer to these roles in blogposts and presentations — usually using terms like “primary”, “secondary”, “source”, and “replica”. We have now started the process of changing the MySQL syntax in our source code and documentation to match this.
Our latest products already rely on the use of Primary/Secondary to define different roles servers can have in the database architecture:
- MySQL Group Replication
- MySQL InnoDB Cluster
- MySQL InnoDB ReplicaSet
The following terminology changes will be implemented in all MySQL products in upcoming releases:
Old | New |
master | source |
slave | replica |
blacklist | blocklist |
whitelist | allowlist |
Why was “source” chosen? MySQL Asynchronous Replication is a change stream. Each replication configuration has a source and does not imply what role a server should have in the overall database architecture. Therefore, the use of e.g. “primary” does not fit, especially when replication is used to build database architectures topologies including bidirectional replication, multi-tiered replication, or even circular replication.
It will take some time to make these changes. One quick way to remove some of the syntax would be to add aliases for the existing commands, e.g. SHOW SLAVE STATUS
becoming SHOW REPLICA STATUS
. That is not enough, many of these commands return results with column names that include the text “master” and “slave”.
Completely removing the use of these legacy terminologies is a huge undertaking.
To retain backwards compatibility, some of these terminologies need to be deprecated first and then later removed. It is important that we make the new syntax eg. SHOW REPLICA STATUS
the recommended syntax and not merely an ‘alternative’ syntax.
It is impossible to remove all references in one release. There are millions of deployments of MySQL we have to keep on supporting. It will take several iterations to deprecate and/or remove these terminologies from our syntax, protocol, error messages, source code…
Earlier this week, the documentation team published the first phase of terminology changes in the MySQL 8.0 documentation.
Training & Certification and forthcoming MySQL product releases will incorporate gradual changes to the terminology as well.
— The Oracle MySQL Team
1,505 total views, 1,505 views today
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JS 压缩/解压工具
在线压缩/解压 JS 代码
html转js在线工具
html转js在线工具