本节提供有关用于启动、配置和终止与
NDB
管理服务器的连接的 MGM API 函数的信息。
- 描述
此函数检索用于连接的连接字符串。
如果未执行任何调用,
ndb_mgm_set_connectstring()
则此函数返回默认连接字符串。此外,返回的连接字符串的格式可能与原始字符串略有不同,因为它可能包含原始字符串中不存在的说明符。
连接字符串格式与为ndb_mgm_set_connectstring() 讨论的格式相同。
- 签名
const char* ndb_mgm_get_connectstring ( NdbMgmHandle handle, char* buffer, int size )
- 参数
-
该函数接受三个参数:
一个
NdbMgmHandle
。指向
buffer
放置结果的 a 的指针。size
缓冲区的 。
- 返回值
连接字符串——这与推送到
buffer
.
- 描述
此函数获取正在(或曾经)建立连接的节点的 ID。
- 签名
int ndb_mgm_get_configuration_nodeid ( NdbMgmHandle handle )
- 参数
管理服务器句柄。
- 返回值
节点 ID。
- 描述
此函数检索连接使用的端口号。
- 签名
int ndb_mgm_get_connected_port ( NdbMgmHandle handle )
- 参数
一个
NdbMgmHandle
。- 返回值
端口号。
- 描述
此函数用于获取建立连接的主机的名称。
- 签名
const char* ndb_mgm_get_connected_host ( NdbMgmHandle handle )
- 参数
一个管理服务器
handle
。- 返回值
主机名。
- 描述
给定管理服务器句柄,此函数获取
NDB
指定管理服务器的引擎和 MySQL 服务器版本信息。- 签名
int ndb_mgm_get_version ( NdbMgmHandle handle, int* major, int* minor, int* build, int length, char* string )
- 参数
一个
NdbMgmHandle
, 和指向NDB
引擎major
,minor
和build
版本值的指针,以及一个指向版本的指针string
(连同强度的length
)。
版本字符串使用格式
,其中是三部分 MySQL 服务器版本,是三部分存储引擎版本。字符串表示发布级别或状态;
通常这是
、 或
之一,但有时也可能有其他值。
mysql-
x.x.x
ndb-y.y.y
-status
x.x.x
y.y.y
NDB
status
beta
rc
ga
- 返回值
ndb_mgm_get_version()
返回一个整数:成功时返回 0;任何非零值都表示错误。
- 描述
用于判断连接是否已经建立。
此功能不确定连接的另一端
是否有
“实时”管理服务器。用于
ndb_mgm_check_connection()
完成该任务。
- 签名
int ndb_mgm_is_connected ( NdbMgmHandle handle )
- 参数
一个管理服务器
handle
。- 返回值
-
该函数返回一个整数,其值解释如下:
0
:未连接到管理节点。任何非零值:已与管理节点建立连接。
- 描述
此函数可用于确定管理服务器是否在来自管理客户端的给定连接上运行。
- 签名
int ndb_mgm_check_connection ( NdbMgmHandle handle )
- 参数
An
NdbMgmHandle
(参见 第 3.1 节“MGM API 概念”)。- 返回值
在 NDB 7.5 及更高版本中,此函数在成功时返回 0,在句柄为 null 时返回 -1,在未连接时返回 -2。
在 NDB 7.4 及更早版本中,此函数在发生错误时返回 -1;否则它返回 0,即使管理服务器句柄为 NULL,或连接检查失败(错误#53242,错误#11760802)。
- 描述
这是一个方便的函数,它提供了一种简单的方法来确定连接字符串中引用的管理服务器的数量,如使用
ndb_mgm_set_connectstring()
.- 签名
int ndb_mgm_number_of_mgmd_in_connect_string ( NdbMgmHandle handle )
- 参数
一个管理句柄 (
NdbMgmHandle
)。- 返回值
成功时,一个非负整数;负整数表示失败。
- 描述
此功能可以为管理服务器设置本地绑定地址。如果使用,则必须在连接到管理服务器之前调用它。
- 签名
int ndb_mgm_set_bindaddress ( NdbMgmHandle handle, const char* address )
- 参数
-
这个函数有两个参数:
一个管理句柄 (
NdbMgmHandle
)。address
形式 的字符串。host
[:port
]
- 返回值
-
返回一个整数:
0
表示成功-
任何非零值都表示失败(地址无效)
重要的在实际尝试连接到管理之前,不会报告由绑定其他有效本地地址引起的错误。
- 描述
此函数用于设置管理服务器连接到节点的连接字符串。
- 签名
int ndb_mgm_set_connectstring ( NdbMgmHandle handle, const char* connection_string )
- 参数
-
ndb_mgm_set_connectstring()
有两个参数:一个管理服务器
handle
。-
其
connection_string
格式如下所示:connection_string := [nodeid-specification,]host-specification[,host-specification]
ndb_mgm_get_connectstring()
也将此格式用于连接字符串。可以使用单个连接字符串与多个管理服务器建立连接。
nodeid-specification := nodeid=id host-specification := host[:port]
id
,port
, 和host
定义如下:id
: 一个大于0
标识节点的整数config.ini
。port
:引用标准 Unix 端口的整数。host
: 包含有效网络主机地址的字符串。
- 返回值
该函数
-1
在失败时返回。
- 描述
此函数设置连接节点 ID。
- 签名
int ndb_mgm_set_configuration_nodeid ( NdbMgmHandle handle, int id )
- 参数
-
这个函数需要两个参数:
一个
NdbMgmHandle
。id
要连接到的节点的 。
- 返回值
该函数
-1
在失败时返回。
- 描述
通常,网络操作会在 60 秒后超时。这个函数允许你改变这个时间。
该函数设置的超时时间不仅适用于建立网络连接,还适用于 每一个需要使用网络连接进行通信的操作。这包括由任何 MGM API 函数、NDB API 方法调用或ndb_mgm客户端命令执行的每个网络读取或写入。
- 签名
int ndb_mgm_set_timeout ( NdbMgmHandle handle, unsigned int timeout )
- 参数
-
这个函数有两个参数:
管理服务器句柄 (
NdbMgmHandle
)。超时前等待的时间量,以毫秒表示。
- 返回值
返回
0
成功,任何其他值表示失败。
- 描述
此函数建立与ndb_mgm_set_connectstring() 设置的连接字符串指定的管理服务器的连接 。
- 签名
int ndb_mgm_connect ( NdbMgmHandle handle, int retries, int delay, int verbose )
- 参数
-
这个函数有 4 个参数:
一个管理服务器
handle
。retries
尝试连接时要进行 的次数。0
对于此值意味着进行一次连接尝试。delay
连接尝试之间 的秒数 。如果
verbose
是1
,则为每次连接尝试打印一条消息。
- 返回值
该函数
-1
在失败时返回。