mysql怎么多人联机 多个mysql( 四 )


# Galera Synchronization Configuration
wsrep_sst_method=rsync
# Galera Node Configuration
wsrep_node_address="this_node_ip"
wsrep_node_name="this_node_name"
第一部分修改或再声称MySQL的设置,将允许群集正常工作 。例如,Galera Cluster不会的MyISAM或类似的非事务性存储引擎工作,mysqld不能绑定到的IP地址本地主机 。您可以了解Galera Cluster上进行更详细的设置系统配置页面() 。
在“加莱拉提供程序配置”部分配置,提供了一个写设置复制API MySQL的组件 。这意味着Galera在我们的情况下,因为Galera是一个wsrep(写集复制)提供程序 。我们指定常规参数以配置初始复制环境 。这不需要任何定制,但你可以了解更多有关加莱拉配置选项() 。
在“加莱拉群集配置”部分定义集群,确定通过IP地址或可解析域名,为群集创建一个名字集群成员保证成员加入正确的组 。您可以更改wsrep_cluster_name的东西比更有意义test_cluster或保留原样,但你必须更新wsrep_cluster_address与三个服务器的地址 。如果您的服务器具有专用IP地址,请在此处使用 。
在“加莱拉同步配置”部分定义集群如何通信和同步成员之间的数据 。这仅用于在节点联机时发生的状态传输 。对于我们的初始设置,我们使用的是rsync ,因为它是常用的和做什么,我们需要现在 。
在“加莱拉节点配置”部分明确了IP地址和当前服务器的名称 。这在尝试诊断日志中的问题以及以多种方式引用每个服务器时很有用 。该wsrep_node_address必须你在机器的地址相匹配,但你可以选择你,以帮助您识别在日志文件中的节点想要的任何名称 。
当您对群集配置文件满意后,将内容复制到剪贴板中,保存并关闭文件 。
接下来,/etc/mysql/my.cnf设置绑定地址为127.0.0.1 。这必须按顺序注释掉为我们在我们的galera.cnf`文件中正确设置它..
sudo nano /etc/mysql/my.cnf
/etc/mysql/my.cnf
. . .
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address= 127.0.0.1
. . .
现在第一个服务器已配置,我们将继续到下两个节点 。
第4步 – 配置剩余节点
在每个其余节点上,打开配置文件:
sudo nano /etc/mysql/conf.d/galera.cnf
粘贴到从第一个节点复制的配置中,然后更新“Galera节点配置”以使用您设置的特定节点的IP地址或可解析域名 。最后,更新其名称,您可以将其设置为任何帮助您标识日志文件中的节点:
/etc/mysql/conf.d/galera.cnf
. . .
# Galera Node Configuration
wsrep_node_address="this_node_ip"
wsrep_node_name="this_node_name"
. . .
保存并退出每个服务器上的文件 。我们需要注释掉这两个服务器上的绑定地址 。
sudo nano /etc/mysql/my.cnf
/etc/mysql/my.cnf
. . .
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address= 127.0.0.1
. . .
我们几乎准备好启动集群,但在我们做之前,我们将确保相应的端口已打开 。
第5步 – 在每个服务器上打开防火墙
在每个服务器上,让我们检查防火墙的状态:
sudo ufw status
在这种情况下,只允许SSH通过:
OutputStatus: active
您可能有其他规则或没有防火墙规则 。由于在这种情况下只允许ssh流量,我们需要为MySQL和Galera流量添加规则 。
Galera可以使用四个端口:
3306对于使用mysqldump方法的MySQL客户端连接和状态快照传输 。
4567对于Galera群集复制流量,组播复制在此端口上同时使用UDP传输和TCP 。

推荐阅读