4.4.9upgrade cluster命令

upgrade cluster {--package=|-P }package_name
 [--set=attribute_assignment_list] cluster_name

attribute_assignment_list:
    attribute_assignment[,attribute_assignment][,...]

attribute_assignment:
    attribute_name:process_name[=value]

此命令升级以 cluster_name软件包 命名的集群package_name。它通过执行集群的滚动重启来实现这一点。

新包必须先注册使用 add package,然后才能使用它进行升级;否则,upgrade cluster 失败并出现错误。

要使用命令执行升级,集群必须处于fully operational状态(您可以使用命令检查)。在导入完成之前,无法升级为导入创建的集群。有关详细信息,请参阅第 4.4.1 节“命令”第 3.5 节“将 MySQL 集群导入 MySQL 集群管理器”show status --cluster cluster_namecreate cluster

假设mycluster正在使用 MySQL Cluster NDB 7.1.17,并且二进制文件已注册到名为 的包 7.1.17,如以下 list clusters命令所示:

mcm> list clusters mysite;
+-----------+---------+
| Cluster   | Package |
+-----------+---------+
| mycluster | 7.1.17  |
+-----------+---------+
1 row in set (1.80 sec)

现在您希望升级mycluster到 MySQL Cluster NDB 7.1.19。假设您已将 NDB 7.1.19 二进制文件放在每个主机上的同一目录中, add package创建一个名为7.1.19包含这些二进制文件的新包的命令可能如下所示:

mcm> add package --basedir=/usr/local/ndb-7.1.19 7.1.19;
+----------------------------+
| Command result             |
+----------------------------+
| Package added successfully |
+----------------------------+
1 row in set (0.88 sec)
笔记

在 Windows 上,您必须将\用于 add package命令 --basedir选项的路径中的任何反斜杠 () 字符替换为正斜杠 ( /)。有关更多信息和示例, 请参见第 4.3.1 节“add package命令” 。

这两个包现在应该列在命令的输出中 list packages mysite。要执行 7.1.19程序包升级,请使用 upgrade cluster如下所示的命令:

mcm> upgrade cluster --package=7.1.19 mycluster;
+-------------------------------+
| Command result                |
+-------------------------------+
| Cluster upgraded successfully |
+-------------------------------+
1 row in set (3 min 17.00 sec)

命令upgrade cluster 成功执行后,您可以 从相应 命令 的输出中验证mycluster现在正在使用该 包:7.1.19list clusters

mcm> list clusters mysite;
+-----------+---------+
| Cluster   | Package |
+-----------+---------+
| mycluster | 7.1.19  |
+-----------+---------+
1 row in set (1.80 sec)

该命令可以执行主要和次要系列升级。尽管这个命令的名字,upgrade cluster也可以用来执行 MySQL Cluster 降级。

该命令并不支持所有不同版本的MySQL Cluster之间的升级和降级。必须满足三个标准:

  • 升级或降级需要所涉及的MySQL Cluster版本支持。有关允许升级和降级的列表,请参阅 MySQL Cluster 手册中的以下部分:

    • 对于 MySQL Cluster 7.1:请参阅MySQL 5.1 参考手册

    • 对于 MySQL Cluster 7.2:请参阅MySQL 5.5 参考手册

    • 对于 MySQL Cluster 7.3 和 7.4:请参阅 升级和降级 NDB Cluster

  • 您升级或降级的版本都必须得到您正在使用的 MySQL Cluster Manager 版本的支持(例如,从 MySQL Cluster 6.3.8 升级到 7.3.8 必须手动执行,因为 MySQL Cluster Manager 不再支持MySQL 集群 6.3)。

  • 对于 MySQL Cluster 7.2.13 及之前的版本,集群不得 在其 SQL 节点上分配用户权限,否则必须手动执行升级。

从MySQL Cluster Manager 1.3.5开始,在使用 upgrade cluster命令时,可以同时使用--set选项重新配置你的MySQL Cluster。当升级需要更改集群的配置时,这尤其有用。该选项将一个属性赋值列表作为其参数,其格式类似于 getset命令一起使用的格式;请参阅set有关制定属性分配列表的正确方法的命令说明。例如:如果要将分配给每个数据节点的用于存储数据库记录的内存更改为 750M, --set请在命令中使用选项 指定upgrade cluster

mcm> upgrade cluster --package=7.1.19 --set=DataMemory:ndbd=750M  mycluster;
+-------------------------------+
| Command result                |
+-------------------------------+
| Cluster upgraded successfully |
+-------------------------------+
1 row in set (3 min 17.04 sec)
笔记

与您使用命令的方式不同 ,需要紧跟在 选项 后面的set等号 ( )。=--set