是否有确保权限不会复制到 mysql 从属服务器的最佳做法?问题是,mysql表中有一个维护用户,每个盒子上都有不同的密码。诸如启动/关闭脚本之类的东西使用这些表。当您从主服务器复制时,它会更改密码并破坏事物。
确保实际 mysql 数据库(包含授权、用户、主机)不会因为复制而中断的最佳实践是什么?
您通常也会将特权复制到奴隶吗?
是否有确保权限不会复制到 mysql 从属服务器的最佳做法?问题是,mysql表中有一个维护用户,每个盒子上都有不同的密码。诸如启动/关闭脚本之类的东西使用这些表。当您从主服务器复制时,它会更改密码并破坏事物。
确保实际 mysql 数据库(包含授权、用户、主机)不会因为复制而中断的最佳实践是什么?
您通常也会将特权复制到奴隶吗?
常见问题解答说明:
您也可以将其用作
my.cnf
选项。通常我们会复制
GRANT
s。因为我们经常希望从站表现为与主站相同的只读副本。通过这种方式,我们的应用程序可以在数据库服务器之间无缝切换以进行 RO 操作。在开发其他实用程序时,您只需要考虑这一点,并密切注意您GRANT
的 s 允许的内容,尤其是在主机名方面。不要使用
replicate-do-db
andreplicate-ignore-db
,因为这些选项很危险。 看看这篇文章。只需使用
--replicate-wild-ignore-table=mysql.%
选项。我建议您设置
--replicate-wild-ignore-table=mysql.user
- 这仅跳过密码和全局授权复制,而表和列级授权仍被复制。您还可以使用
SET SQL_LOG_BIN=0
禁用当前会话的日志记录语句,例如。当您创建新用户或更改密码时。在从站上,您有更多选项来过滤数据。有replicate-do-db 和replicate-ignore-db 选项,还有replicate-do-table、replicate-ignore-table、replicate-wild-do-table 和replicate-wild-ignore-table 选项可以是用于过滤掉您不想复制的内容。我希望它有所帮助。