关于搭建MySQL高可用集群的一些常见问题
2016-10-22 14:52 红魔的C罗 阅读(737) 评论(0) 编辑 收藏 举报 MySQL Cluster是MySQL适合于分布式计算环境的高实用、高冗余版本。Cluster的汉语是“集群”的意思。它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器。这种集群技术在各大数据库之前都有类似的技术,一种简单的说法是数据库虚拟化,保证高可用,如Oracle 的RAC。
集群的构架分为管理节点(管理查看整个集群)、存储节点(保存集群的数据)和SQL节点(给应用层提供数据访问)。
读者可根据自己生产机的操作系统去MySQL官网下载指定的MySQL Cluster安装包。注意:安装之前需要将服务器内的MySQL卸载干净,不然无法正常启动集群。
在安装和部署集群中大家会遇到几个问题:
1.集群安装过程中,对存储、SQL节点的目录需要将权限赋给mysql用户,而不是root。
2.在部署集群中需要对管理节点、SQL节点、数据节点进行文件配置
3.在启动管理节点时,如遇到报错可能是/usr/mysql-cluster没有赋予给mysql权限,更改下即可。
4.数据节点服务启动可看到指向管理服务器IP地址,看到指定节点数说明正常。
5.SQL服务需要启动,不然无法进入数据库。在MySQL Cluster中启动数据库命令为:mysqld_safe --defaults-file=/etc/my.cnf &。集群赋予的MySQL初始密码为随机生成的乱序,可进入数据库修改。
6. 我们在正常启动所有节点后对数据的所有增删改操作都会实时同步到其他节点。如果遇到数据不同步、不匹配的情况,需要对集群服务停止后重启。顺序为:先停管理节点,ndbd节点会自动关闭,再停SQL进程,可手动kill。