wordpress手机站和pc如何切换的,遵义湘江投资建设有限责任公司门户网站,amp for wordpress,工作证明范本作者#xff1a;Pedro Gomes 译#xff1a;徐轶韬在本文中#xff0c;我们介绍一个配置选项#xff0c;该选项控制复制通道是否允许创建没有主键的表。这延续了我们最近在复制安全性方面的工作#xff0c;在该工作中#xff0c;我们允许用户强制执行权限检查和/或强制执行… 作者Pedro Gomes 译徐轶韬在本文中我们介绍一个配置选项该选项控制复制通道是否允许创建没有主键的表。这延续了我们最近在复制安全性方面的工作在该工作中我们允许用户强制执行权限检查和/或强制执行基于行的事件。在8.0.20上我们为CHANGE MASTER TO语句引入了一个新选项REQUIRE_TABLE_PRIMARY_KEY_CHECK。复制通道在执行创建或更改表定义及其主键时可以选择自己的策略。在表定义上强制主键很重要。例如在使用基于行的日志模式下进行复制时表的主键对从数据库的性能起着重要作用。服务器中使用变量sql_require_primary_key强制执行此策略。在复制的上下文中该变量的值将与所有更改表结构(也称为DDL)的查询一起发送因此从数据库将遵循主数据库上的任何限制。如果从数据库的操作员无法控制或信任主服务器仅仅遵循在那里定义的限制是不够的。因此现在可以用REQUIRE_TABLE_PRIMARY_KEY_CHECK的值来影响此行为。可以在复制通道上将此参数设置为ON复制通道在复制操作中始终对sql_require_primary_key系统变量使用值“ON”在所有create和alter table操作中都需要主键。OFF复制通道在复制操作中始终对sql_require_primary_key系统变量使用值“OFF” 创建或更改表时不需要主键即使主数据库强制执行了此类限制。STREAM默认值复制通道为每个事务使用从主数据库复制的值。这样可以保留以前的服务器行为。用法和优点第一个用例出现在对数据来源的主数据库没有严格控制的场景中。在这种情况下 REQUIRE_TABLE_PRIMARY_KEY_CHECK ON可确保表定义中没有删除任何主键不会导致性能问题。在多源复制方案中此功能也非常有用。使sql_require_primary_key的值保持一致允许来自不同主数据库的复制通道之间的行为更加统一。当多个主数据库更新同一组表并且其中一个表存在错误时使用ON可以防止丢失主键。使用OFF可使多个主数据库一起工作而不管它们能否操作主键。在复制通道中使用权限检查时此功能也具有优势因为将REQUIRE_TABLE_PRIMARY_KEY_CHECK设置为ON或OFF意味着具有PRIVILEGE_CHECKS_USER权限的帐户不再需要额外的权限来操作sql_require_primary_key。如果设置为STREAM除了需要创建或更改表的基本权限外还要求权限检查用户具有会话管理级别的权限用以复制查询。配置若要显式更改复制通道在处理主键检查策略的行为您需要停止复制SQL线程。可观察性相关的Performance Schema表进行了功能增强用以显示新的CHANGE MASTER TO…语句选项REQUIRE_TABLE_PRIMARY_KEY_CHECK的状态使用注意事项此功能受RESET SLAVE ALL的影响但不受RESET SLAVE的影响。同样虽然群组复制插件强制使用主键执行每个查询但该检查不依赖于sql_require_primary_key并且限制较少。详情参阅“https://dev.mysql.com/doc/refman/8.0/en/group-replication-requirements.html”。摘要此功能是一种新工具可在复杂多样的环境中保护您的复制流同时您可以更好地控制复制用户的权限。希望这项新功能可以使您利用MySQL创建更安全的解决方案。欢迎进行测试并告诉我们您的意见。感谢您关注“MySQL解决方案工程师”