03_ProxySQL配置之Global参数

备注:文章编写时间201904-201905期间,后续官方在github的更新没有被写入 ~ ~

一、Global参数[Global Variables]

ProxySQL的行为是可以通过global variable(全局参数)来调整的,它可以通过2种方式来设置: 1)在runtime层,通过admin 管理接口来设置(首选); 2)在启动时,使用配置文件中的专用(admin_variables)部分来设置;

ProxySQL支持最大正常运行时间,允许大多数变量在运行时更改并立即生效,而无需重新启动守护程序。 但有3个参数是不能动态修改的:mysql-interfaces, mysql-threads, mysql-stacksize.

global variable可以被分为2类,这具体取决于它们控制的ProxySQL的哪个部分: 1)admin variables==>用于控制admin interface的行为。它们的名字以"admin-"开头; 2)mysql variables==>它们控制着可代理的MySQL功能;它们的名字以"mysql-"开头;

以上2类全局参数会存储在代理的每个线程的内部,以加快对它们的访问,因为它们会被频繁使用。 它们根据内存占用情况或接受的连接数以及其他重要方面来控制代理的行为。每当发出 LOAD MYSQL VARIABLES TO RUNTIME或LOAD ADMIN VARIABLES TO RUNTIME命令时,将通知所有使用mysql或admin变量的线程,必须更新它们的值。

要更改global variable的值,请使用UPDATE语句,如:

UPDATE global_variables SET variable_value=1900 WHERE variable_name='admin-refresh_interval';

或者使用类似于MySQL的SET语句:

SET admin-refresh_interval = 1700;
SET admin-version = '1.1.1beta8';

********说明:以下各类参数均为global_variables表的中的global 参数!********

二、Admin参数[Admin Variables]

详情查看官档。

三、Admin历史统计参数[Admin historical statistics]

从ProxySQL 1.4.4开始,Admin(管理端)将历史指标信息存放在了datadir下名为proxysql_stats.db的数据库中。 详情查看官档。

四、Admin WEB 接口参数[Admin web interface]

详情查看官档。

五、MySQL参数[MySQL Variables]

详情查看官档。

~ ~ 完毕!