mysqlnd_ms_get_last_gtid
(PECL mysqlnd_ms >= 1.2.0)
mysqlnd_ms_get_last_gtid — Returns the latest global transaction ID
Description
Returns a global transaction identifier which belongs to a write operation no older than the last write performed by the client. It is not guaranteed that the global transaction identifier is identical to that one created for the last write transaction performed by the client.
Parameters
Return Values
Returns a global transaction ID (GTID) on success.
Otherwise, returns FALSE
.
The function mysqlnd_ms_get_last_gtid() returns the GTID obtained when executing the SQL statement from the fetch_last_gtid entry of the global_transaction_id_injection section from the plugins configuration file.
The function may be called after the GTID has been incremented.
Notes
Note:
mysqlnd_ms_get_last_gtid() requires PHP >= 5.4.0 and PECL mysqlnd_ms >= 1.2.0. Internally, it is using a mysqlnd library C functionality not available with PHP 5.3.
Please note, all MySQL 5.6 production versions do not provide clients with enough information to use GTIDs for enforcing session consistency. In the worst case, the plugin will choose the master only.
Examples
Example #1 mysqlnd_ms_get_last_gtid() example
<?php
/* Open mysqlnd_ms connection using mysqli, PDO_MySQL or mysql extension */
$mysqli = new mysqli("myapp", "username", "password", "database");
if (!$mysqli)
/* Of course, your error handling is nicer... */
die(sprintf("[%d] %s\n", mysqli_connect_errno(), mysqli_connect_error()));
/* auto commit mode, transaction on master, GTID must be incremented */
if (!$mysqli->query("DROP TABLE IF EXISTS test"))
die(sprintf("[%d] %s\n", $mysqli->errno, $mysqli->error));
printf("GTID after transaction %s\n", mysqlnd_ms_get_last_gtid($mysqli));
/* auto commit mode, transaction on master, GTID must be incremented */
if (!$mysqli->query("CREATE TABLE test(id INT)"))
die(sprintf("[%d] %s\n", $mysqli->errno, $mysqli->error));
printf("GTID after transaction %s\n", mysqlnd_ms_get_last_gtid($mysqli));
?>
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- MySQL Drivers and Plugins
- Mysqlnd replication and load balancing plugin
- mysqlnd_ms_dump_servers
- mysqlnd_ms_fabric_select_global
- mysqlnd_ms_fabric_select_shard
- mysqlnd_ms_get_last_gtid
- mysqlnd_ms_get_last_used_connection
- mysqlnd_ms_get_stats
- mysqlnd_ms_match_wild
- mysqlnd_ms_query_is_select
- mysqlnd_ms_set_qos
- mysqlnd_ms_set_user_pick_server
- mysqlnd_ms_xa_begin
- mysqlnd_ms_xa_commit
- mysqlnd_ms_xa_gc
- mysqlnd_ms_xa_rollback
Коментарии
404 Not Found