南大通用GBase 8a在设置set变量时报错Variable is a read only variable的原因和解决方法

GBase 8a的数据库参数,一部分支持动态设置,还有一些核心参数,只能通过修改配置参数后重启服务来更改,如果set这些参数,则会报Variable 'XXX' is a read only variable 的错误。

报错样例

gbase> show variables like '%pct%';
+-------------------------+----------+
| Variable_name           | Value    |
+-------------------------+----------+
| gbase_cpu_pct_target    | 0.000000 |
| gbase_memory_pct_target | 0.800000 |
+-------------------------+----------+
2 rows in set (Elapsed: 00:00:00.00)

gbase> set gbase_memory_pct_target=0.7;
ERROR 1238 (HY000): Variable 'gbase_memory_pct_target' is a read only variable

解决方案

修改每个节点的配置文件,并重启服务。

GBase 8a数据库设置修改参数的方法