Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
Nom | Défaut | Modifiable | Historique |
---|---|---|---|
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 |
Voici un éclaircissement sur l'utilisation des directives de configuration.
mysqlnd_qc.enable_qc
int
Active ou désactive le plugin. Si désactivé, l'extension ne se branchera pas dans mysqlnd pour proxize les appels C internes de l'API mysqlnd.
mysqlnd_qc.ttl
int
Time-to-Live (TTL) par défaut des entrées du cache, en secondes.
mysqlnd_qc.cache_by_default
int
Met en cache toutes les requêtes qu'elles commencent par le joker SQL activant le cache ou non. Les gestionnaires de stockage ne peuvent écraser ce paramètre qui est évalué par le core du plugin.
mysqlnd_qc.cache_no_table
int
Si l'on doit mettre en cache les requêtes sans nom de table dans n'importe
quelle colonne de méta donnée de leur résultat, par exemple
SELECT SLEEP(1)
, SELECT NOW()
,
SELECT SUBSTRING()
.
mysqlnd_qc.use_request_time
int
Utilise le temps de la requête PHP pour éviter les appels systèmes
gettimeofday()
?
Si vous utilisez le gestionnaire de stockage
APC
, ce devrait être positionné à la valeur de
apc.use_request_time
, sinon
des warnings seront générés.
mysqlnd_qc.time_statistics
int
Collecte des statistiques d'exécution et de stockage en utilisant l'appel
système gettimeofday()
. Les données ne seront collectées que si vous
utilisez aussi mysqlnd_qc.collect_statistics = 1
,
mysqlnd_qc.collect_statistics
int
Collecte des statistiques pour mysqlnd_qc_get_core_stats(). N'influence pas les statistiques des gestionnaires de stockage. Celles-ci peuvent faire partie intégrale du format de stockage du gestionnaire. Ainsi, la collecte de certaines statistiques concernant les gestionnaires de stockage ne peut être désactivée.
mysqlnd_qc.collect_statistics-log-file
int
Si mysqlnd_qc.collect_statistics
et
mysqlnd_qc.collect_statistics_log_file
sont affectés, le plugin récupèrera des statistiques dans le fichier précisé
toutes les 10 requêtes web lors de la fermeture de celle-ci par PHP
(PHP request shutdown). Le fichier de journal doit être accessible en écriture
par l'utilisateur du serveur web.
Depuis 1.1.0.
mysqlnd_qc.collect_query_trace
int
Collecte les backtraces des requêtes.
mysqlnd_qc.query_trace_bt_depth
int
Profondeur/niveau maximal des backtraces des requêtes.
mysqlnd_qc.ignore_sql_comments
int
Si l'on doit supprimer les commentaires SQL de la chaîne de requête
avant le hachage pour générer une clé du cache. A désactiver si vous
ne voulez pas deux requêtes comme SELECT /*my_source_ip=123*/ id FROM test
et SELECT /*my_source_ip=456*/ id FROM test
se référer à
la même entrée du cache.
Depuis 1.1.0.
mysqlnd_qc.slam_defense
int
Active la slam defense du gestionnaire si disponible
(protection contre le débordement du cache).
Supporté par les gestionnaires Default
et
APC
.
mysqlnd_qc.slam_defense_ttl
int
TTL
pour les entrées de caches périmées qui sont servies alors
qu'un autre client met à jour l'entrée. Supporté par le gestionnaire
APC
.
mysqlnd_qc.collect_normalized_query_trace
int
Collecte des traces de requêtes agrégées normalisées. Il faut compiler l'extension
avec NORM_QUERY_TRACE_LOG
pour utiliser ce paramètre.
mysqlnd_qc.std_data_copy
int
Gestionnaire de stockage par défaut. EXPERIMENTAL – utilisez le paramètre par défaut.
mysqlnd_qc.apc_prefix
string
Le gestionnaire de stockage
APC
enregistre
les données dans le cache utilisateur APC
. Ce paramètre
permet de préciser un préfixe à utiliser lors de l'enregistrement.
mysqlnd_qc.memc_server
string
Gestionnaire de stockage MEMCACHE
: Hôte memcache.
mysqlnd_qc.memc_port
int
Gestionnaire de stockage MEMCACHE
: Port memcache.
mysqlnd_qc.sqlite_data_file
string
Gestionnaire de sockage sqlite
: Fichier de données.
Tout paramètre sauf :memory:
en pratique.