35. ClustrixDB 减少device1大小

ClustrixDB中的device1文件用于所有数据库数据、撤消日志、临时表、binlog和ClustrixDB系统对象。ClustrixDB确保device1文件在集群的所有节点上大小相同。一旦得到device1文件的最佳大小,就很少需要更改了。

要增加device1文件的大小,请参阅 https://www.cnblogs.com/yuxiaohao/p/11956574.html

要在集群范围内减小device1文件的大小,请遵循以下说明。当集群的Clustrix 7.5或更高版本已经达到或接近容量,或者用于使用大型排序或聚合的工作负载时,这可能是必要的。

这些指令意味着一次完成一个节点,但是如果您的集群中有空间,则可以一次使用多个节点来完成该循环。

一、验证,设置初始全局

全局device_auto_resize_to_largest控制整个集群中device1文件的大小如何保持一致。确保这个初始值设置为false,这样它就不会干扰这个过程。

验证device_auto_resize_to_largest的初始设置为false

sql> SHOW GLOBAL VARIABLES LIKE 'device_auto_resize_to_largest';

如果需要,将global设置为false。

sql> SET GLOBAL device_auto_resize_to_largest = 'false';

二、 Softfail一个节点

软失效一个或多个节点,如果您的集群有足够的空闲空间。https://www.cnblogs.com/yuxiaohao/p/12068406.html

三、删除旧的device1文件

在节点被softfailed并从集群中删除之后,从命令行提示符运行以下命令。这将导致组更改。

这些命令将把节点格式化为默认状态并删除所有数据。

在每个softfail的节点上运行这些命令

shell> rm /data/clustrix/pnid
shell> systemctl stop clustrix
shell> systemctl start clustrix

四、重新将节点添加到集群中

使用MySQL提示符中的语法创建一个默认的device1文件。这将导致组更改。

从一个节点(而不是刚刚软失败的节点)运行此操作

ALTER CLUSTER ADD 'ip' [, 'ip'] ... 

五、调整device1

使用以下控制端口命令,在上面添加的每个节点上调整device1文件的大小:

在IP被添加到集群的每个节点上运行这个命令

shell> nc localhost
$ device resize deviceid size

例如,这将系统的第一个(也是唯一一个)设备(device1)的大小设置为连接到的节点上的800Gb。对上面添加的每个节点执行此操作。

$ device resize  800g

Clustrix建议在每个驱动器上留下50 - 100 gb的可用空间或工作空间。这是特定于站点的,Clustrix支持可以为您的特定工作负载提供指导

六、Rebalance数据

Rebalancer将自动将数据分发到重新配置的节点。如果您的集群有足够的空闲空间,则不需要等待该操作完成后再继续。有关更多信息,请参见管理Rebalancer。

七、对所有节点重复操作

重复步骤2-6,直到集群中的所有节点的device1文件都减少为止。

八、设置全局变量以供将来使用

在所有节点上完成该过程并减小device1文件的大小之后,将全局变量device_auto_resize_to_largest设置为true。这将确保添加到集群中的所有未来节点的device1文件大小相同。

在集群中的所有节点完成此过程之前,不要将此全局变量设置为true。

在所有device1文件都被减少之后,在一个节点上运行它

sql> SET GLOBAL device_auto_resize_to_largest = 'true';
上一篇:COS数据处理WebP压缩 | 减少70%图像大小


下一篇:Qt中使用python--Hello Python!