我按照本教程为我的数据库配置了主从结构。它运作良好,一切都很好。我的意思是,主机中发生的任何新更改都将在几秒钟内应用于从机。
我有 5 个关于它如何运作的问题。
在主服务器 MySQL 配置文件中,我将
bind-address
值替换127.0.0.1
为服务器 IP 本身。为什么?本地主机和服务器的IP不一样?别误会,我说的是服务器本身的IP,而不是从服务器的IP。我想知道,主机是否在特定时间间隔内向从机发送新日志(使用 cron 作业或其他方式),或者从机不断调用主机(使用 cron 作业或其他方式)以查看是否有任何新日志是否更改 binlog 文件以应用于复制的数据库?
文件是什么
mysql-relay-bin
?我在从服务器上看到了它。我知道主服务器上有一个mysql-bin
文件包含数据库写入更改,从服务器使用它来更新自身。但是,有什么用呢mysql-relay-bin
?mysql-bin
从属服务器中也创建了很多文件。为什么?我认为这些文件应该位于主服务器中。我可以从从服务器上将它们全部删除吗?另外,最后一个文件位于mysql-bin.000043
从属服务器上,最后一个文件位于mysql-bin.000004
主服务器上。那么,为什么从服务器上有 43 个 binlog 文件,而主服务器上只有 4 个 binlog 文件?有什么方法可以删除主服务器上已经应用到从服务器上的binlog文件吗?由于它们已成功复制/复制到从服务器,通常我们不再需要它们。