3.3.6 升级MySQL Cluster
使用MySQL Cluster管理器升级MySQL Cluster是非常简单的。管理员需要的时间和出现人为错误的机会大大减少。
在执行升级之前有三个准备工作:
1.确保您打算执行的升级方法被支持,如果不支持,您首先需要执行升级到一个中间的MySQL Cluster版本。
2.确保您使用的MySQL Cluster管理器既支持原来的也支持最新的MySQL Cluster版本,如果不是,您必须首先升级到MySQL Cluster管理器的一个最近的版本,在3.3.7中有描述。
3.确保安装的最新版本MySQL Cluster的tar-ball已经备份到每个主机并且定义了相关的packages。
升级本身是使用一条单一的命令来执行的,这会依次升级每个数据节点,这样数据库服务连接到应用和客户端不会被中断。
+-------------------------------+
| Command result |
+-------------------------------+
| Cluster upgraded successfully |
+-------------------------------+
1 row in set (1 min 41.54 sec)
3.3.7 升级MySQL Cluster管理器
升级MySQL Cluster管理器是非常简单的。简单的停止每个主机上的代理然后开始新版本代理就可以了。相同的mysql-cluster-manager.ini文件应该被用于新的版本;特别是manager-directory属性应该和之前使用的版本是相同的,因此配置信息不会丢失。
当MySQL Cluster管理器代理停止时而 MySQL Cluster继续运行,因此升级的时候不会影响服务。如果一个MySQL Cluster节点在升级的过程中失败了,数据继续工作但是该节点没有被恢复直到新的代理开始—为此,管理员可能选择当数据库需求最小的时候进行升级。
3.3.8 关闭Cluster
可以使用一条单独的命令来停止整个Cluster。
+------------------------------+
| Command result |
+------------------------------+
| Cluster stopped successfully |
+------------------------------+
1 row in set (22.96 sec)
不像如果没使用MySQL Cluster管理器时使用ndb_mgm的 shutdown命令, 停止Cluster也将会安全的停止所有MySQL服务器进程。
3.3.9 MySQL Cluster提供的HA
如果MySQL Cluster侦查到一个MySQL Cluster进程失败了,那么它将会自动重启之(仅当节点StopOnError属性设置成FALSE时才发生)。对于数据节点,代理从现存的MySQL Cluster数据节点天使进程中接管该功能,但是对于管理MySQL服务器节点来说这是个新功能。
重启MySQL Cluster管理器代理失败了,这是管理员或应用的责任,例如创建一个脚本in /etc/init.d。
3.3.10在一个现存的Cluster中引进MySQL
在MySQL Cluster Cluster1.0中,在MySQL Cluster管理器管理下没有自动引进MySQL Cluster部署的方法,该功能将会在未来版本中加入。与此同时,http://dev.mysql.com/doc/mysql-cluster-manager/1.0/en/mcm-install-cluster-migrating.html会提供可用的文档程序。