MySQL复制最佳实践

gra*_*sty 5 mysql replication

我正在通过binlog设置MySQL复制.这是主/从设置.

关于如何以最好的方式做到这一点,我有几个问题.

  1. 应该复制information_schema,如果是/否,为什么?
  2. 应该复制mysql数据库,如果是/否,为什么?
  3. 如果全部都应该被复制,那么不需要设置binlog-do-db?

干杯.

des*_*gns 13

  1. 不,信息架构永远不应该被复制.这是关于您的表,dbs,例程,触发器等的元数据.让服务器填充它自己的information_schema.
  2. mysql db可以复制,特别是在你要设置多个用户的实例中.如果主服务器出现故障,您将需要从服务器上提供的相同用户信息才能进行故障转移.如果发生这种情况,您需要具有相同的权限.
  3. 仅列出要使用binlog-do-db复制的数据库.如果您没有列出任何内容,默认情况下将复制所有内容.

  • 对INFORMATION_SCHEMA的更改不会写入二进制日志.它不是一个"真正的"数据库,它只是一个围绕内部元数据的方便的表格包装器,因此它上面没有实际的INSERT/UPDATE/DELETE操作.绝对没有理由为INFORMATION_SCHEMA包含binlog-ignore-db或relay-ignore-db,并且有许多原因*不*具有复制过滤器,尤其是不必要的过滤器. (6认同)