The behaviour of these functions is affected by settings in php.ini.
Name | Default | Changeable | Changelog |
---|---|---|---|
mysqlnd_qc.enable_qc | 1 | PHP_INI_SYSTEM | |
mysqlnd_qc.ttl | 30 | PHP_INI_ALL | |
mysqlnd_qc.cache_by_default | 0 | PHP_INI_ALL | |
mysqlnd_qc.cache_no_table | 0 | PHP_INI_ALL | |
mysqlnd_qc.use_request_time | 0 | PHP_INI_ALL | |
mysqlnd_qc.time_statistics | 1 | PHP_INI_ALL | |
mysqlnd_qc.collect_statistics | 0 | PHP_INI_ALL | |
mysqlnd_qc.collect_statistics_log_file | /tmp/mysqlnd_qc.stats | PHP_INI_SYSTEM | |
mysqlnd_qc.collect_query_trace | 0 | PHP_INI_SYSTEM | |
mysqlnd_qc.query_trace_bt_depth | 3 | PHP_INI_SYSTEM | |
mysqlnd_qc.collect_normalized_query_trace | 0 | PHP_INI_SYSTEM | |
mysqlnd_qc.ignore_sql_comments | 1 | PHP_INI_ALL | |
mysqlnd_qc.slam_defense | 0 | PHP_INI_SYSTEM | |
mysqlnd_qc.slam_defense_ttl | 30 | PHP_INI_SYSTEM | |
mysqlnd_qc.std_data_copy | 0 | PHP_INI_SYSTEM | |
mysqlnd_qc.apc_prefix | qc_ | PHP_INI_ALL | |
mysqlnd_qc.memc_server | 127.0.0.1 | PHP_INI_ALL | |
mysqlnd_qc.memc_port | 11211 | PHP_INI_ALL | |
mysqlnd_qc.sqlite_data_file | :memory: | PHP_INI_ALL |
Here's a short explanation of the configuration directives.
mysqlnd_qc.enable_qc
integer
Enables or disables the plugin. If disabled the extension will not plug into mysqlnd to proxy internal mysqlnd C API calls.
mysqlnd_qc.ttl
integer
Default Time-to-Live (TTL) for cache entries in seconds.
mysqlnd_qc.cache_by_default
integer
Cache all queries regardless if they begin with the SQL hint that enables caching of a query or not. Storage handler cannot overrule the setting. It is evaluated by the core of the plugin.
mysqlnd_qc.cache_no_table
integer
Whether to cache queries with no table name in any of columns meta data
of their result set, for example,
SELECT SLEEP(1)
, SELECT NOW()
,
SELECT SUBSTRING()
.
mysqlnd_qc.use_request_time
integer
Use PHP global request time to avoid
gettimeofday()
system calls?
If using
APC
storage handler
it should be set to the value of
apc.use_request_time
, if not
warnings will be generated.
mysqlnd_qc.time_statistics
integer
Collect run time and store time statistics using
gettimeofday()
system call? Data will be
collected only if you also set
mysqlnd_qc.collect_statistics = 1
,
mysqlnd_qc.collect_statistics
integer
Collect statistics for mysqlnd_qc_get_core_stats()? Does not influence storage handler statistics! Handler statistics can be an integral part of the handler internal storage format. Therefore, collection of some handler statistics cannot be disabled.
mysqlnd_qc.collect_statistics-log-file
integer
If mysqlnd_qc.collect_statistics
and
mysqlnd_qc.collect_statistics_log_file
are set, the plugin will dump statistics into the specified
log file at every 10th web request during PHP request shutdown.
The log file needs to be writable by the web server user.
Since 1.1.0.
mysqlnd_qc.collect_query_trace
integer
Collect query back traces?
mysqlnd_qc.query_trace_bt_depth
integer
Maximum depth/level of a query code backtrace.
mysqlnd_qc.ignore_sql_comments
integer
Whether to remove SQL comments from a query string before
hashing it to generate a cache key. Disable if you do not want
two statemts such as SELECT /*my_source_ip=123*/ id FROM test
and SELECT /*my_source_ip=456*/ id FROM test
to refer
to the same cache entry.
Since 1.1.0.
mysqlnd_qc.slam_defense
integer
Activates handler based slam defense (cache stampeding protection) if available.
Supported by
Default
and
APC
storage handler
mysqlnd_qc.slam_defense_ttl
integer
TTL
for stale cache entries which are
served while another client updates the entries. Supported by
APC
storage handler.
mysqlnd_qc.collect_normalized_query_trace
integer
Collect aggregated normalized query traces? The setting
has no effect by default. You compile the extension
using the define
NORM_QUERY_TRACE_LOG
to make use of the setting.
mysqlnd_qc.std_data_copy
integer
Default storage handler: copy cached wire data? EXPERIMENTAL – use default setting!
mysqlnd_qc.apc_prefix
string
The
APC
storage handler stores data in the
APC
user cache. The setting sets a prefix to be
used for cache entries.
mysqlnd_qc.memc_server
string
MEMCACHE
storage handler: memcache server host.
mysqlnd_qc.memc_port
integer
MEMCACHE
storage handler: memcached server port.
mysqlnd_qc.sqlite_data_file
string
sqlite
storage handler: data file. Any setting
but :memory:
may be of little practical value.