|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Copyright 1997-2012 PHP Documentation Group.
Copyright 1997-2012 PHP Documentation Group.
mysqlnd_memcache_get_config
Информация о возвратах о сменной конфигурации
Описание
array mysqlnd_memcache_get_config(mixed connection);
Эта функция возвращает массив всего mysqlnd_memcache связанная конфигурационная информация, которая
присоединена к соединению MySQL. Это включает MySQL, объект Memcache, обеспеченный через mysqlnd_memcache_set, и табличная конфигурация отображения, которая была
автоматически собрана у MySQL Server.
Параметры
Возвращаемые значения
Массив mysqlnd_memcache конфигурационной информации об успехе, иначе FALSE .
У возвращенного массива есть эти элементы:
Таблица 22.82. mysqlnd_memcache_get_configструктура массива
| Ключ массива | Описание |
|---|---|
| memcached | Экземпляр Memcached связался к этому соединению MySQL mysqlnd_memcache_set. Можно использовать это, чтобы изменить
настройки memcache соединения, или непосредственно запрашивая сервер на этом соединении.
|
| образец | Регулярное выражение PCRE, используемое, чтобы соответствовать SQL-запрос, отправленный
серверу. Запросы, соответствующие этот образец, будут далее проанализированы, чтобы решить,
может ли запрос быть прерван и отправлен через интерфейс memcache или отправляется ли
запрос, используя общий протокол MySQL для сервера. Образец является любой образцом значения
по умолчанию (MYSQLND_MEMCACHE_DEFAULT_REGEXP) или это
устанавливается через mysqlnd_memcache_set.
|
| отображения | Ассоциативный массив со списком всех сконфигурированных контейнеров, поскольку они были
обнаружены этим плагином. Ключ для этих элементов является именем контейнера в конфигурации
MySQL. Значение описывается ниже. Содержание этого поля создается, запрашивая MySQL Server
во время ассоциации к MySQL и memcache использованию соединения mysqlnd_memcache_set.
|
| mapping_query | SQL-запрос, используемый во время mysqlnd_memcache_set идентифицировать доступные контейнеры и
отображения. Результат того запроса обеспечивается в mappingselement.
|
Примеры
Пример 22.396. mysqlnd_memcache_get_configпример
<?php$mysqli = new mysqli("host", "user", "passwd", "database");$memc = new Memcached();$memc->addServer("host", 11211);mysqlnd_memcache_set($mysqli, $memc);var_dump(mysqlnd_memcache_get_config($mysqli));?>
Вышеупомянутый пример выведет:
array(4) { ["memcached"]=> object(Memcached)#2 (0) { } ["pattern"]=> string(125) "/^\s*SELECT\s*(.+?)\s*FROM\s*`?([a-z0-9_]+)`?\s*WHERE\s*`?([a-z0-9_]+)`?\s*=\s*(?(?=["'])["']([^"']*)["']|([0-9e\.]*))\s*$/is" ["mappings"]=> array(1) { ["mymem_test"]=> array(6) { ["prefix"]=> string(13) "@@mymem_test." ["schema_name"]=> string(4) "test" ["table_name"]=> string(10) "mymem_test" ["id_field_name"]=> string(2) "id" ["separator"]=> string(1) "|" ["fields"]=> array(3) { [0]=> string(2) "f1" [1]=> string(2) "f2" [2]=> string(2) "f3" } } } ["mapping_query"]=> string(209) " SELECT c.name, CONCAT('@@', c.name, (SELECT value FROM innodb_memcache.config_options WHERE name = 'table_map_delimiter')) AS key_prefix, c.db_schema, c.db_table, c.key_columns, c.value_columns, (SELECT value FROM innodb_memcache.config_options WHERE name = 'separator') AS sep FROM innodb_memcache.containers c"}
См. Также
mysqlnd_memcache_set
|
Copyright 1997-2012 PHP Documentation Group.
mysqlnd_memcache_set
Свяжите соединение MySQL с соединением Memcache
Описание
bool mysqlnd_memcache_set(mixed mysql_connection,
Memcached memcache_connection,
string pattern,
callback callback);
Партнер mysql_connection с memcache_connection
использование pattern как регулярное выражение PCRE, и callback как обратный вызов уведомления или сбрасывать
ассоциацию mysql_connection.
Связывая соединение MySQL с соединением Memcache, эта функция запросит MySQL Server для своей конфигурации.
Это автоматически обнаружит, конфигурируется ли сервер, чтобы использовать InnoDB Плагин Демона Memcache или
поддержка MySQL Cluster NDB Memcache. Это также запросит сервер, чтобы автоматически идентифицировать
экспортируемые таблицы и другие параметры конфигурации. Результаты этой автоматической конфигурации могут
быть получены, используя mysqlnd_memcache_get_config.
Параметры
mysql_connection Дескриптор к MySQL Server, используя одно из расширений API MySQL для PHP, которые являются PDO_MYSQL, mysqli или ext/mysql.
memcache_connection
Экземпляр
с соединением с плагином MySQL Memcache Daemon. Если этот параметр опускается, то mysql_connection будет несвязано от любого memcache
соединения. И если предыдущая ассоциация будет существовать, то она будет заменена.
pattern Регулярное выражение в синтаксис , используемый, чтобы идентифицировать потенциальные Memcache-запросы. У запроса должно
быть три sub образца. Первый подобразец содержит требуемый cписок полей, второе имя столбца ID от
запроса и третьего требуемое значение. Если этот параметр опускается или набор рта к NULL , тогда образец значения по умолчанию будет использоваться.
callback
Обратный вызов, который будет использоваться всякий раз, когда запрос отправляется MySQL. Обратный вызов получит единственный булев параметр, говорящий, был ли запрос отправлен через Memcache.
Возвращаемые значения
TRUE если ассоциация или разъединение успешны, иначе FALSE
если есть ошибка.
Примеры
Пример 22.397. mysqlnd_memcache_set
пример с как
простой обратный вызов отладки.
<?php$mysqli = new mysqli("host", "user", "passwd", "database");$memc = new Memcached();$memc->addServer("host", 11211);mysqlnd_memcache_set($mysqli, $memc, NULL, 'var_dump');/* This query will be intercepted and executed via Memcache protocol */echo "Sending query for id via Memcache: ";$mysqli->query("SELECT f1, f2, f3 FROM test WHERE id = 1");/* f1 is not configured as valid key field, this won't be sent via Memcache */echo "Sending query for f1 via Memcache: ";$mysqli->query("SELECT id FROM test WHERE f1 = 1");mysqlnd_memcache_set($mysqli);/* Now the regular MySQL protocol will be used */echo "var_dump won't be invoked: ";$mysqli->query("SELECT f1, f2, f3 WHERE id = 1");?>
Вышеупомянутый пример выведет:
Sending query for id via Memcache: bool(true)Sending query for f1 via Memcache: bool(false)var_dump won't be invoked:
См. Также
mysqlnd_memcache_get_config
|