Debian 自动启动 MariaDB Galera 集群

Debian 自动启动 MariaDB Galera 集群

我有一个包含两个节点的 MariaDB Galera 集群。我已经启动并运行正常,但是集群中的第一个节点需要这样启动:sudo service mysql start --wsrep-new-cluster

我正在使用 Debian 7,MariaDB 将自动启动,但是现在失败了,因为它是集群中的第一个节点(除非我告诉它,否则它会寻找其他节点)。

我怎样才能让它自动启动该--wsrep-new-cluster选项?

答案1

我在 Debian 8 上遇到了这个问题,发现 init.d 脚本忽略了 --wsrep-new-cluster 选项。

我能够使用 手动启动第一个集群节点/usr/bin/mysqld_safe --wsrep-new-cluster。然后可以使用常规初始化脚本“service mysql start”启动第二个节点。第二个节点启动后,可以停止 mysqld_safe 进程,并可以正常启动第一个节点。

答案2

我想说你不能,因为你不知道两个节点中的哪一个应该是主节点,即你应该用哪个节点来引导集群。

我的观点是,如果一个节点发生故障并且该节点重新启动,则普通的守护进程启动过程就足够了 - 此时您不需要--wsrep-new-cluster选项,只需启动并运行崩溃的节点就足够了。

现在,假设两个节点都崩溃了。为了挽救集群,您应该检查 grastate.dat 文件,查找具有最高 seqno 且 uuid 不全为零的文件(请参阅https://stackoverflow.com/questions/23356623/mysql-galera-autostart-from-boot-wsrep-new-cluster)。这是引导程序的起点。

相关内容