当我运行 mysqldump 时,出现错误:
mysqldump: Got error: 1449: The user specified as a definer ('root'@'foobar') does not exist when using LOCK TABLES
Run Code Online (Sandbox Code Playgroud)
这是有道理的,因为它foobar
是一台不再存在的旧机器。
如何将所有表的定义器更改为 'root'@'localhost'?
几个问题
Slave 条目是否会一直保留,直到对 Master 上的表进行可能影响 Slave 的插入/更新/删除操作?
如果没有,我如何确保从站与主站同步(通过删除从站条目或手动将该条目复制到主站)?
最重要的是,如何检测表不同步?
我有 3 台 Mysql 服务器要复制:两台(包括主服务器)是本地的,一台是远程的。让我们调用我的主服务器 A、辅助服务器 B 和远程开发服务器 C。
作为一种可能的配置,我开始阅读有关环形配置的信息。有些评论似乎看不起这种拓扑。
我的问题是,鉴于 Mysql 5.1 的当前状态,哪些类型的主-主拓扑是可取的并且已知是容错的?
一般来说,戒指真的是个坏主意吗?
就我而言,A 和 B 位于预计不会出现任何网络故障的 Intranet 上,因此 B 理论上可以用作 A 的故障转移。大多数时候,我在 C 上工作,这是一台远程机器,有时在到达 A 和 B 时网络出现问题。目前没有任何数据是关键的(即,只要它们最终被镜像,就可以),但我希望 A 和 B 能够被紧密地镜像——比如轻负载时 5 秒的时间范围内(鉴于我的初步测试,我认为这应该是一个简单的要求)。
我目前有 B 作为 A 的 Slave,但我期待在 A、B 和 C 上成为 Master-Master。