Documentation phpMyAdmin 3.0.0-dev

Prérequis

Introduction

phpMyAdmin peut gérer un serveur MySQL (cela nécessite un compte super-utilisateur) aussi bien qu'une seule base de données. Pour pouvoir administrer une seule base de données, il est nécessaire d'avoir un droit de lecture / écriture sur la base de données concernée. Il vous appartient de consulter la section appropriée dans le manuel de MySQL.

Actuellement phpMyAdmin sait :

Un mot au sujet des utilisateurs :

Beaucoup de gens ont des difficultés à comprendre le concept de gestion d'utilisateur par rapport à phpMyAdmin. Quand un utilisateur se connecte à phpMyAdmin, son nom d'utilisateur et son mot de passe sont passés directement à MySQL. phpMyAdmin ne fait de gestion d'utilisateurs par lui-même (autre que de permettre la manipulation de l'information du compte utilisateur MySQL) ; tous les utilisateurs doivent être des utilisateurs MySQL valides.

1 phpMyAdmin peut compresser des fichiers d'exportation (dumps) ou CSV (aux formats Zip, GZip -RFC 1952- ou Bzip2) si vous utilisez PHP4 version 4.0.4 ou ultérieure avec l'option Zlib (--with-zlib) et/ou Bzip2 (--with-bz2). Un support approprié peut aussi nécessiter des changements dans le fichier php.ini.

Installation

  1. Installation rapide
  2. Script d'installation
  3. Infrastructure de tables liées
  4. Mise à jour
  5. Modes d'authentification

phpMyAdmin n'applique pas de méthodes de sécurité spéciales au serveur de données MySQL. Il appartient toujours à l'administrateur système d'accorder les autorisations adéquates sur les bases de données MySQL. La page « Privilèges » de phpMyAdmin peut être utilisée pour cela.

À l'attention des utilisateurs Mac : Si vous utilisez une version Mac OS antérieure à la version OS X, StuffIt se débrouille avec les formats Mac.
Vous devrez donc convertir, tout comme dans BBEdit, au format Unix TOUS les scripts phpMyAdmin avant de les transférer sur votre serveur, car PHP ne semble pas apprécier les caractères de fin de ligne au format Mac (« \r »).

Installation rapide

  1. Choisissez un kit de distribution approprié sur la page de téléchargement de phpmyadmin.net. Certains kits ne contiennent que les messages en anglais, d'autres les messages pour toutes les langues au format UTF-8 (ce qui devrait suffire dans la plupart des cas), d'autres les messages pour toutes les langues et tous les jeux de caractères. Nous supposerons que vous avez choisi un kit dont le nom est de la forme phpMyAdmin-x.x.x-all-languages.tar.gz.
  2. « Détarrez » (.tar) ou « dézippez » (.zip) la distribution (assurez-vous de conserver l'arborescence des sous-répertoires). Exécutez ensuite la commande suivante : tar -xzvf phpMyAdmin_x.x.x-all-languages.tar.gz dans le répertoire document racine de votre serveur web. Si vous n'avez pas d'accès direct à votre répertoire racine document, mettez les fichiers dans un répertoire de votre ordinateur local, et, après l'étape 4, transférez le répertoire sur votre serveur web en utilisant, par exemple, le protocole ftp.
  3. Assurez-vous que tous les scripts ont le propriétaire adéquat (si PHP fonctionne en mode sécurisé, avoir des scripts avec un propriétaire différent de celui des autres posera un problème). Voir la section FAQ 4.2 et FAQ 1.26 pour des suggestions.
  4. Maintenant vous devez configurer votre installation. Il y a deux méthodes pouvant être utilisées. Traditionnellement, les utilisateurs ont une copie modifiée manuellement du fichier config.inc.php, mais maintenant un script d'installation de type assistant d'installation est fourni pour ceux qui préfèrent une installation graphique. Créer un fichier config.inc.php demeure néanmoins un moyen rapide pour démarrer et nécessaire pour certaines fonctionnalités avancées.
  5. Si vous utilisez la configuration auth_type, nous vous recommandons de protéger le répertoire dans lequel vous installez phpMyAdmin, car cette configuration ne nécessite pas que l'utilisateur donne un mot de passe pour accéder au répertoire d'installation de phpMyAdmin. Nous vous recommandons d'utiliser une méthode d'authentification alternative comme par exemple avec HTTP–AUTH dans un fichier .htaccess ou utilisez la méthode d'authentification par cookie ou http. Consultez la sous-section multi-utilisateurs de cette FAQ pour des informations supplémentaires et particulièrement la partie FAQ 4.4.
  6. Ouvrir le répertoire principal phpMyAdmin dans votre navigateur. phpMyAdmin devrait maintenant afficher un écran de bienvenue et vos bases de données, ou une boîte de dialogue de connexion si vous utilisez le mode HTTP ou le mode authentification par cookie.
  7. Vous devrez interdire l'accès au sous-répertoire libraries de votre serveur Web. Pour Apache, vous pouvez utiliser le fichier .htaccess fourni dans ce dossier, pour les autres serveurs Web, vous devrez le configurer vous-même. Une telle configuration empêche de possibles vulnérabilités de « path exposure » et de « cross side scripting » qui pourraient être découvertes dans le code.

Infrastructure des tables liées

Si vous voulez bénéficier de toute une série de nouveautés (signets, commentaires, historique SQL, génération de PDF, transformation des contenus de champ, etc.), vous devrez créer un ensemble de tables spéciales. Ces tables peuvent se trouver dans votre propre base de données, ou dans une base de données centrale pour une installation multi-utilisateurs (cette base de données serait alors accée par le controluser, aussi, aucun autre utilisateur ne devrait avoir de droits sur celle-ci).

Veuillez regarder dans votre répertoire ./scripts/, où vous devriez trouver un fichier du nom de create_tables.sql. (Si vous utilisez un serveur Windows, portez une attention particulière à la partie FAQ 1.23).

Si vous avez déjà cette infrastructure et mis à jour vers MySQL 4.1.2 ou ultérieur, veuillez utiliser le fichier upgrade_tables_mysql_4_1_2+.sql.

Vous pouvez d'ores et déjà utiliser phpMyAdmin qui créera les tables pour vous. S'il vous plaît, sachez que vous pouvez avoir besoin de privilèges spéciaux (administrateur) pour créer la base de données et les tables, et que le script peut avoir besoin de quelques ajustements en fonction du nom de la base de données.

Après avoir importé le fichier create_tables.sql, vous devrez spécifier le nom des tables dans votre fichier ./config.inc.php. Vous trouverez les directives à utiliser pour cela dans la section Configuration. Vous aurez également besoin d'un controluser avec les droits appropriés pour ces tables (voir la section Utiliser les modes d'authentification ci-dessous).

Mise à jour :

Copiez simplement le fichier config.inc.php de votre installation précédente dans votre nouvelle installation. Les fichiers de configuration de très anciennes versions (2.3.0 ou précédentes) peuvent nécessiter des ajustements car certaines options ont été modifiées ou supprimées. Pour une compatibilité avec PHP 6, supprimez une déclaration set_magic_quotes_runtime(0); que vous pourriez trouver à la fin de votre fichier de configuration.

Vous ne devez pas copier libraries/config.default.php par dessus config.inc.php car le fichier de configuration par défaut est spécifique à chaque version.

Si vous avez mis à jour votre serveur MySQL d'une version plus ancienne que la 4.1.2 vers une version 4.1.2 ou ultérieure et si vous utilisez la partie pmadb/infrastructure des tables liées, vous devez exécuter le script suivant : scripts/upgrade_tables_mysql_4_1_2+.sql.

Utiliser les modes d'authentification :

Mode d'authentification 'HTTP'

Mode d'authentification 'cookie' :

Mode d'authentification 'signon'

Mode d'authentification 'config'

Configuration

À l'attention des utilisateurs Mac : PHP ne semble pas apprécier les caractères de fin de ligne Mac (« \r »). Aussi, assurez-vous de choisir l'option qui autorise l'utilisation des caractères de fin de ligne *nix (« \n ») dans votre éditeur de texte avant d'enregistrer un script que vous avez modifié.

Note sur la configuration : Presque toutes les données de configuration sont placées dans config.inc.php. Si ce fichier n'existe pas, veuillez vous rapporter à la section Installation rapide pour en créer un. Ce fichier ne nécessite de contenir que les paramètres dont vous voudriez changer la valeur par défaut dans le fichier libraries/config.default.php.

Les paramètres relatifs à la conception (comme les couleurs), se trouvent dans themes/themename/layout.inc.php. Vous pouvez également créer les fichiers config.footer.inc.php et config.header.inc.php pour ajouter à votre site du code spécifique à inclure en en-tête et en pied de chaque page.

$cfg['PmaAbsoluteUri'] chaîne
Définissez ici l'URL complète (avec le chemin d'accès complet) du répertoire d'installation de votre phpMyAdmin. C'est-à-dire http://www.votre_site.net/chemin_d_acces_avotre_repertoire_phpMyAdmin/.
Veuillez noter également que l'URL sur certains serveurs Web est sensible à la casse. N'oubliez pas le slash (« / ») final pour votre URL.

À partir de la version 2.3.0, il est conseillé d'essayer de laisser ce paramètre à blanc. Dans la plupart des cas, phpMyAdmin détecte automatiquement le paramètre approprié. Les utilisateurs de « port forwarding » devront définir PmaAbsoluteUri (plus de renseignements ici). Un bon test est de naviguer dans une table, d'éditer une ligne et de l'enregistrer. Vous devriez obtenir un message d'erreur si phpMyAdmin rencontre des problèmes pour détecter automatiquement la bonne valeur. Si vous obtenez une erreur indiquant que ce paramètre doit être défini ou que le code d'auto-détection échoue à trouver le chemin d'accès, veuillez poster un rapport de bogue sur notre traqueur de bogues pour que nous améliorions le code.
$cfg['PmaNoRelation_DisableWarning'] booléen
À partir de la version 2.3.0 phpMyAdmin offre beaucoup de fonctionnalités pour travailler avec les tables maîtres / de référence (voir $cfg['Servers'][$i]['pmadb']).
Si vous essayez de le paramétrer et qu'il ne fonctionne pas pour vous, regardez la page « Structure » d'une base de données où vous voudriez l'utiliser. Vous trouverez alors un lien qui analysera pourquoi ces fonctionnalités ont été désactivées.
Si vous ne voulez pas utiliser ces fonctionnalités, mettez cette variable à TRUE pour empêcher ce message d'apparaître.
$cfg['SuhosinDisableWarning'] booléen
Un avertissement est affiché sur la page principale si Suhosin est détecté. Vous pouvez définir ce paramètre à TRUE pour empêcher ce message d'apparaître.
$cfg['blowfish_secret'] chaîne
Le mode d'authentification par « cookie » utilise l'algorithme blowfish pour chiffrer le mot de passe.
Si vous utilisez le mode d'authentification par 'cookie', entrez ici une phrase aléatoire de votre choix. Elle sera utilisée de manière interne par l'algorithme blowfish : cette phrase mot de passe ne vous sera pas demandée. Le nombre maximum de caractères pour ce paramètre semble être 46.
$cfg['Servers'] tableau
Depuis la version 1.4.2, phpMyAdmin gère l'administration de plusieurs serveurs MySQL. Par conséquent, un tableau $cfg['Servers'] a été ajouté qui contient les informations de connexions pour les différents serveurs. Le premier $cfg['Servers'][$i]['host'] contient le nom d'hôte du premier serveur, le second $cfg['Servers'][$i]['host'] le nom d'hôte du second serveur, etc. Dans le fichier libraries/config.default.php, il n'y a qu'une section pour la définition du serveur, cependant vous pouvez en mettre autant que vous le voulez dans le fichier config.inc.php; copier ce bloc ou d'autres parties nécessaires (il n'est pas utile de définir tous les paramètres, seulement ceux que vous avez besoin de changer).
$cfg['Servers'][$i]['host'] chaîne
Le nom d'hôte ou l'adresse IP de votre $i-ème serveur MySQL. C'est-à-dire localhost.
$cfg['Servers'][$i]['port'] chaîne
Le numéro de port de votre $i-ème serveur MySQL. Par défaut : 3306 (laissez à blanc pour utiliser la valeur par défaut). Si vous utilisez « localhost » comme nom d'hôte, MySQL ignore ce numéro de port et se connecte avec le socket, donc, si vous voulez vous connecter avec un port différent de celui par défaut, utilisez « 127.0.0.1 » ou le nom d'hôte réel dans $cfg['Servers'][$i]['host'].
$cfg['Servers'][$i]['socket'] chaîne
Le chemin d'accès vers le socket à utiliser. Laissez à blanc pour utiliser la valeur par défaut.
Pour déterminer le bon socket, vérifiez votre configuration MySQL ou, en utilisant la ligne de commande mysql, utilisez la commande status. Parmi les informations affichées se trouvera le socket utilisé.
$cfg['Servers'][$i]['ssl'] booléen
Pour activer ou pas une connexion SSL vers le serveur MySQL.
$cfg['Servers'][$i]['connect_type'] chaîne
Quel type de connexion utiliser avec le serveur MySQL. Vos choix sont 'socket' et 'tcp'. Par défaut, c'est 'tcp' parce qu'il est pratiquement sûr qu'il est disponible sur tous les serveurs MySQL, alors que les sockets ne sont pas gérés sur certaines plateformes.

Pour utiliser le mode socket, votre serveur MySQL doit être sur la même machine que le serveur Web.
$cfg['Servers'][$i]['extension'] chaîne
Définit l'extension php MySQL utilisée pour la connexion. Les options autorisées sont :

mysql : L'extension MySQL classique. C'est l'option recommandée et par défaut à ce jour.

mysqli : L'extension MySQL améliorée. Cette extension devient disponible avec php version 5.0.0, et recommandée pour se connecter sur un serveur exécutant MySQL version 4.1.x.
$cfg['Servers'][$i]['compress'] booléen
Pour utiliser ou non un protocole compressé pour la connexion au serveur MySQL (expérimental).
Cette fonctionnalité requiert PHP version 4.3.0 ou ultérieure.
$cfg['Servers'][$i]['controluser'] chaîne
$cfg['Servers'][$i]['controlpass'] chaîne
Ce compte spécial est utilisé pour deux propos distincts : rendre possible toutes les fonctionnalités relationnelles (voir $cfg['Servers'][$i]['pmadb']) et, pour un serveur MySQL de version inférieure à 4.1.2 ou exécuté avec l'option --skip-show-database, permettre une installation multi-utilisateurs (mode d'authentification HTTP ou par cookie).

Si vous utilisez les modes d'authentification HTTP ou par cookie (ou le mode d'authentification 'config' depuis phpMyAdmin 2.2.1), vous devez fournir des informations sur un compte MySQL qui a un privilège SELECT sur les tables  mysql.user (toutes les colonnes sauf « Password »), mysql.db (toutes les colonnes) et mysql.tables_priv (toutes les colonnes sauf « Grantor » et « Timestamp »). Ce compte est utilisé pour vérifier quelles bases de données l'utilisateur pourra voir à la connexion.
Veuillez consulter la section Installation sur « Utiliser les modes d'authentification » pour plus de renseignements.

Dans les versions de phpMyAdmin antérieures à la version 2.2.5, ils étaient appelés « stduser/stdpass ».
$cfg['Servers'][$i]['auth_type'] chaîne ['HTTP'|'http'|'cookie'|'config'|'signon']
Définit le mode d'authentification config, cookie, signon ou HTTP qui sera utilisé sur le serveur. Veuillez consulter la section Installation sur « Utiliser les modes d'authentification » pour plus de renseignements.
$cfg['Servers'][$i]['user'] chaîne
$cfg['Servers'][$i]['password'] chaîne
En utilisant auth_type = 'config', c'est la paire utilisateur/mot de passe qu'utilisera phpMyAdmin pour se connecter au serveur MySQL. Cette paire  utilisateur/mot de passe n'est pas nécessaire quand  les modes d'authentification HTTP ou cookie sont utilisés, et doit rester vide.
$cfg['Servers'][$i]['nopassword'] boolean
Permet d'essayer de se connecter sans mot de passe quand la connexion avec mot de passe a échoué. Ceci peut être utilisé en conjonction avec l'authentification HTTP, quand l'authentification est faite par d'autres moyens et que phpMyAdmin obtient le nom d'utilisateur à partir de auth et utilise un mot de passe « vide » pour se connecter à MySQL. La connexion par mot de passe est d'abord essayée, mais ensuite, en moyen de secours, aucune méthode par mot de passe n'est essayée.
$cfg['Servers'][$i]['only_db'] chaîne ou tableau
S'il est indiqué un nom de base de données (ou un tableau de noms de bases de données) , seule(s) cette (ces) base(s) sera (seront) affichée(s) à l'utilisateur. Depuis la version 2.2.1 de phpMyAdmin, ce(s) nom(s) de base(s) de données peuvent contenir des méta-caractères MySQL (« _ » et « % ») : si vous voulez utiliser des instances littérales de ces caractères, utilisez des séquences d'échappement (c'est-à-dire écrivez 'ma\_bdd' et pas 'ma_bdd').
Ce paramétrage est un moyen efficace de diminuer la charge du serveur puisque ce dernier n'a pas besoin d'envoyer des requêtes MySQL pour construire la liste des bases de données disponibles. Mais cela ne remplacera pas les règles de privilèges sur le serveur de base de données MySQL. S'il est utilisé, cela signifie seulement que seules ces bases de données seront affichées, mais pas que toutes les autres bases de données ne pourront pas être utilisées.

Un exemple d'utilisation de plus d'une base de données : $cfg['Servers'][$i]['only_db'] = array('bdd1', 'bdd2');

Comme dans phpMyAdmin 2.5.5, l'ordre à l'intérieur du tableau est utilisé pour trier les bases de données dans le cadre de gauche, de la sorte, vous pouvez ordonner vos bases de données comme bon vous semble.
Si vous voulez avoir certaines bases de données en haut de page, et que peu importe l'ordre des autres bases, vous n'avez pas besoin de spécifier toutes les autres bases. Utilisez : $cfg['Servers'][$i]['only_db'] = array('bdd3', 'bdd4', '*'); plutôt que de dire à phpMyAdmin qu'il doit afficher bdd3 et bdd4 en haut, et le reste en ordre alphabétique.
$cfg['Servers'][$i]['hide_db'] chaîne
Expression régulière pour masquer certaines bases. Ceci ne les masque que pour le listage, l'utilisateur est toujours capable d'y accéder (en utilisant par exemple la zone de requête SQL). Pour limiter l'accès, utiliser le système de privilège de MySQL.

Par exemple, pour masquer toutes les bases de données commençant par la lettre « a », utilisez
$cfg['Servers'][$i]['hide_db'] = '^a';
et pour masquer les bases de données « db1 » et « db2 », utilisez
$cfg['Servers'][$i]['hide_db'] = '(db1|db2)';
Vous pourrez trouver plus d'informations sur les expressions régulières dans la section syntaxe de motif PCRE dans le manuel de référence de PHP.
$cfg['Servers'][$i]['verbose'] chaîne
Seulement utile si vous utilisez phpMyAdmin avec plusieurs entrées de serveurs. Si elle est définie, cette chaîne sera affichée à la place du nom d'hôte dans le menu déroulant de la page principale. Cela peut être utile si vous ne voulez montrer que certaines bases de données sur votre système,par exemple. Pour le mode d'authentification HTTP, tous les caractères non-US-ASCII seront enlevés.
$cfg['Servers'][$i]['pmadb'] chaîne
Définit le nom de la base de données contenant l'infrastructure des tables liées.

Voir la section Infrastructure des tables liées dans ce document pour voir les avantages de cette infrastructure, ainsi qu'une manière rapide de créer cette base de données et les tables nécessaires.

Si vous êtes le seul utilisateur de cette installation phpMyAdmin, vous pouvez utiliser votre base de données courante pour stocker ces tables spéciales; dans ce cas, mettez juste le nom de votre base de données dans $cfg['Servers'][$i]['pmadb'].

Pour une installation multi-utilisateurs, renseigner ce paramètre avec le nom de votre base de données centrale contenant l'infrastructure des tables liées.
$cfg['Servers'][$i]['bookmarktable'] chaîne
Depuis la version 2.2.0, phpMyAdmin permet aux utilisateurs la mise en signets (favoris) des requêtes. Cela peut être utile pour les requêtes que vous utilisez souvent.

Pour pouvoir utiliser cette fonctionnalité :
$cfg['Servers'][$i]['relation'] chaîne
Depuis la version 2.2.4, vous pouvez décrire, dans une table spéciale « relation », quel champ est une clé pour une autre table (une clé étrangère). phpMyAdmin utilise actuellement cela pour :
Les clés peuvent être numériques ou alphanumériques.

Pour permettre l'utilisation de cette fonctionnalité : Veuillez noter que dans la version actuelle, master_db doit être identique à foreign_db. Ces champs ont été prévus pour le développement futur de relations inter-bases.
$cfg['Servers'][$i]['table_info'] chaîne
Depuis la version 2.3.0, vous pouvez décrire dans une table spéciale « table_info », quel champ doit être affiché comme info-bulle en déplaçant le curseur sur la clé correspondante.
Cette variable de configuration détient le nom de cette table spéciale. Pour pouvoir utiliser cette fonctionnalité : Astuce d'utilisation : Champ à afficher.
$cfg['Servers'][$i]['table_coords'] chaîne
$cfg['Servers'][$i]['pdf_pages'] chaîne
Depuis la version 2.3.0, phpMyAdmin peut créer des pages PDF montrant les relations entre vos tables. Pour ce faire, il a besoin de deux tables « pdf_pages » (qui stocke les informations sur les pages PDF disponibles) et « table_coords » (qui stocke les coordonnées où chaque table sera placée sur le schéma PDF réalisé).

Vous devez utiliser la fonctionnalité « relation ».

Pour pouvoir utiliser cette fonctionnalité : Astuce d'utilisation : Réalisation de PDF.
$cfg['Servers'][$i]['column_info'] chaîne
Depuis la version 2.3.0, vous pouvez stocker des commentaires pour décrire chaque colonne de chaque table. Ils seront alors visibles dans « Version imprimable ».

À partir de la version 2.5.0, les commentaires sont par conséquent utilisés dans les pages de propriété de table et dans la vue afficher la table, apparaissant sous forme d'info-bulle au-dessus du nom de colonne (page propriétés) ou intégrés dans l'en-tête de la vue parcours de table. Ils peuvent aussi être vus dans un fichier d'exportation de table. Veuillez consulter les directives de configuration adéquates plus loin.

Une autre nouveauté de la version 2.5.0 est le système de conversion MIME qui est également fondé sur la structure de table suivante. Voir la section Transformations pour plus de renseignements. Pour utiliser le système de conversion MIME, votre table column_info doit contenir les trois nouveaux champs 'mimetype', 'transformation', 'transformation_options'.

Pour autoriser l'utilisation de cette fonctionnalité :
$cfg['Servers'][$i]['history'] chaîne
Depuis la version 2.5.0, vous pouvez stocker votre historique SQL, ce qui signifie toutes les requêtes que vous saisissez manuellement dans l'interface de phpMyAdmin. Si vous ne voulez pas utiliser un historique stocké dans une table, vous pouvez choisir un historique utilisant JavaScript. En utilisant JavaScript, toutes les entrées de votre historique seront perdues en fermant la fenêtre.

En utilisant $cfg['QueryHistoryMax'], vous pouvez spécifier le nombre d'entrées de l'historique que vous voulez conserver. À chaque connexion, cette liste est réduite au nombre maximum d'entrées.

La requête historique n'est disponible que si JavaScript est activé dans votre navigateur.

Pour autoriser l'utilisation de cette fonctionnalité :
$cfg['Servers'][$i]['designer_coords'] chaîne
Depuis la version 2.10.0, une interface Designer est disponible ; elle permet de gérer visuellement les relations.

Pour utiliser cette fonctionnalité :
$cfg['Servers'][$i]['verbose_check'] booléen
La version 2.5.0 introduisant la nouvelle gestion de la conversion MIME, la colonne column_info recense maintenant trois nouveaux champs. Si cette variable est définie à TRUE (par défaut) phpMyAdmin vérifiera si vous disposez de la dernière structure disponible de la table. Si ce n'est pas le cas, il enverra un avertissement au super-utilisateur.

Vous pouvez désactiver cette fonctionalité en positionnant la variable à FALSE, ce qui améliorerait les performances.

Il est recommandé de la positionner à FALSE, quand vous êtes sûr que votre structure est à jour.
$cfg['Servers'][$i]['AllowRoot'] booléen
Autoriser ou non un accès à la racine. Il s'agit seulement d'une simplification des règles ci-dessous.
$cfg['Servers'][$i]['AllowDeny']['order'] chaîne
Si votre règle « order » est vide, alors l'authentification IP est désactivée.

Si votre règle « order » est définie à 'deny,allow' alors le système applique toutes les règles « deny » puis les règles « allow ». L'accès est autorisé par défaut. Tout client qui ne répondrait pas à une commande « deny » ou « allow » sera autorisé à accéder au serveur.

Si votre règle « order » est définie à 'allow,deny' alors le système applique toutes les règles « allow » puis les règles « deny ». L'accès est refusé par défaut. Tout client qui ne répondrait pas à une directive « allow » ou « deny » se verra refuser l'accès au serveur.

Si votre règle « order » est définie à 'explicit', l'authentification est réalisée de manière similaire à la règle 'deny,allow', avec en plus la restriction que la combinaison de votre hôte/nom d'utilisateur doit être présente dans les règles « allow », et pas dans les règles « deny ». C'est le moyen le plus sûr d'utiliser les règles allow/deny, et qui est employé pour Apache pour spécifier les règles allow et deny sans définir d'ordre.

Veuillez également consulter $cfg['TrustedProxies'] pout la détection d'adresse IP derrière des proxies.
$cfg['Servers'][$i]['AllowDeny']['rules'] tableau de chaînes
Le format général des règles est le suivant :
    <'allow' | 'deny'><username> ['from'] <ipmask>
    
Si vous voulez que cela concerne tous les utilisateurs, il est possible d'utiliser un symbole '%' comme méta-caractère dans le champ username.
Il y a quelques raccourcis que vous pouvez utiliser pour le champ ipmask (veuillez noter que les adressages ADDRESSE_SERVER pourraient ne pas être disponibles sur tous les serveurs Web) :
'Tout' -> 0.0.0.0/0
'Hôte local' -> 127.0.0.1/8
'Réseau local de classe A' -> ADDRESSE_SERVER/8
'Réseau local de classe B' -> ADDRESSE_SERVER/16
'Réseau local de classe C' -> ADDRESSE_SERVER/24
Avoir une liste de règles vide est équivalent à l'utilisation de 'allow % from all' si l'ordre de votre règle est définie à 'deny,allow' ou 'deny % from all' si l'ordre de votre règle est définie à 'allow,deny' ou 'explicit'.

Pour le système de concordance IP, ce qui suit fonctionne :
xxx.xxx.xxx.xxx (une adresse IP exacte)
xxx.xxx.xxx.[yyy-zzz] (une plage d'adresses IP)
xxx.xxx.xxx.xxx/nn (CIDR, adresses IP de type Classless Inter-Domain Routing -- routage inter-domaine sans classe)
Mais ce qui suit ne fonctionne pas :
xxx.xxx.xxx.xx[yyy-zzz] (plage partielle d'adresses IP )
$cfg['Servers'][$i]['SignonSession'] chaîne
Nom de la session qui sera utilisée pour le mode d'authentification 'signon'.
$cfg['Servers'][$i]['SignonURL'] chaîne
URL où sera redirigé l'utilisateur pour se connecter avec le mode d'authentification 'signon'. Doit être absolue et inclure le protocole.
$cfg['Servers'][$i]['LogoutURL'] chaîne
URL où sera redirigé l'utilisateur après la déconnexion (ceci n'affecte pas la mode d'authentification 'config'). Doit être absolue et inclure le protocole.
$cfg['ServerDefault'] entier
Si vous avez plus d'un serveur, vous pouvez définir $cfg['ServerDefault'] sur n'importe lequel d'entre eux pour s'auto-connecter sur celui-ci quand phpMyAdmin est démarré, ou le définir à 0 sur tous les serveurs pour avoir une liste de serveurs auxquels se connecter.
Si vous n'avez qu'un seul serveur, $cfg['ServerDefault'] DOIT être défini sur ce serveur.
$cfg['MaxDbList'] entier
Le nombre maximum de noms de bases de données à afficher dans le cadre de navigation et dans la liste des bases de données.
$cfg['MaxTableList'] entier
Le nombre maximum de noms de tables à afficher dans la liste du panneau principal. Cette limite est aussi appliquée dans le panneau de navigation en mode allégé.
$cfg['MaxCharactersInDisplayedSQL'] entier
Le nombre maximum de caractères d'une requête SQL à afficher. La limite par défaut de 1000 devrait être correcte pour éviter l'affichage de tonnes de code hexadécimal représentant des BLOB, mais certains utilisateurs ont de vraies requêtes SQL qui dépassent 1000 caractères.
$cfg['OBGzip'] chaîne/booléen
Définit si l'on utilise la mise en cache des sorties (output buffering) GZip pour accroître la vitesse des transferts HTTP.
Mettre à true/false pour activer/désactiver. Quand défini sur 'auto' (chaîne), phpMyAdmin essaie d'activer la mise en cache des sorties et la désactivera automatiquement si votre navigateur a des problèmes avec la mise en cache. IE6, avec un certain correctif, est connu pour provoquer une corruption de données en ayant la mise en cache activée.
$cfg['PersistentConnections'] booléen
Définit si les connexions persistantes doivent être utilisées (mysql_connect ou mysql_pconnect).
$cfg['ForceSSL'] booléen
Pour forcer ou pas l'utilisation de https lors de l'accès à phpMyAdmin.
$cfg['ExecTimeLimit'] entier ['nombre de secondes']
Définit le nombre de secondes allouées à un script pour s'exécuter. Si le nombre de secondes est défini à zéro, aucune limite de temps n'est imposée.
Ce paramètre est utilisé lors de l'importation/exportation de fichiers de base mais n'a pas d'effet quand PHP est exécuté en mode sécurisé.
$cfg['MemoryLimit'] entier ['nombre d'octets']
Définit le nombre d'octets q'un script est autorisé à allouer. Si ce nombre est défini à zéro, aucune limite n'est imposée.
Ce paramètre est utilisé lors de l'importation/exportation de fichiers dump mais n'a aucun effet lorsque PHP est exécuté en mode sécurisé.
Vous pouvez aussi utiliser une chaîne comme dans le fichier php.ini, par ex. '16M'.
$cfg['SkipLockedTables'] booléen
Marque les tables utilisées et permet de montrer les bases de données avec des tables verrouillées (depuis la version MySQL 3.23.30).
$cfg['ShowSQL'] booléen
Définit si les requêtes SQL générées par phpMyAdmin doivent être affichées.
$cfg['AllowUserDropDatabase'] booléen
Définit si les utilisateurs lamda (non administrateur) sont autorisés à supprimer leur propre base de données. S'il est défini à FALSE, le lien « Supprimer la base … » ne sera pas visible, et même la commande « DROP DATABASE ma_base_de_donnees » sera rejetée. Très pratique pour un FAI avec beaucoup de clients.
Veuillez noter que cette limitation des requêtes SQL n'est pas aussi stricte en utilisant les privilèges MySQL. Cela est dû à la nature des requêtes SQL qui peuvent être très compliquées. Aussi, ce choix doit être vu comme une aide pour éviter une suppression accidentelle plutôt qu'une limitation de privilèges stricte.
$cfg['Confirm'] booléen
Définit si un avertissement (« Êtes-vous vraiment sûr… ») doit être affiché quand vous êtes sur le point de perdre des données.
$cfg['LoginCookieRecall'] booléen
Définit si le compte de connexion précédent doit être rappelé en mode d'authentification par cookie.
$cfg['LoginCookieValidity'] entier ['nombre de secondes']
Définit la durée de validité d'un cookie de connexion.
$cfg['LoginCookieStore'] entier ['nombre de secondes']
Définit la durée de stockage d'un cookie de connexion dans votre navigateur. Par défaut, 0 signifie qu'il sera conservé pour la session en cours. Ceci est recommandé pour les environnements non sécurisés.
$cfg['LoginCookieDeleteAll'] booléen
Si activé (par défaut), la déconnexion supprime les cookies pour tous les serveurs, sinon seulement pour le serveur en cours. Définir ce paramètre à false permet d'oublier plus facilement de se déconnecter des autres des autres serveurs quand vous en utilisez plusieurs.
$cfg['UseDbSearch'] booléen
Définit si « rechercher une chaîne dans la base de données » est activé.
$cfg['IgnoreMultiSubmitErrors'] booléen
Définit si phpMyAdmin continuera à exécuter une requête multiple si l'une d'elles échoue. Par défaut, l'exécution de la requête multiple sera arrêtée.
$cfg['VerboseMultiSubmit'] booléen
Définit si phpMyAdmin affichera les résultats de chaque requête d'une requête multiple intégrés dans le fichier journal SQL en tant que commentaires insérés. Défini par défaut à TRUE.
$cfg['AllowArbitraryServer'] booléen
Si ce paramètre est activé, il vous permet de vous connecter à des serveurs arbitraires en utilisant l'authentification par cookie.

REMARQUE : Veuillez utiliser ce paramètre avec précaution, car il peut permettre aux utilisateurs d'accéder aux serveurs MySQL placés derrière votre pare-feu où votre serveur HTTP est situé.
$cfg['LeftFrameLight'] booléen
Définit si on utilise un menu construit par sélection et si on affiche seulement les tables en cours dans le cadre de gauche (page plus réduite). Vous ne pouvez utiliser la fonctionnalité d'affichage des dossiers imbriqués en utilisant $cfg['LeftFrameTableSeparator'] qu'en mode non allégé.
$cfg['LeftFrameDBTree'] booléen
En mode allégé, définit si l'affichage des noms de bases de données (dans le sélecteur) se fait en utilisant un arbre, voir également $cfg['LeftFrameDBSeparator'].
$cfg['LeftFrameDBSeparator'] chaîne
La chaîne est utilisée pour séparer les parties du nom de la base de données lors de leur affichage dans un arbre.
$cfg['LeftFrameTableSeparator'] chaîne
Définit une chaîne à utiliser pour les espaces de table imbriquée. Défini par défaut à '__'. Ceci signifie que si vous avez des tables telles que  'première__seconde__troisième' elles seront affichées comme une hiérarchie à trois niveaux telle que : premier > seconde > troisième. Si défini à FALSE ou vide, la fonctionnalité est désactivée. REMARQUE : vous ne devez pas utiliser ce séparateur dans un nom de table comme préfixe ou suffixe, ou plusieurs fois consécutivement à l'intérieur du nom de la table.
$cfg['LeftFrameTableLevel'] chaîne
Définit le nombre de sous-niveaux qui doivent être affichés quand les tables sont subdivisées par le séparateur ci-dessus.
$cfg['ShowTooltip'] booléen
Définit si un commentaire de table est affiché comme info-bulle dans le cadre de gauche.
$cfg['ShowTooltipAliasDB'] booléen
Si les info-bulles sont activées et qu'un commentaire de base de données est défini, cela affichera le commentaire et le nom réel de la table. Cela signifie que si vous avez une table appelée 'user0001' et que vous y ajoutiez le commentaire 'MonNom', vous verrez donc le nom 'MonNom' utilisé dans le cadre de gauche et l'info-bulle affichera le vrai nom de la base de données.
$cfg['ShowTooltipAliasTB'] booléen
Identique à $cfg['ShowTooltipAliasDB'], sauf qu'il fonctionne pour les noms de tables. Quand il est défini à 'nested', l'alias du nom de table est seulement utilisé pour diviser/imbriquer les tables selon la directive $cfg['LeftFrameTableSeparator']. Donc, seul le dossier est appelé comme l'alias, le nom de la table elle-même demeure le vrai nom de la table.
Définit si le logo de phpMyAdmin est affiché en haut, dans le cadre de gauche. Défini par défaut à TRUE.
Saisissez l'URL vers laquelle le logo du panneau de gauche pointera. À utiliser notamment pour les thèmes personnalisés qui changent cela. La valeur par défaut pour cela est main.php.
$cfg['LeftLogoLinkWindow'] chaêne
Définit si la page liée doit s'ouvrir dans la fenêtre principale (main) ou dans une nouvelle fenêtre (new). Note : utilisez new si vous êtes lié à phpmyadmin.net.
$cfg['LeftDisplayServers'] booléen
Définit si un choix de serveur est proposé en haut, dans le cadre de gauche. Défini par défaut à FALSE.
$cfg['LeftDefaultTabTable'] chaîne
Définit l'onglet affiché par défaut en cliquant sur la petite icône à côté de chaque nom de table dans le panneau de navigation. Les valeurs possibles sont : « tbl_structure.php », « tbl_sql.php », « tbl_select.php », « tbl_change.php » ou « sql.php ».
$cfg['DisplayServersList'] booléen
Définit si ce choix de serveur est affiché sous forme de liens ou de liste déroulante. Défini par défaut à FALSE (liste déroulante).
$cfg['DisplayDatabasesList'] booléen ou texte
Définit si le choix de base de données dans le cadre de navigation allégée doit être affiché sous forme de liens plutôt que sous forme de liste déroulante. Par défaut à 'auto' - sur la page principale où est affichée la liste, quand la base de données est sélectionnée, seule la liste déroulante est affichée.
$cfg['ShowStats'] booléen
Définit  si on affiche l'espace disque utilisé et les statistiques sur les bases de données et les tables.
Les statistiques nécessitent au moins la version 3.23.3 de MySQL 3.23.3 et, à ce jour, MySQL ne fournit pas de telles informations pour les tables de base de données Berkeley.
$cfg['ShowServerInfo'] booléen
Définit si l'affichage des informations détaillées sur le serveur doit se faire sur la page principale. Vous pouvez aussi masquer plus d'informations en utilisant $cfg['Servers'][$i]['verbose'].
$cfg['ShowPhpInfo'] booléen
$cfg['ShowChgPassword'] booléen
$cfg['ShowCreateDb'] booléen
Définit si on affiche les liens « Afficher les informations relatives à PHP » et « Modifier le mot de passe » ou le formulaire de crétion de base de données dans le cadre principal (de droite) de démarrage. Ce paramètre ne vérifie pas les commandes MySQL entrées directement.

Veuillez noter que pour empêcher l'utilisation de phpinfo() dans les scripts, vous devez mettre ceci dans votre fichier php.ini :
disable_functions = phpinfo()
Veuillez également noter qu'activer le lien « Modifier le mot de passe » n'a pas d'effet utilisé avec le mode d'authentification « config »: parce que le mot de passe est codé dans le fichier de configuration, les utilisateurs finaux ne sont pas autorisés à changer leur mot de passe.
$cfg['SuggestDBName'] booléen
Définit si un nom de base de données doit être suggéré dans le formulaire « Créer une base de données » ou si le champ est laissé vide.
$cfg['ShowBlob'] booléen
Définit si les champs BLOB sont affichés en naviguant dans le contenu d'une base.
$cfg['NavigationBarIconic'] chaîne
Définit si les boutons de la barre de navigation et le menu supérieur du panneau de droite affichent le texte ou les icônes seulement. La valeur TRUE affiche les icônes, FALSE affiche seulement le texte et 'both' affiche le texte et les icônes.
$cfg['ShowAll'] booléen
Définit si un utilisateur peut avoir un bouton « Tout afficher » en mode « Afficher ».
$cfg['MaxRows'] entier
Nombre de colonnes affichées lors de la navigation sur un ensemble de résultats. Si le nombre des colonnes est supérieur, des liens « Suivant » et « Précédent » seront affichés.
$cfg['Order'] chaîne ['DESC|ASC|SMART']
Définit si les champs sont affichés en ordre croissant (ASC), décroissant (DESC) ou en ordre « intelligent » (SMART) - c'est-à-dire en ordre décroissant pour les champs de type TIME, DATE, DATETIME & TIMESTAMP et croissant pour les autres - par défaut.
$cfg['ProtectBinary'] booléen ou chaîne
Définit si les champs BLOB ou BINARY sont protégés lors de l'affichage du contenu d'une table. Les valeurs permises sont :
$cfg['ShowFunctionFields'] booléen
Définit si les champs des fonctions MySQL doivent être affichés en mode modification/insertion. Depuis la version 2.10, l'utilisateur peut changer ce paramètre à partir de l'interface.
$cfg['CharEditing'] chaîne
Définit quels types de contrôles d'édition doivent être utilisés pour les champs CHAR et VARCHAR. Les valeurs permises sont : Par défaut, l'ancien comportement est utilisé, c'est-à-dire input.
$cfg['InsertRows'] entier
Définit le nombre maximum d'entrées simultanées pour la page Insertion.
$cfg['ForeignKeyMaxLimit'] entier
S'il y a moins d'éléments que ce nombre dans le jeu de clés étrangères, alors un menu déroulant des clés étrangères est proposé, avec le style décrit dans le paramètre $cfg['ForeignKeyDropdownOrder'].
$cfg['ForeignKeyDropdownOrder'] tableau
Il y a plusieurs méthodes d'affichage pour les champs du menu déroulant des clés étrangères, proposant la clé et sa valeur. Le tableau doit contenir une ou les deux valeurs suivantes : 'content-id', 'id-content'.
$cfg['ZipDump'] booléen
$cfg['GZipDump'] booléen
$cfg['BZipDump'] booléen
Définit si on utilise la compression zip/GZip/BZip2 lors de la création de fichiers d'exportation.
$cfg['CompressOnFly'] booléen
Définit si on autorise la compression à la volée pour des exportations au formats GZip/BZip2. Ceci n'affecte pas les plus petites exportations et permet aux utilisateurs d'en créer de plus grandes, qui sans cela, ne tiendraient pas en mémoire, à cause de la limitation mémoire de php. Produit des fichiers contenant plus d'en-têtes GZip/BZip2, mais tous les programmes courants les manipulent correctement.
$cfg['LightTabs'] chaîne
Si défini à TRUE, utilise des onglets graphiquement moins consommateurs pour l'unité centrale.
$cfg['PropertiesIconic'] chaîne
Si défini à TRUE, affichera des icônes au lieu d'un texte pour les liens de propriétés des bases de données et des tables (comme 'Afficher', 'Sélectionner', 'Insérer', …).
Peut être paramétré à 'both' si vous voulez les icônes et le texte.
Quand il est défini à FALSE, n'affiche que le texte.
$cfg['PropertiesNumColumns'] entier
Définit le nombre de colonnes qui seront utilisées pour afficher les tables dans la vue propriété de la base de données. Par défaut, une colonne. En définissant cette variable à une valeur supérieure à un, le type de la base de données sera omis pour offrir plus de place pour l'affichage.
$cfg['DefaultTabServer'] chaîne
Définit l'onglet affiché par défaut dans la vue serveur. Les valeurs autorisées sont : « main.php » (recommandé pour les configurations multi-utilisateurs), « server_databases.php », « server_status.php », « server_variables.php », « server_privileges.php » ou « server_processlist.php ».
$cfg['DefaultTabDatabase'] chaîne
Définit l'onglet affiché par défaut pour la vue base de données. Les valeurs autorisées sont : « db_structure.php », « db_sql.php » ou « db_search.php ».
$cfg['DefaultTabTable'] chaîne
Définit l'onglet affiché par défaut dans la vue table. Les valeurs autorisées sont : « tbl_structure.php », « tbl_sql.php », « tbl_select.php », « tbl_change.php » ou « sql.php ».
$cfg['MySQLManualBase'] chaîne
Si défini sur une URL qui pointe vers la documentation de MySQL (le type dépend de $cfg['MySQLManualType']), les liens d'aide appropriés sont générés.
Voir la Page de documentation MySQL pour plus de renseignements sur les manuels de MySQL et leurs types.
$cfg['MySQLManualType'] chaîne
Type de documentation MySQL :
$cfg['DefaultLang'] chaîne
Définit la langue par défaut à utiliser, si ce n'est pas le cas, la configuration du navigateur ou celle de l'utilisateur sera utilisée.
Voir le script select_lang.lib.php pour connaître les valeurs autorisées pour ce paramètre.
$cfg['DefaultConnectionCollation'] chaîne
Définit la connexion par défaut à utiliser si elle n'est pas définie par l'utilisateur.
Consultez la documentation MySQL pour obtenir une liste des valeurs possibles.
$cfg['Lang'] chaîne
Force : toujours utiliser cette langue (doit être défini dans le script select_lang.lib.php).
$cfg['FilterLanguages'] chaîne
Limite la liste des langues disponibles à celle concordant à une expression régulière donnée. Par exemple, si vous ne voulez que le tchèque et l'anglais, vous devrez définir le filtre suivant : '^(cs|en)'.
$cfg['DefaultCharset'] chaîne
Page de code utilisée pour le recodage des requêtes MySQL. Ceci doit être activé et est décrit par l'option $cfg['AllowAnywhereRecoding'].
Vous pouvez donner ici n'importe quelle page de code se trouvant dans le tableau $cfg['AvailableCharsets'] et il s'agit seulement du choix par défaut, l'utilisateur peut choisir n'importe laquelle d'entre elles.
$cfg['AllowAnywhereRecoding'] booléen
Permet le recodage de la page de code des requêtes MySQL. Vous avez besoin de la prise en charge de recode ou iconv (compilés ou en tant que modules) dans PHP pour permettre le recodage des requêtes MySQL et le fichier de langue utilisée doit avoir cette option activée (par défaut, seulement celles qui sont en Unicode, pour éviter de perdre des caractères).

En définissant cette valeur à TRUE, cela active également un menu déroulant dans la page « Export », pour choisir le jeu de caractères utilisé pour l'export d'un fichier.
$cfg['RecodingEngine'] chaîne
Pour pouvez choisir ici quelles fonctions seront utilisées pour la conversion de page de code. Les valeurs autorisées sont : Par défaut à auto.
$cfg['IconvExtraParams'] chaîne
Spécifie des paramètres pour iconv utilisés dans la conversion de page de code. Voir la documentation iconv pour plus de renseignements. Par défaut //TRANSLIT est utilisé de sorte que les caractères invalides soient substitués.
$cfg['AvailableCharsets'] tableau
Pages de code disponibles pour la conversion MySQL. Vous pouvez ajouter la vôtre (n'importe laquelle prise en charge par recode/iconv) ou supprimer celle dont vous ne vous servez pas. Les pages de code seront affichées dans le même ordre que celui défini ici; aussi, si vous en utilisez fréquemment quelques-unes, faites les figurer en début de tableau.
$cfg['TrustedProxies'] tableau
Liste les proxies et les en-têtes HTTP qui sont sûrs pour IP Allow/Deny. Cette liste est vide par défaut. Vous devez renseigner des serveurs proxy de confiance si vous voulez utiliser des règles pour les adresses IP derrière un proxy.

L'exemple suivant spécifie que phpMyAdmin doit faire confiance à un en-tête HTTP_X_FORWARDED_FOR (X-Forwarded-For) provenant du proxy 1.2.3.4 :
$cfg['TrustedProxies'] =
     array('1.2.3.4' => 'HTTP_X_FORWARDED_FOR');
La directive $cfg['Servers'][$i]['AllowDeny']['rules'] utilise l'adresse IP du client comme d'habitude.
$cfg['GD2Available'] chaîne
Spécifie si GD est disponible en version 2 ou ultérieure. Si c'est le cas, il peut être utilisé pour les transformations MIME.
Les valeurs autorisées sont : Par défaut à auto.
$cfg['CheckConfigurationPermissions'] booléen
Nous vérifions normalement les permissions sur le fichier de configuration pour nous assurer qu'il n'est pas accessible en écriture pour tout le monde. Cependant, phpMyAdmin pourrait être installé sur un système de fichiers NTFS monté sur un serveur non-Windows, auquel cas les permissions semblent erronées mais elles ne peuvent en fait pas être détectées. Dans ce cas, un administrateur système voudrait définir ce paramètre à FALSE. Par dafut, il est défini à TRUE.
$cfg['NaviWidth'] entier
Largeur du cadre de navigation en pixels. Voir themes/themename/layout.inc.php.
$cfg['NaviBackground'] chaîne ['code css valide pour l'arrière-plan']
$cfg['MainBackground'] chaîne ['code css valide pour l'arrière-plan']
Les styles d'arrière-plan utilisés pour les deux cadres. Voir themes/themename/layout.inc.php.
$cfg['NaviPointerBackground'] chaîne ['code css valide pour l'arrière-plan']
$cfg['NaviPointerColor'] string ['couleur css valide']
Le style utilisé pour le pointeur dans le cadre de navigation. Voir themes/themename/layout.inc.php.
$cfg['NaviDatabaseNameColor'] chaîne [code css valide]
La couleur utilisée pour le nom de la base de données dans le cadre de navigation. Voir themes/themename/layout.inc.php.
$cfg['LeftPointerEnable'] booléen
Une valeur à TRUE active le pointeur de navigation (quand LeftFrameLight est à FALSE).
$cfg['Border'] entier
Taille de la bordure d'une table. Voir themes/themename/layout.inc.php.
$cfg['ThBackground'] chaîne ['code css valide pour l'arrière-plan']
$cfg['ThColor'] chaîne ['couleur css valide']
Le style utilisé pour les en-têtes de table. Voir themes/themename/layout.inc.php.
$cfg['BgOne'] chaîne ['couleur HTML']
La couleur (HTML) numéro 1 pour les premiers enregistrements de table. Voir themes/themename/layout.inc.php.
$cfg['BgTwo'] chaîne ['couleur HTML']
La couleur (HTML) numéro 2 pour les seconds enregistrements de table. Voir themes/themename/layout.inc.php.
$cfg['BrowsePointerBackground'] chaîne ['couleur HTML']
$cfg['BrowsePointerColor'] chaîne ['couleur HTML']
$cfg['BrowseMarkerBackground'] chaîne ['couleur HTML']
$cfg['BrowseMarkerColor'] chaîne ['couleur HTML']
Les couleurs (HTML) utilisées pour le pointeur et le marqueur en mode affichage.
La première met en surbrillance l'enregistrement sur lequel passe votre souris et la dernière vous permet de marquer/démarquer les enregistrements en cliquant dessus.
Vous pouvez désactiver ces deux fonctionnalités en laissant vides leurs directives respectives. Voir themes/themename/layout.inc.php.
$cfg['FontFamily'] chaîne
Mettre ici la valeur pour une famille de polices valide CSS, par exemple arial, sans-serif.
Voir themes/themename/layout.inc.php.
$cfg['FontFamilyFixed'] chaîne
Mettre ici la valeur pour une famille de polices valide CSS, par exemple monospace. Celle-ci est utilisée pour les zone de texte (textarea).
Voir themes/themename/layout.inc.php.
$cfg['BrowsePointerEnable'] booléen
Activation ou désactivation du pointeur de navigation.
$cfg['BrowseMarkerEnable'] booléen
Activation ou désactivation du marqueur de navigation.
$cfg['TextareaCols'] entier
$cfg['TextareaRows'] entier
$cfg['CharTextareaCols'] entier
$cfg['CharTextareaRows'] entier
Nombre de colonnes et d'enregsitrements pour les zones de texte.
Cette valeur sera multipliée par 2 pour les zones de texte de requête SQL et par 1,25 pour les zones de texte SQL à l'intérieur de la fenêtre de requête.
Les valeurs Char* sont utilisées pour l'édition de CHAR et VARCHAR (si configurées dans $cfg['CharEditing']).
$cfg['LongtextDoubleTextarea'] booléen
Définit si la zone de texte pour les champs LONGTEXT doit avoir une taille double.
$cfg['TextareaAutoSelect'] booléen
Définit si toute la surface de la zone de texte de la boîte de requête sera sélectionnée en cliquant dessus.
$cfg['CtrlArrowsMoving'] booléen
Permet le déplacement entre les champs à l'aide de Ctrl + flèches de direction (Option + flèches de direction dans Safari) lors de l'édition.
$cfg['LimitChars'] entier
Nombre maximum affiché de caractères dans tout champ non numérique en mode Afficher. Peut être désactivé par un bouton radio dans la page en cours.
$cfg['ModifyDeleteAtLeft'] booléen
$cfg['ModifyDeleteAtRight'] booléen
Définit l'endroit où les liens modifier et supprimer seront affichés quand le contenu des tables est affichée (vous pouvez les voir affichés à la fois à gauche et à droite). « Gauche » et « droite » sont traduits par « haut » et « bas » en mode d'affichage vertical.
$cfg['DefaultDisplay'] chaîne
$cfg['HeaderFlipType'] chaîne
Il existe trois modes d'affichage : 'horizontal', 'horizontalflipped' et 'vertical'. Définit lequel est affiché par défaut. Le premier mode affiche chaque enregistrement sur une ligne horizontale, le second fait pivoter les en-têtes de  90 degrés, de la sorte vous pouvez utiliser des en-têtes descriptifs même si les champs contiennent de petites valeurs et les imprimer. Le mode vertical trie chaque enregistrement verticalement.

Le paramètre HeaderFlipType peut être défini à 'css' ou 'faked'. En utilisant 'css' la rotation de l'en-tête dans le mode 'horizontalflipped' est faite par la feuille de style (CSS). S'il est défini à 'faked ', PHP fait la transformation pour vous, mais bien sûr, ce ne sera pas aussi beau qu'avec la feuille de style.
$cfg['DefaultPropDisplay'] chaîne ou entier
En modifiant/créant de nouvelles colonnes dans une table, tous les champs sont normalement alignés sur une ligne. (par défaut : 'horizontal'). Si vous le définissez à 'vertical', vous aurez chaque champ aligné verticalement. Vous pouvez économiser beaucoup de place dans le sens horizontal, sans avoir à scroller.
$cfg['ShowBrowseComments'] booléen
$cfg['ShowPropertyComments'] booléen
En définissant la variable correspondante à TRUE, vous pouvez afficher les commentaires de colonnes en mode Navigation ou Propriétés. En mode navigation, les commentaires sont affichés à l'intérieur de l'en-tête. En mode propriétés, les commentaires sont affichés en utilisant une feuille de style qui met une ligne de tirets sous le nom du champ. Le commentaire est montré en tant qu'info-bulle pour ce champ. Si vous mettez un entier, l'édition de plusieurs colonnes apparaîtra en mode 'vertical', alors que l'édition de plusieurs champs sera toujours en mode 'horizontal'. De cette façon, vous pouvez modifier un grand nombre de champs tout en ayant une vue complète sur plusieurs d'entre-eux.
$cfg['SQLQuery']['Edit'] booléen
Définit l'affichage d'un lien pour modifier une requête dans toute boîte SQL Query.
$cfg['SQLQuery']['Explain'] booléen
Définit l'affichage d'un lien pour expliquer une requête SELECT dans toute boîte SQL Query.
$cfg['SQLQuery']['ShowAsPHP'] booléen
Définit l'affichage d'un lien pour incorporer une requête dans du code PHP dans toute boîte SQL Query.
$cfg['SQLQuery']['Validate'] booléen
Définit l'affichage d'un lien pour valider une requête dans toute boîte SQL Query. Voir également $cfg_SQLValidator.
$cfg['SQLQuery']['Refresh'] booléen
Définit l'affichage d'un lien pour actualiser une requête dans toute boîte SQL Query.
$cfg['UploadDir'] chaîne
Le nom du répertoire où les fichiers SQL ont été transférés autrement qu'avec phpMyAdmin (ftp, par exemple). Ces fichiers sont disponibles sous forme d'une liste déroulante quand vous cliquez sur le nom d'une base de données ou d'une table, puis l'onglet Import.

Si vous voulez un répertoire différent pour chaque utilisateur, %u sera remplacé par le nom d'utilisateur.

Veuillez noter que le nom des fichiers doit avoir le suffixe « .sql » (ou « .sql.bz2 » ou « .sql.gz » si la gestion des formats compressés est activée).

Cette fonctionnalité est utile quand votre fichier est trop gros pour être transféré en HTTP, ou quand les transferts de fichiers sont désactivés dans PHP.

Veuillez noter également que si PHP est exécuté en mode sécurisé, ce répertoire doit appartenir au même utilisateur que le propriétaire des scripts.

Voir aussi la section FAQ 1.16 pour des alternatives.
$cfg['SaveDir'] chaîne
Le nom du répertoire où les fichiers d'exportation peuvent être sauvegardés.

Si vous voulez un répertoire différent pour chaque utilisateur, %u sera remplacé par le nom d'utilisateur.

Veuillez noter que le répertoire doit être accessible en écriture à l'utilisateur du serveur Web.

Veuillez noter également que si PHP est exécuté en mode sécurisé, ce répertoire doit appartenir au même utilisateur que le propriétaire des scripts.
$cfg['TempDir'] chaîne
Le nom du répertoire où les fichiers temporaires peuvent être stockés.

Ceci est nécessaire pour l'exportation au format natif MS Excel, voir la section FAQ 6.23
$cfg['Export'] tableau
Dans ce tableau sont définis les paramètres par défaut pour les fichiers d'exportation; les noms des items sont similaires aux textes vus dans la page d'exportation, de la sorte vous pouvez facilement identifier ce qu'ils signifient.
$cfg['Import'] tableau
Dans ce tableau sont définis les paramètres par défaut pour l'importation. Les noms des éléments sont similaires aux textes affichés dans la page d'importation, de sorte que vous pouvez facilement identifier ce qu'ils signifient.
$cfg['RepeatCells'] entier
Répète les en-têtes toutes les X cellules, ou 0 pour désactiver.
$cfg['EditInWindows'] booléen
$cfg['QueryWindowWidth'] entier
$cfg['QueryWindowHeight'] entier
$cfg['QueryHistoryDB'] booléen
$cfg['QueryWindowDefTab'] chaîne
$cfg['QueryHistoryMax'] entier
Toutes ces variables affectent la nouvelle fenêtre/cadre de requête. Quand Un lien ou une icône SQL est toujours affiché dans le panneau de gauche. Si JavaScript est activé dans votre navigateur, cliquer dessus provoque l'ouverture  de la boîte de requête, une interface directe pour saisir les requêtes SQL.

La taille de la fenêtre de requête peut être personnalisée avec $cfg['QueryWindowWidth'] et $cfg['QueryWindowHeight'] - les deux paramètres sont des entiers exprimant la taille en pixels. Veuillez noter que normalement, ces paramètres seront modifiés dans layout.inc.php pour le thème que vous utilisez.

Si $cfg['EditInWindows'] est défini à TRUE, cliquer sur ['Modifier'] à partir de la page des résultats (dans la section « Affichage des enregistrements ») ouvre la fenêtre de requête et y met la requête en cours. S'il est défini à FALSE, cliquer sur le lien met la requête SQL dans la boîte de requête du panneau droit.

L'utilisation, de la fenêtre de requête JavaScript est recommandée si vous avez un navigateur gérant le JavaScript. Les fonctions de bases sont utilisées pour échanger quelques variables, aussi, la plupart des navigateurs de 4ème génération doivent être capables d'utiliser cette fonctionnalité. Actuellement, cela a été seulement testé avec Internet Explorer 6 et Mozilla 1.x.

Si $cfg['QueryHistoryDB'] est défini à TRUE, toutes vos requêtes sont journalisées dans une table, que vous devez créer (voir $cfg['Servers'][$i]['history']). Si il est défini à FALSE, toutes vos requêtes seront ajoutées au formulaire, mais elles seront sauvegardées seulement tant que votre fenêtre est ouverte.

En utilisant la fenêtre de requête basée sur JavaScript, elle sera toujours mise à jour quand vous cliquez sur une nouvelle table/base de données à afficher et se réduira si vous cliquez sur « Modifier SQL » après avoir utilisé une requête. Vous pouvez supprimer la mise à jour de la fenêtre de requête en cochant la case « Ne pas écraser cette requête depuis une autre fenêtre » sous la zone de texte de requête. Alors vous pouvez afficher des tables/bases de données en arrière-plan sans perdre le contenu de la zone de texte, ce qui est particulièrement pratique quand vous faites des requêtes sur des tables dont vous devez d'abord regarder le contenu. La case sera automatiquement cochée chaque fois que vous changez le contenu de la zone de texte. Décochez cette case si jamais vous vouliez que la fenêtre de requêtes soit toujours mise à jour, même si vous avez fait des modifications.

Si $cfg['QueryHistoryDB'] est défini à TRUE, vous pouvez spécifier le nombre d'entrées dans l'historique en utilisant $cfg['QueryHistoryMax'].

La fenêtre de requêtes a également des onglets pour regrouper les fonctionnalités. En utilisant la variable $cfg['QueryWindowDefTab'] vous pouvez spécifier l'onglet par défaut à utiliser à l'ouverture de la fenêtre de requêtes. Elle peut être définie à 'sql', 'files', 'history' ou 'full'.
$cfg['BrowseMIME'] booléen
Active les Transformations MIME.
$cfg['MaxExactCount'] entier
Pour les tables InnoDB, détermine pour quelle taille de tables phpMyAdmin doit obtenir le nombre de lignes exact avec SELECT COUNT. Si le compte approximatif de lignes renvoyé par SHOW TABLE STATUS est inférieur à cette valeur, SELECT COUNT sera utilisé, sinon, la valeur approximative sera utilisée.
$cfg['MaxExactCountViews'] entier
Pour VIEW, puisqu'obtenir le compte exact pourrait avoir un impact sur les performances, cette valeur est la valeur maximum à afficher, en utilisant un SELECT COUNT ... LIMIT. La valeur par défaut de 0 passe outre tout comptage de lignes.
$cfg['WYSIWYG-PDF'] booléen
Utilise un contrôle d'édition WYSIWYG pour placer facilement les éléments d'une page PDF. En cliquant sur le bouton 'Éditeur visuel' dans la page sur laquelle vous éditez les coordonnées x/y de ces éléments, vous pouvez activer un éditeur visuel où tous vos éléments sont placés. En cliquant sur un élément, vous pouvez le déplacer dans la zone prédéfinie et les coordonnées x/y seront mises à jour dynamiquement. De même, si vous entrez directement une nouvelle position dans le champ de saisie, la nouvelle position dans l'éditeur visuel change après que vos curseurs aient quitté le champ de saisie.
Vous devez cliquer sur le bouton 'OK' en-dessous des tables pour sauvegarder les nouvelles positions. Si vous voulez placer un nouvel élément, ajoutez-le d'abord à la table des éléments et alors vous pourrez déplacer ce nouvel élément.
En changeant la taille du papier et l'orientation, vous changez également la taille de l'éditeur visuel. Vous pouvez le faire en changeant seulement le champ déroulant au-dessous, et l'éditeur visuel se réajustera automatiquement, sans interférer avec les positions des éléments en cours.
Si un élément sortait du champ, vous pouvez soit agrandir la taille du papier, soit cliquer sur le bouton 'Réinitialiser les valeurs' pour placer tous les éléments les uns en-dessous des autres.
REMARQUE : Vous devez utiliser un navigateur récent comme IE6 ou Mozilla pour que ce contrôle puisse fonctionner. La fonctionnalité de script Drag&Drop  a été empruntée à www.youngpup.net et sa licence sous-jacente si spécifique.
$cfg['NaturalOrder'] booléen
Trie les noms des bases de données en ordre naturel (par exemple, t1, t2, t10). Actuellement mis en oeuvre dans le panneau de gauche (Mode allégé) et dans la vue Base de données, pour la liste des tables.
$cfg['InitialSlidersState'] chaîne
Si défini à 'closed', les cases de défilement visuel sont initialement dans un état fermé. Une valeur 'open' fait le contraire.
$cfg['TitleTable'] chaîne
$cfg['TitleDatabase'] chaîne
$cfg['TitleServer'] chaîne
$cfg['TitleDefault'] chaîne
Vous permet d'indiquer le titre de la fenêtre. Les chaînes suivantes peuvent être utilisées pour obtenir des valeurs spéciales :
@HTTP_HOST@
Hôte HTTP exécutant phpMyAdmin
@SERVER@
Nom du serveur MySQL
@VERBOSE@
Nom complet du serveur MySQL tel qu'indiqué dans la configuration serveur
@VSERVER@
Nom complet du serveur MySQL si défini, sinon normal
@DATABASE@
Base de données actuellement ouverte
@TABLE@
Table actuellement ouverte
@PHPMYADMIN@
Version de phpMyAdmin
$cfg['ErrorIconic'] booléen
Utilise des icônes pour les avertissements, les erreurs et les informations.
$cfg['MainPageIconic'] booléen
Utilise des icônes pour les listes de la page principale et les onglets de menus.
$cfg['ReplaceHelpImg'] booléen
Affiche un bouton d'aide plutôt que le message « Documentation ».
$cfg['ThemePath'] chaîne
Si le gestionnaire de thèmes est actif, utilise ceci comme le chemin du sous-répertoire contenant les tous les thèmes.
$cfg['ThemeManager'] booléen
Active la sélection par l'utilisateur des thèmes. Voir FAQ 2.7.
$cfg['ThemeDefault'] string
Le thème par défaut (un sous-répertoire de cfg['ThemePath']).
$cfg['ThemePerServer'] booléen
Autorise ou non un thème différent pour chaque serveur.
$cfg['DefaultQueryTable'] chaîne
$cfg['DefaultQueryDatabase'] chaîne
Requête par défaut qui sera affichée dans les boîtes de requêtes, quand l'utilisateur n'en spécifie aucune. Utilisez %d pour le nom de base de données et %t pour le nom de table et %f pour une liste de noms de champs séparés par des virgules. Notez que %t et %f sont seulement applicables pour $cfg['DefaultQueryTable'].
$cfg['SQP']['fmtType'] chaîne ['html|none']
L'utilisation principale du nouvel analyseur syntaxique SQL est de permettre un affichage de requêtes SQL plus clair. Par défaut, nous utilisons HTML pour mettre en page la requête, mais vous pouvez désactiver ce paramètre en définissant cette variable à 'none'.
$cfg['SQP']['fmtInd'] flottant
$cfg['SQP']['fmtIndUnit'] chaîne [em|px|pt|ex]
Pour un affichage plus clair des requêtes SQL, dans certains cas, la partie d'une requête à l'intérieur de parenthèses est indentée. En changeant $cfg['SQP']['fmtInd'] vous pouvez modifier l'importance de cette indentation.
Dans le même ordre d'idée, $cfg['SQP']['fmtIndUnit'] spécifie les unités de la valeur de l'indentation que vous avez spécifié. Ceci est utilisé pour les feuilles de style.
$cfg['SQP']['fmtColor'] tableau de tuples chaîne
Ce tableau est utilisé pour définir les couleurs pour chaque type d'élément de requêtes SQL afin de les lire plus facilement. Le format du tuple est :
classe => ['code couleur HTML | chaîne vide']
Si vous spécifiez une chaîne vide pour la couleur d'une classe, elle est ignorée lors de la création de la feuille de style. Vous ne devez pas modifier les noms de classes, seulement les chaînes couleur.
Clé pour le nom de classe :
$cfg['SQLValidator'] booléean
$cfg['SQLValidator']['use'] booléean
phpMyAdmin gère maintenant l'utilisation du service Mimer SQL Validator, tel qu'il a été publié sur Slashdot.
Pour trouver de l'aide sur le paramétrage de votre système pour utiliser ce service, voir la section FAQ 6.14.
$cfg['SQLValidator']['username'] chaîne
$cfg['SQLValidator']['password'] chaîne
Le service SOAP vous permet de vous connecter avec anonymous et n'importe quel mot de passe, aussi nous les utilisons par défaut. Par contre, si vous avez un compte de connexion, vous pouvez mettre ici vos détails de connexion, et ils seront utilisés à la place de la connexion anonyme.
$cfg['DBG']['enable'] booléen
DÉVELOPPEURS SEULEMENT !
$cfg['DBG']['sql'] boolean
DÉVELOPPEURS SEULEMENT !
Active la journalisation des requêtes et des temps d'exécution qui sont alors affichés au bas de la page principale (panneau de droite).
$cfg['DBG']['php'] boolean
Active l'extension DBG pour le débogage phpMyAdmin. Nécessaire pour analyser le code.
Pour l'aide dans le paramétrage de votre système avec cette fonctionnalité, voir la section Développeurs.
$cfg['DBG']['profile']['enable'] booléen
DÉVELOPPEURS SEULEMENT !
Active la gestion de l'analyse pour phpMyAdmin. Ceci ajoutera un gros paquet de données à la fin de chaque page affichée dans la fenêtre principale avec les statistiques d'analyse pour cette page.
Vous aurez peut-être besoin d'augmenter le temps maximum d'exécution pour que cela fonctionne correctement.Le profilage a été supprimé du code de la version 2.9.0 pour des problèmes de licence.
$cfg['DBG']['profile']['threshold'] flottant (unités en millisecondes)
DÉVELOPPEURS SEULEMENT !
Quand un audit de données est affiché, cette variable contrôle le seuil d'affichage pour chaque audit de données, fondé sur le temps moyen que chacun a pris. S'il est supérieur au seuil, il est affiché, sinon il n'est pas affiché. Ceci prend une valeur en millisecondes. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['ColumnTypes'] tableau
Tous les types possibles de colonnes MySQL. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['AttributeTypes'] tableau
Attributs autorisés pour les champs. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['Functions'] tableau
Une liste de fonctions que gère MySQL. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['RestrictColumnTypes'] tableau
Mappage de types de colonnes utilisées pour l'affichage des fonctions favorites. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['RestrictFunctions'] tableau
Les fonctions favorites pour la colonne méta-types comme définies dans $cfg['RestrictColumnTypes']. Dans la plupart des cas, vous n'avez pas besoin de modifier ce paramètre.
$cfg['DefaultFunctions'] tableau
Fonctions sélectionnées par