开始的时候,MySQL路由器读取列表配置文件构成了路由器的配置。至少有一个配置文件是必需的。
MySQL路由器从配置文件读取选项相似,传统的INI文件格式,与部分和选项。MySQL路由器开始时这些指定的选项设置。文件语法信息,请参阅4.1节,“配置文件语法”。
选项定义下部分,决定选择的意义。例如,用户
下(默认)部分是指路由器运行的系统用户,而用户
下(metadata_cache)部分指的是MySQL用户访问元数据。
以下各表由部分,总结MySQL路由器选择MySQL路由器配置文件中定义。这些选项的详细信息,如描述和允许的值,记录下这些表。
一般选择
表4.7(默认)
选项名称 | 描述 | 类型 |
---|---|---|
config_folder |
配置文件路径 | 字符串 |
connect_timeout |
之前的秒数连接尝试被认为是一个元数据服务器超时 | 整数 |
keyring_path |
密匙环路径文件 | 字符串 |
logging_folder |
路由器日志路径 | 字符串 |
master_key_path |
主keyring文件路径 | 字符串 |
master-key-reader |
脚本返回主密钥发送到STDOUT | 字符串 |
master-key-writer |
脚本,该脚本从STDIN中读取主密钥 | 字符串 |
pid_file |
PID文件存储位置 | 字符串 |
plugin_folder |
路径路由器插件 | 字符串 |
runtime_folder |
运行时文件的路径 | 字符串 |
汇 |
日志记录方法(s)接收配置日志数据 | 字符串 |
thread_stack_size |
大小KB的内存分配给每一个线程堆栈 | 整数 |
用户 |
系统用户路由器运行 | 字符串 |
路由选择
表4.8(路由)
选项名称 | 描述 | 类型 |
---|---|---|
bind_address |
路由器地址绑定,也使用bind_port如果还没有定义一个端口 | 字符串 |
bind_port |
bind_address所使用的缺省端口 | 整数 |
client_connect_timeout |
最大的秒数从MySQL服务器接收数据包 | 整数 |
client_ssl_cipher |
客户端和MySQL路由器之间允许哪些密码,默认为一个安全的SSL密码列表吗 | 字符串 |
client_ssl_curves |
允许哪些曲线之间的客户端和MySQL路由器,默认为一个安全的SSL列表曲线 | 字符串 |
client_ssl_dh_params |
DH参数文件的文件名,不是默认设置 | 字符串 |
client_ssl_mode |
控制如果从客户机连接到MySQL路由器必须加密,如果不设置默认为首选 | 字符串 |
connect_timeout |
的秒数,直到连接尝试到一个MySQL服务器超时 | 整数 |
目的地 |
路由的目的地是一个以逗号分隔的MySQL服务器,或元数据缓存的定义 | 字符串 |
dynamic_state |
路径生成的JSON文件用来跟踪和储存活动MySQL InnoDB集群元数据服务器地址 | 字符串 |
max_connect_errors |
最大数量的MySQL服务器连接失败之前放弃 | 整数 |
max_connections |
最大连接数分配给一个MySQL服务器路由的目的地 | 整数 |
模式 |
路由模式,路由器选择目的地MySQL服务器 | 字符串 |
net_buffer_length |
设置net_buffer_length | 整数 |
协议 |
协议连接到MySQL服务器 | 字符串 |
read_timeout |
之前的秒数读取操作被认为是一个元数据服务器超时 | 整数 |
routing_strategy |
路由策略(可选),路由器选择目的地MySQL服务器 | 字符串 |
server_ssl_cipher |
SSL服务器密码为 | 字符串 |
server_ssl_curves |
SSL曲线为服务器 | 字符串 |
server_ssl_mode |
SSL服务器模式 | 字符串 |
server_ssl_verify |
SSL验证服务器 | 字符串 |
套接字 |
Unix域套接字文件路径 | 字符串 |
元数据缓存选项
表4.9 [metadata_cache]
选项名称 | 描述 | 类型 |
---|---|---|
auth_cache_refresh_interval |
时间间隔auth-cache刷新尝试 | 数字 |
auth_cache_ttl |
如果不刷新时间直到缓存变得无效 | 数字 |
bootstrap_server_addresses |
MySQL服务器的元数据,以逗号分隔 | 字符串 |
cluster_type |
对象的路由器是引导 | 字符串 |
metadata_cluster |
InnoDB集群名称 | 字符串 |
router_id |
路由器ID | 整数 |
ssl_mode |
SSL连接方式连接到元数据服务器,如果不设置默认为首选 | 字符串 |
ttl |
时间,以秒为单位 | 整数 |
use_gr_notifications |
组复制通知行为 | 整数 |
用户 |
MySQL用户访问MySQL服务器的元数据模式 | 字符串 |
日志记录选项
表4.10(日志)
选项名称 | 描述 | 类型 |
---|---|---|
目的地 |
设备日志名称;有选择地使用[consolelog] | 字符串 |
文件名 |
日志文件名称;有选择地使用[记录器]和[filelog] | 字符串 |
水平 |
日志级别 | 字符串 |
timestamp_precision |
日志时间戳精度 | 字符串 |
HTTP服务器选项
表4.11 [http_server]
选项名称 | 描述 | 类型 |
---|---|---|
bind_address |
IP地址绑定到HTTP端口 | 字符串 |
港口 |
HTTP服务器TCP端口 | 整数 |
require_realm |
(http_auth_realm)名称 | 字符串 |
ssl_cert |
SSL认证文件名称 | 字符串 |
ssl_cipher |
通过SSL密码 | 字符串 |
ssl_dh_param |
DH参数文件名 | 字符串 |
ssl |
使TLSv1.2或更高版本支持 | 整数 |
ssl_key |
SSL密钥文件名 | 字符串 |
static_folder |
目录HTTP服务器静态文件的请求 | 字符串 |
MySQL路由器配置文件选项的描述
-
类型 字符串 默认值 router_basepath美元
路径MySQL路由器日志文件目录。日志文件命名
mysqlrouter.log
,生成或追加到如果这个文件已经存在。设置
logging_folder
到一个空值将消息发送到控制台(stdout)。请注意默认的
logging_folder
从“价值在MySQL 2.1路由器路由器的基本路径。一个将日志发送到的例子
/var/log/mysqlrouter / mysqlrouter.log
:(默认)logging_folder = /var/log/mysqlrouter
当
——目录
使用引导选项生成的配置文件集目录/日志/美元。 -
类型 字符串 默认值(Windows) 默认值(其他) /usr/local/lib/mysqlrouter
路径MySQL路由器插件。这个文件夹必须匹配MySQL路由器安装目录。你应该设置这个如果你有一个自定义安装的插件不标准的安装位置。
默认值:
/usr/local/lib/mysqlrouter
-
类型 字符串 默认值(Windows) 默认值(其他) /运行/ mysqlrouter
MySQL路由器运行时文件路径。
默认值:
/运行/ mysqlrouter
-
命令行格式 ——master-key-writer file_path
介绍了 8.0.12 类型 字符串 脚本,该脚本从STDIN中读取主密钥。设置使用
——master-key-writer
命令行启动选项。 -
命令行格式 ——master-key-reader file_path
介绍了 8.0.12 类型 字符串 脚本返回主密钥发送到STDOUT。设置使用
——master-key-reader
命令行启动选项。 -
类型 字符串 默认值(Windows) 默认值(其他) /usr/local/etc/mysqlrouter
路径MySQL路由器配置文件。
请注意的
config_folder
目前在编译时设置。未来插件使用的选项可能是当他们有自己的配置文件。默认值:
/usr/local/etc/mysqlrouter
-
介绍了 8.0.16 类型 字符串 有效值(Windows) consolelog
filelog
事件日志
有效值(其他) consolelog
filelog
syslog
水槽(s)(不同的测井方法)定义的日志级别被送到。
支持下沉值:
consolelog
,filelog
,事件日志
(在Windows上)syslog
(在基于unix的系统)。使用逗号分隔列表来定义多个值。默认值:
filelog
如果logging_folder
选择不空”(默认)”部分,否则consolelog
。例如,配置日志记录器使用文件,控制台和事件日志中的每个配置使用调试日志级别(日志)部分:
(logger)水平=调试下沉= consolelog,事件日志,filelog
-
类型 字符串 默认值(Windows) % PROGRAMDATA % \ MySQL \ \ keyring-data MySQL路由器
默认值(其他) / / mysql-router / keyring-data运行
指向keyring文件的位置。
一个系统范围的引导不添加这个选项生成的配置文件,并假定keyring文件位于整个系统的运行时状态目录。如果
——目录
也用,那么运行时状态下的keyring文件存储目录的实例,在吗运行/
在指定的目录中。使用系统默认的路径,如果没有定义这个选项。
使用示例:
keyring_path = / opt / myrouter /数据/密匙环master_key_path = / opt / myrouter / mysqlrouter.key
-
类型 字符串 默认值(Windows) % PROGRAMDATA % \ MySQL \ \ mysqlrouter.key MySQL路由器
默认值(其他) / / mysql-router / mysqlrouter.key运行
主密钥文件的位置。这个选项允许无人值守解密,否则它的位置是在启动时要求。
使用系统默认的路径,如果没有指定这个选项。
使用示例:
keyring_path = / opt / myrouter /数据/密匙环master_key_path = / opt / myrouter / mysqlrouter.key
-
类型 字符串 运行mysqlrouter作为用户的名字
user_name
或数字的用户IDuser_id
。”用户”在这种情况下是指一个系统登录账户,不是一个MySQL用户授权表中列出。这也可以指定在运行时使用——用户
命令行选项。在Linux上,安装路由器官方DEB和RPM包创建一个本地系统用户和组名为“mysqlrouter”主机、路由器和MySQL运行默认为该用户。这个帐户没有shell访问及其主目录指向的目录默认配置文件存储。
这个选项的目的是运行MySQL路由器作为用户与限制系统的特权。如果系统上的用户不存在,或者如果作为根用户试图启动路由器,发出一个错误和路由器退出。
MySQL路由器可以引导和执行在任何操作系统用户,不需要特殊权限以外的读和写访问自己的文件。它访问的文件包括插件(读/执行),配置文件,日志,UNIX域套接字文件(如果启用),等等。
默认情况下,配置和日志文件写入一个系统范围的位置等
/等
和/var/log
。此外,路由器可以引导自己的通过使用一个独立的目录——目录
选择。例如:壳> sudo mysqlrouter——引导localhost: 3310——目录/ /道路/ myrouter——用户史努比
在这个例子中,路由器创建
/ /道路/ myrouter
并添加所有生成的文件和目录,这是由系统用户只可写的史努比
。此外,用户
生成的配置文件中定义吗/ /道路/ myrouter / mysqlrouter.conf
:(默认)用户=史努比
请注意这是不同的
用户
定义中定义的(metadata_cache)
节,这是一个MySQL用户。 -
类型 字符串 默认值 127.0.0.1
相关信息可选的
bind_address
选择:路由条目可以绑定到一个网络接口(NIC)。默认的
bind_address
是127.0.0.1。如果还没有定义一个端口,然后设置bind_port
是必需的。默认情况下,
——引导
集bind_address = 0.0.0.0
每条路径都在生成的路由器配置文件。这个值可以改变使用——conf-bind-address
。绑定到一个特定的IPv4和IPv6地址允许并确保MySQL路由器不启动和路由服务的网卡没有允许执行。
不可能指定超过一个绑定地址路由配置组。然而,使用0.0.0.0:
美元的港口
(你在哪里定义端口)美元绑定主机上的所有网络接口(IPs)。还可以使用IPv6地址。
使用示例:
bind_address = 127.0.0.1:7001
请注意的
bind_address
不能中列出目的地
列表。 -
类型 整数 可选地,您可以定义一个默认的端口
bind_address
使用bind_port
。如果没有配置一个港口bind_address
,然后bind_port
需要和使用的。通过使用可选设置这些值
——conf-base-port
引导选项。以下三个例子都导致bind_address = 127.0.0.1:7001
路由:example_1 bind_port = 7001
[路由:example_2] bind_port = 7001 bind_address = 127.0.0.1
路由:example_3 bind_address = 127.0.0.1:7001
-
特定于平台的 Linux 类型 字符串 使用的套接字被启用
套接字
选项,该选项可以指定有或没有TCPbind_port
和bind_address
选项。一个例子:(路由)套接字= / tmp / mysqlrouter。袜子目的地= a.example.com: 3306年,b.example.com: 3307
当启动MySQL路由器,路由器会拒绝运行如果套接字文件已经存在或不能写入。
相对路径是可以接受的和基于路由器的当前工作目录。
路由器可以同时听TCP套接字和Unix socket。例如,下面的(路由)配置示例中是有效的,配置路由器都侦听连接localhost: 1234和
/ tmp / mysqlrouter.sock
:[路由:my_redirect] bind_address = localhost: 1234套接字= / tmp / mysqlrouter。袜子模式=读写目的地= localhost: 57121年,localhost: 57122年,localhost: 57123
请注意Unix域套接字长度限制特定于平台的和不应超过系统允许的长度。
-
类型 字符串 默认值 经典
有效值 经典
x
路由连接到目的地时插件使用的MySQL服务器,并可以设置为“经典”(默认),或“x”(x协议)。
使用示例:
[路由:basic_failover] bind_port = 7001 =读写目的地= 10.20.200.1:33060模式,10.20.200.2:33060 = x协议
的
协议
选择也会影响每个目的地的所使用的缺省端口。如果目的港不配置,那么“经典”的默认端口是3306(默认),33060年“x”(x协议)。 -
介绍了 8.0.20 类型 字符串 集PID文件的位置。这个可以设置三种不同的方式(在优先顺序):
——pid文件
命令行选项,设置pid_file
选择在路由器的配置文件,或者定义ROUTER_PID
环境变量。如果
——引导
是指定的,那么pid_file
和ROUTER_PID定义将被忽略。这是不同于——pid文件
命令行选项导致路由器失败。如果
——引导
没有指定,那么以下导致路由器失败:- PID文件已经存在,pid_file或设置ROUTER_PID但空,或者如果路由器不能写PID文件。 -
类型 整数 默认值 1
最小值 1
最大值 65536年
超时值MySQL路由器连接到目的地时使用的MySQL服务器。默认值是1秒。值不能是无限的,无效的值会导致一个配置错误。有效的范围是1到65536之间。你应该降低这个值。
例如,当使用
读写
模式,价值可以更高一点等待主变得可用。当使用只读
模式二次连接,一个较低的价值更有意义,因为路由器中选择一个新的服务器连接路由。使用示例:
(路由)connect_timeout = 1
-
类型 整数 默认值(≥8.0.14) 15
默认值(≤8.0.13) 30.
超时值MySQL所使用的路由器连接到MySQL服务器的元数据。默认值为30秒。
使用示例:
(默认)connect_timeout = 30
-
类型 整数 默认值 30.
所使用的超时值MySQL路由器当阅读从MySQL元数据服务器。默认值为30秒。
使用示例:
(默认)read_timeout = 30
-
类型 字符串 提供主机信息建立连接。它接受一个以逗号分隔的目的地址或元数据缓存集群链接到一个InnoDB。
例子使用与特定的主机(静态路由):
目的地= a.example.com, b.example.com, c.example.com
示例使用InnoDB集群元数据缓存:
目的地=元数据缓存:/ / mycluster /违约? =主要角色
的
元数据缓存
URI的选项是:角色
:确定可用的类型实例连接。可接受的值是小学、中学或PRIMARY_AND_SECONDARY。的
routing_strategy
mysqlrouter.conf
选项定义了特定的策略,和默认元数据缓存路由策略循环。disconnect_on_promoted_to_primary
:控制现有的客户端连接到一个二级是否关闭当二次提升为主要。默认值是“不”,这意味着现有的客户端连接到晋升二级不关闭后推广。集disconnect_on_promoted_to_primary = yes在URI关闭这些现有的连接。这个选项是在MySQL路由器8.0.12补充道。
disconnect_on_metadata_unavailable
:控制现有的客户端连接是否封闭组时超载。默认值是“不”,这意味着现有客户端连接时不关闭组是超载。集disconnect_on_metadata_unavailable = yes在URI关闭这些现有的连接。这个选项是在MySQL路由器8.0.12补充道。
请注意相关,这些条件导致断开连接:连接主主降级为二级后,连接到一个节点,不再是集群的一部分。
-
介绍了 8.0.14 类型 字符串 这个选项跟踪和商店活跃MySQL InnoDB集群元数据服务器地址和加载它们是否重启路由器。这个功能被激活
——引导
和优先考虑弃用静态的bootstrap_server_addresses
选择。引导定义了
dynamic_state
选项mysqlrouter.conf
以下文件(默认的)部分。的值是一个路径JSON文件命名state.json
路由器已经引导时创建的。的state.json
初始化使用InnoDB集群元数据服务器地址和组复制ID(由InnoDB返回group_replication_name集群);路由器运行时添加附加信息和更新。例子
mysqlrouter.conf
条目:(默认)dynamic_state = / opt / myrouter /数据/ state.json
例子
state.json
生成的——引导
:{"元数据缓存":{“group-replication-id”:“4 b9e817a - 0254 - 11 - e9 - 9 - cc0 - 080027 - bb5030”、“cluster-metadata-servers”: [“mysql: / / localhost: 3310”,“mysql: / / localhost: 3320”,“mysql: / / localhost: 3330]},“版本”:“1.0.0”}
的
dynamic_state
和弃用bootstrap_server_addresses
不能同时设置选项。向后兼容性,如果bootstrap_server_addresses
然后设置功能就像在以前的路由器版本和不使用这种动态配置功能。这个选项是在MySQL路由器8.0.14补充道。
-
类型 字符串 有效值 读写
只读
弃用模式选项设置路由器的调度,和两个支持模式值:
重要的MySQL路由器8.0.4介绍了
routing_strategy
选择更灵活的配置方式模式安排。这两个
模式
和routing_strategy
不能设置在同一时间。需要设置一个静态路由,而他们用InnoDB集群是可选的。读写:通常用于路由主人或主MySQL实例。
模式安排:在读写模式下,所有流量指向最初的地址列表。如果失败了,那么MySQL路由器将名单上的下一个条目继续尝试每个MySQL服务器列表。如果没有更多的MySQL服务器上可用列表然后路由将中止。
请注意与
routing_strategy
,同样的行为可以定义使用routing_strategy =下一个可用
而不是模式=读写
。第一个成功的MySQL服务器保存在内存中作为第一个尝试联系未来传入的连接。这是一个临时状态,这意味着这是MySQL路由器重启后被遗忘。
[路由:example_strategy_mode] bind_port = 7001个目的地= primary1.example.com, primary2.example.com, primary3.example.com =读写模式
因为
模式
弃用,前面的示例应该使用routing_strategy
而不是:[路由:example_strategy] bind_port = 7001个目的地= primary1.example.com, primary2.example.com, primary3.example.com routing_strategy =下一个可用
只读:通常用于路由复制品或二级MySQL实例。
模式安排:模式只读使用一个简单的循环方法通过MySQL服务器的列表。它发送名单上的第一连接地址,下一个连接到第二个地址,等等,会绕回来后的第一个地址列表为空。
请注意与
routing_strategy
,同样的行为可以定义使用routing_strategy =循环
而不是=只读模式
。如果一个MySQL服务器不可用,那么下一个服务器尝试。当没有一个MySQL服务器列表可用路由是中止。
不可用MySQL服务器隔离。他们的可用性是重新核对,当他们回到可用
目的地
列表。订单的目的地。[路由:ro_route_mode] bind_port = 7002个目的地= secondary1.example.com, secondary2.example.com, secondary3.example.com =只读模式
因为
模式
弃用,前面的示例应该使用routing_strategy
而不是:[路由:ro_route] bind_port = 7002个目的地= secondary1.example.com, secondary2.example.com, secondary3.example.com routing_strategy =循环
另外,之前的
目的地
例子可以使用元数据缓存使用InnoDB的元数据集群的缓存动态配置主机信息。例如:。
[路由:ro_route] bind_port = 7002个目的地=元数据缓存:/ / myCluster /违约?=二级routing_strategy =循环作用
-
类型 字符串 有效值 第一个可用
下一个可用
循环
round-robin-with-fallback
路由策略定义了MySQL路由器选择连接到MySQL服务器。
重要的MySQL路由器8.0.4介绍了
routing_strategy
选择一个更灵活的方式来定义策略。以前这种行为定义使用现在弃用模式
选择。这两个
routing_strategy
和模式
不能设置在同一时间。需要设置一个静态路由,而他们用InnoDB集群是可选的。可用的策略:
请注意这个角色在本节描述10bet官方网站可用的文档
角色
和routing_strategy
组合和冲突。循环
:对于负载均衡,每个新连接到下一个可用的服务器以循环的方式。round-robin-with-fallback
:对于负载均衡,每个新连接到下一个可用的备用服务器循环的方式。如果一个次要服务器不可用,那么服务器从主列表以循环方式使用。第一个可用
:新连接路由到目的地的第一个可用的服务器列表。在失败的情况下,使用下一个可用的服务器。这个循环过程一直持续到所有服务器不可用。下一个可用
:就像第一个可用
在新连接路由到目的地的第一个可用的服务器列表。不像第一个可用
,如果一个服务器被标记为不可到达的再次被丢弃和从不使用它作为一个目的地。这种策略是向后兼容MySQL路由器2. x
模式
的读写的行为。它的局限性包括:所有节点的选择被丢弃后,没有办法添加服务器列表。
重新启动MySQL路由器后,所有的了解服务器被丢弃又失去了和所有服务器。
元数据缓存不支持下一个可用的路由策略,作为下一个可用唯一与静态路由功能。
的
角色
违约和可用的组合:主
:循环
是默认行为(如果不设置routing_strategy),而引导增加了routing_strategy =第一个可用
生成的MySQL路由器配置文件。值是可用的策略第一个可用和循环。请注意从引导价值循环来第一个可用在v8.0.16。
二次
:循环
是默认行为(如果不设置routing_strategy),而引导增加了routing_strategy = round-robin-with-fallback
生成的MySQL路由器配置文件。值是可用的策略第一个可用,循环和round-robin-with-fallback。请注意从引导价值循环来round-robin-with-fallback在v8.0.16。
PRIMARY_AND_SECONDARY
:循环
是默认行为(如果不设置routing_strategy)。值是可用的策略第一个可用,循环。
-
类型 整数 默认值 512年
最小值 1
最大值 65536年
每一个路由可以限制线路或连接的数量。一个可能的用途是帮助防止拒绝服务(DOS)攻击。默认值为512,有效范围是1到65536之间。
这类似于MySQL服务器的max_connections服务器系统变量。
max_connections = 512
MySQL路由器8.0.22介绍功能,增加了并发连接限制从大约5000年到50000年间连接。最大的都取决于系统的调查(或linux_epoll)限制和可用的CPU核/线程的数量。参见(IO)
后端
和线程
配置选项。 -
介绍了 8.0.12 类型 整数 默认值 64年
最小值 1
最大值 65535年
分配给每个线程的堆栈大小。以千字节,默认为64。
(默认)thread_stack_size = 128
-
介绍了 8.0.22 类型 整数 设置
net_buffer_length
MySQL服务器选项。 -
类型 整数 默认值 One hundred.
最小值 1
最大值 4294967295
默认值为100,有效范围是1 - 2 ^ 32(4294967295,一个unsigned int)。
这类似于MySQL服务器的max_connect_errors服务器系统变量。
这可能会导致轻微的性能损失,如果一个应用程序执行频繁的重新连接,因为MySQL路由器尝试发现如果connection-related错误存在。
一个成功的连接重置计数器(8.0.14)的错误。
每个路由都有自己的屏蔽主机列表。阻塞客户端接收MySQL服务器错误1129代码与一个稍微不同的错误信息:“从fail.example.com 1129:太多的连接错误”。为阻止客户路由器日志包含额外的信息,如:信息[…]1认证错误为fail.example.com (max 100)警告[…)阻塞客户端主机fail.example.com
max_connect_errors = 100
-
类型 整数 默认值 9
最小值 2
最大值 31536000
这类似于MySQL服务器的connect_timeout服务器系统变量。
默认值是9,这是不到一个MySQL 5.7违约。2和31536000之间的有效范围。
client_connect_timeout = 9
-
介绍了 8.0.20 类型 数字 默认值 2
最小值 0.001
最大值 3600年
之间的时间(以秒为单位)auth-cache刷新尝试。默认为2。值必须小于
auth_cache_ttl
和ttl
其他的路由器不会开始。这个选项如果应用http_auth_backend部分的
后端
选项设置为metadata_cache;这是一个路由器REST API的功能。 -
介绍了 8.0.20 类型 数字 默认值 1
最小值 0.001
最大值 3600年
时间(以秒为单位),直到变得无效如果不刷新缓存。默认值为1(无限)。的值必须大于
auth_cache_refresh_interval
其他的路由器不会开始。这个选项如果应用http_auth_backend部分的
后端
选项设置为metadata_cache;这是一个路由器REST API的功能。 -
类型 整数 MySQL的路由器ID。
-
介绍了 8.0.23 类型 字符串 默认为一个安全的SSL曲线列表。格式的字符串作为一个冒号分隔的列表曲线的名字。
-
介绍了 8.0.23 类型 字符串 默认为一个安全的SSL密码列表。这个字符串格式作为密码的冒号分隔的列表的名字。
-
介绍了 8.0.23 类型 字符串 默认值 禁用
有效值 禁用
VERIFY_CA
VERIFY_IDENTITY
SSL验证设置为默认禁用。
-
介绍了 8.0.23 类型 字符串 默认值 AS_CLIENT
有效值 AS_CLIENT
禁用
首选
要求
SSL模式设置为默认AS_CLIENT。
-
介绍了 8.0.23 类型 字符串 如果指定的,而不是空的,这个文件的DH参数代替内部默认DH参数。DH参数文件格式在PEM格式。
-
介绍了 8.0.23 类型 字符串 允许哪些曲线之间的客户端和MySQL路由器,默认为一个安全的SSL曲线列表。格式的字符串作为一个冒号分隔的列表曲线的名字。
-
介绍了 8.0.23 类型 字符串 客户端和MySQL路由器之间允许哪些密码,默认为一个安全的SSL密码列表。这个字符串格式作为密码的冒号分隔的列表的名字。
-
介绍了 8.0.23 类型 字符串 默认值 首选
有效值 首选
禁用
要求
控制如果从客户机连接到MySQL路由器必须加密。
-
类型 字符串 默认值 首选
有效值 首选
禁用
要求
VERIFY_CA
VERIFY_IDENTITY
SSL模式连接到MySQL服务器的元数据。它默认为
首选
如果没有设置。当设置为首选(默认),引导将警告当不使用SSL和连接到元数据服务器是未加密的。
可用值是残疾,优先考虑,要求,VERIFY_CA, VERIFY_IDENTITY。与mysql客户端,这个值是不区分大小写的。
还有一个运行时选择引导;看到
——ssl-mode
。 -
弃用 8.0.14 类型 字符串 指向列表和元数据,可以连接到MySQL服务器。元数据被访问后,元数据缓存交换机到服务器出现在主ReplicaSet获取元数据。他们也被称为引导服务器。
不建议使用这个选项在MySQL中路由器8.0.14,不再产生的引导过程。相反,
dynamic_state
选择添加作为替换。 -
类型 字符串 生成的MySQL用户与权限访问MySQL服务器的元数据模式。这个用户的密码是自动生成并存储在一个加密的密匙环。默认情况下,这个密匙环的加密密钥存储在一个读保护主密钥存储文件,该文件是在配置文件中定义的。大多数情况下,该用户在引导和相关密码是自动生成的。相关的命令行选项
——force-password-validation
和——尝试输入密码
。默认情况下,生成的密码通过validate_password力量雄厚。密码是完全由路由器和永远不会暴露,并存储在一个本地密匙环系统使用操作系统的账户,MySQL路由器运行。可以使用它通过路由器连接到InnoDB集群和检索当前拓扑信息。路由器和元数据服务器之间的会话是默认使用SSL加密。
在生成的密匙环文件存储取决于引导配置。对于独立的安装(当
——目录
使用),它存储在运行/
在独立的目录中。对于整个系统的安装,它是存储在系统运行时状态目录,路径是特定于平台的。有关更多信息,请参见master_key_path
和keyring_path
这个用户分配(需要)以下特权:
路由器所需的特权帐户:在元数据服务器:选择mysql_innodb_cluster_metadata。*目标副本集:选择performance_schema。在performance_schema.replication_group_member_stats replication_group_members选择
生成的用户名遵循这一模式:mysql_router_
[0 - 9]{1,6}
_[0-9a-z] {12}
,在那里[0 - 9]{1,6}数字的路由器id和吗[0-9a-z] {12}是12个随机小写字母数字字符。如果已经出现在路由器id是重用mysqlrouter.conf
和它的长度不能超过6位数。请注意这个用户是不同的
用户
定义中定义的(默认)
节,这是一个系统用户。 -
类型 字符串 InnoDB集群的名称。
请注意SQL查询MySQL集群InnoDB名单:从mysql_innodb_cluster_metadata.clusters SELECT *;
-
介绍了 8.0.17 类型 整数 默认值 0
有效值 0
1
使组复制通知。当启用时,路由器是大多数集群变化的异步通知。它可以手动启用
mysqlrouter.conf
或启用使用——conf-use-gr-notifications
在启动命令行选项。当路由器收到下列通知从组复制,它刷新集群元数据:
group_replication /会员/ quorum_loss
group_replication /会员/视图
group_replication /地位/ role_change
group_replication /地位/ state_change
请注意组复制通知功能需要一个X协议从路由器连接到每个实例必须运行X插件。如果X协议连接不可用,元数据进行刷新
ttl
好像没有启用通知功能。尽管组复制通知依靠X协议连接,收到通知触发一个元数据刷新它使用一个典型的MySQL协议连接到实例。
组复制通知特性被启用时,将允许一个更高
ttl
值,因为元数据进行刷新ttl
间隔成为一个额外的保护,而不是主要手段保持集群状态更新信息。当禁用,低ttl
值(如0.5秒,默认)建议避免重新连接到实例的开销和查询元数据经常改变。 -
类型(≥8.0.12) 数字 类型(8.0.11) 整数 默认值(≥8.0.12) 0.5
默认值(8.0.11) 5
最小值 0
最大值(≥8.0.12) 3600年
最大值(8.0.11) 4294967295
生存时间(以秒为单位)信息的元数据缓存。
接受一个整数或浮点值。0.001毫秒的粒度是有限的,相当于一个毫秒。精度截断所支持的范围;例如ttl = 0.0119被视为11毫秒。的值0意味着元数据缓存模块查询元数据一直在紧密循环。
只支持十进制分隔符”。”(一段时间)不管语言环境,和科学符号,如ttl = 1.6依照,支持。
浮点支持MySQL路由器8.0.12补充道。
-
介绍了 8.0.21 类型 字符串 默认值(Windows) 反对
默认值(其他) /dev/stderr
有效值(Windows) 反对
空
有效值(其他) / dev / null
/dev/stderr
/dev/stdout
直接控制台日志输出这个设备目的地;在[consolelog]部分。默认为/dev/stderr和一个空使用默认值。
可用值:
/dev/stdout
,/dev/stderr
,/ dev / null
;或反对
和空
在Windows上。(默认)logging_folder = = / dev / null (consolelog)的目的地
-
介绍了 8.0.21 类型 字符串 日志输出重定向到一个特定的文件命名
文件名
驻留在logging_folder
目录中。它必须被定义为一个文件名称和文件路径,并与[记录器]和[filelog]部分。使用
文件名
与(logger)来定义默认值[filelog]部分,也改变路由器的日志文件mysqlrouter.log
这个新值。(默认)logging_folder = /道路/ /日志/文件名= router_error.log记录器
路由器不报告错误如果文件名设置下(logger)但没有使用基于文件的日志记录器。
使用
文件名
(filelog):(默认)logging_folder = /道路/ /日志/ filelog:文件名= a_router_error。日志文件名= b_router_error.log filelog: b
如果文件名是空或没有设置(filelog)然后使用文件名(logger)下定义;和使用的默认日志文件(
mysqlrouter.log
如果文件名没有设置在(记录器)。相关,指挥控制台输出
/ dev / null
:(默认)logging_folder = = / dev / null (consolelog)的目的地
-
类型 字符串 默认值 信息
有效值(≥8.0.20) 调试
请注意
信息
警告
错误
系统
致命的
有效值(≤8.0.19) 调试
信息
警告
错误
致命的
使用日志记录器插件日志通知、错误和调试信息。可用的日志级别调试,请注意,信息(默认),警告,错误,系统,致命的。这些值是不区分大小写的。
的信息水平显示所有信息消息、警告和错误消息。的调试从路由器代码级别显示额外的诊断信息,包括成功的路线。系统包括消息如启动消息。
(logger) =调试水平
取决于输出行为
logging_folder
选择。设置logging_folder
一个文件夹保存一个日志文件命名mysqlrouter.log
该文件夹。设置logging_folder
空值,或者没有设置,输出日志到控制台。它是确定的(默认)部分。请注意“系统”和“注意”的错误水平在MySQL路由器8.0.20补充道。
引导接受一个配置文件使用
——配置
并利用日志级别定义。 -
介绍了 8.0.18 类型 字符串 日志时间戳精度;可用的示例值定义为:
第二,证券交易委员会,或年代
:2019-05-10 12:10:25毫秒、微秒或女士
:2019-05-10 12:10:25.428微秒、浓缩或我们
:2019-05-10 12:10:25.428754纳秒,nsec ns
:2019-05-10 12:10:25.428754000
-
介绍了 8.0.16 类型 整数 默认值 8081年
TCP端口侦听HTTP请求;它默认为8881。
-
介绍了 8.0.16 类型 字符串 默认值 0.0.0.0
IP地址绑定到HTTP
港口
;它默认为0.0.0.0。 -
介绍了 8.0.16 类型 字符串 静态文件请求的基本目录;默认情况下它是空的。空值意味着没有提供静态文件。
-
介绍了 8.0.16 类型 字符串 (http_auth_realm)实例的名称。
-
介绍了 8.0.16 类型 整数 默认值 1
有效值 1
0
值1支持SSL, 0禁用它。TLS客户支持TLSv1.2或晚是必需的。这是定义在[http_server]部分。
-
介绍了 8.0.16 类型 字符串 文件名称及其链认证证书的PEM格式;如果需要ssl = 1。这是定义在[http_server]部分。
-
介绍了 8.0.16 类型 字符串 在PEM格式文件名称的关键;如果需要ssl = 1。这是定义在[http_server]部分。
-
介绍了 8.0.16 类型 字符串 cipher-spec(参见openssl的密码列表)。密码默认为一个以逗号分隔的所有批准。未知密码默默地忽略。失败如果密码列表是空的,ssl = 1。这是定义在[http_server]部分。
-
介绍了 8.0.16 类型 字符串 从这个文件读取DH参数在PEM格式。在默认情况下使用RFC 5114的dh-param如果ssl = 1。这是定义在[http_server]部分。
-
介绍了 8.0.22 类型 字符串 默认值(Windows) 民意调查
默认值(其他) linux_epoll
有效值(Windows) 民意调查
有效值(其他) linux_epoll
民意调查
后端处理异步IO操作。一般调查后端可以在所有平台上,而每个平台可以提供替代后端。
选择调查(所有平台)和linux_epoll (Linux)。默认为linux_epoll Linux上。
请注意支持MySQL路由器8.0.22添加。
(io)后端= = 32 linux_epoll线程
路由器有三个“后端”选项,每个不同部分具有不同的含义。有“
(io)后端
(异步操作),(http_auth_realm)后端
”(定义一个自定义名称后端关联到一个特定的领域),和“(http_auth_backend)后端
”(类型的身份验证后端)。帮助避免混淆,这里有一个例子证明这三个: -
介绍了 8.0.22 类型 数字 默认值 0
最小值 0
最大值 1024年
IO线程处理连接的数量。
默认值为0(使用所有可用的CPU核/线程),但也接受1到1024之间的数字。在运行时系统可能限制上限超出此值。
请注意支持MySQL路由器8.0.22添加。
(io)后端= = 32 linux_epoll线程
-
介绍了 8.0.16 类型 字符串 [http_auth_backend]部分的名称。
路由器有三个“后端”选项,每个不同部分具有不同的含义。有“
(io)后端
(异步操作),(http_auth_realm)后端
”(定义一个自定义名称后端关联到一个特定的领域),和“(http_auth_backend)后端
”(类型的身份验证后端)。 -
介绍了 8.0.16 类型 字符串 默认值 基本
HTTP身份验证方法;默认为基本。
-
介绍了 8.0.16 类型 字符串 领域提出了身份验证的用户的名称。
-
介绍了 8.0.16 类型 字符串 默认值 有效的用户
要求用户通过身份验证后端验证;默认为有效用户,使这张支票。
-
介绍了 8.0.16 类型 字符串 默认值 文件
后端实现的名称;接受的值是“文件”(默认)或“metadata_cache”。
请注意添加在MySQL中路由器8.0.20 metadata_cache支持。
【http_auth_backend:名称】后台= metadata_cache metadata_cache auth_cache_refresh_interval = 2 auth_cache_ttl = 1
路由器有三个“后端”选项,每个不同部分具有不同的含义。有“
(io)后端
(异步操作),(http_auth_realm)后端
”(定义一个自定义名称后端关联到一个特定的领域),和“(http_auth_backend)后端
”(类型的身份验证后端)。 -
介绍了 8.0.16 类型 字符串 后端存储文件的名称,是相对的
data_folder
目录中。 -
介绍了 8.0.19 类型 字符串 有效值 gr
rs
AdminAPI对象的类型,路由器是引导,这是一个InnoDB ReplicaSet (rs)或InnoDB集群(gr)。
引导评估目标实例,并相应地设置这个选项在生成的配置文件。
这个选项被添加在MySQL中路由器8.0.19;相同版本InnoDB ReplicaSet支持补充道。