Configuration

Presque toutes les données de configuration sont placées dans config.inc.php dans la racine de phpMyAdmin. Si ce fichier n’existe pas, veuillez vous rapporter à la section Installation pour en créer un. Ce fichier a seulement besoin de contenir les paramètres dont vous voudriez changer la valeur par défaut dans le fichier libraries/config.default.php (ce fichier n’est pas destiné à être modifié).

Voir aussi

Exemple pour des exemples de configurations

Si une directive manque dans votre fichier, vous pouvez ajouter une nouvelle ligne avec ce fichier. Ce fichier sert à remplacer les valeurs par défaut ; si vous souhaitez utiliser les valeurs par défaut, il n’est pas nécessaire d’ajouter de ligne ici.

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 en-tête et en pied de chaque page.

Note

Certaines distributions, comme par exemple Debian et Ubuntu, placent le fichier config.inc.php dans /etc/phpmyadmin et non pas avec le reste des sources de phpMyAdmin.

Avertissement

À l’attention des utilisateurs Mac ayant une version antérieure à Mac OS X: 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é.

Configuration de base

$cfg['PmaAbsoluteUri']
Type:chaîne
Default value:''

Modifié dans la version 4.6.5: Ce paramètre n’était plus disponible dans phpMyAdmin 4.6.0 - 4.6.4.

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 https://www.exemple.net/chemin_vers_votre_repertoire_phpMyAdmin/. Veuillez noter également que l’URL sur la plupart des serveurs Web est sensible à la casse (même sous Windows). N’oubliez pas la barre oblique (« / ») 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 » ou de configuration de reverse-proxy complexes pourraient avoir besoin de modifier ceci.

Un bon test est de parcourir 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 votre chemin d’accès, veuillez poster un rapport de bogue sur notre outils de suivi de bogues pour que nous améliorions le code.

$cfg['PmaNoRelation_DisableWarning']
Type:booléen
Default value:false

À 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 avez essayé 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['AuthLog']
Type:chaîne
Default value:'auto'

Nouveau dans la version 4.8.0: Ceci est géré depuis phpMyAdmin 4.8.0.

Configuration de l’emplacement des journaux d’authentification. Les tentatives d’authentification ayant échoué (ou toutes les tentatives en fonction de $cfg['AuthLogSuccess']) seront enregistrées selon cette directive :

auto

Laisser phpMyAdmin choisir automatiquement entre syslog et php.

syslog

La journalisation utilisant syslog avec la fonctionnalité AUTH se trouve dans /var/log/auth.log sur la plupart des systèmes.

php

Journalisation dans le fichier d’erreur de PHP.

sapi

Journalisation dans le fichier journal de PHP SAPI.

/chemin/du/fichier

Toute autre valeur est considérée comme un nom de fichier et les entrées de journal sont écrites ici.

Note

Pour la journalisation vers un fichier, assurez-vous que les permissions soient correctement définies pour l’utilisateur du serveur Web. La configuration suivra précisément les instructions décrites dans $cfg['TempDir']:

$cfg['AuthLogSuccess']
Type:booléen
Default value:false

Nouveau dans la version 4.8.0: Ceci est géré depuis phpMyAdmin 4.8.0.

Pour indiquer de consigner les tentatives d’authentification réussies dans $cfg['AuthLog'].

$cfg['SuhosinDisableWarning']
Type:booléen
Default value:false

Un avertissement est affiché sur la page principale si Suhosin est détecté.

Vous pouvez passer cette variable à true pour empêcher ce message d’apparaître.

$cfg['LoginCookieValidityDisableWarning']
Type:booléen
Default value:false

Un avertissement est affiché sur la page principale si le paramètre PHP session.gc_maxlifetime est inférieur à la durée de validité du cookie configuré dans phpMyAdmin.

Vous pouvez passer cette variable à true pour empêcher ce message d’apparaître.

$cfg['ServerLibraryDifference_DisableWarning']
Type:booléen
Default value:false

Obsolète depuis la version 4.7.0: Ce réglage a été retiré car l’avertissement a aussi été retiré.

Un avertissement est affiché sur la page principale s’il y a une différence entre la bibliothèque MySQL et la version du serveur.

Vous pouvez passer cette variable à true pour empêcher ce message d’apparaître.

$cfg['ReservedWordDisableWarning']
Type:booléen
Default value:false

Cet avertissement est affiché sur la page Structure d’une table si un ou plusieurs noms de colonnes correspondent à des mots réservés de MySQL.

Si vous voulez désactiver cet avertissement, vous pouvez le définir à true et celui-ci ne sera plus affiché.

$cfg['TranslationWarningThreshold']
Type:entier
Default value:80

Affiche un avertissement sur les traductions incomplètes à partir d’un certain seuil.

$cfg['SendErrorReports']
Type:chaîne
Default value:'ask'

Définir le comportement par défaut pour les rapports d’erreur JavaScript.

Quand une erreur est détectée dans l’exécution de JavaScript. Un rapport d’erreur peut être envoyé à l’équipe de phpMyAdmin si l’utilisateur y consent.

Le paramètre par défaut 'ask' demandera chaque fois à l’utilisateur s’il y a un nouveau rapport d’erreur. Cependant, vous pouvez définir ce paramètre à 'always' pour envoyer un rapport d’erreur sans demander de confirmation ou à 'never' pour ne jamais envoyer de rapports d’erreur.

Cette directive est disponible à la fois dans le fichier de configuration et dans les préférences utilisateur. Si la personne responsable d’une installation mutli-utilisateur préfère désactiver cette fonctionnalités pour tous les utilisateurs, la valeur 'never' doit être définie etla directive $cfg['UserprefsDisallow'] doit contenir 'SendErrorReports' dans un de ses tableaux de valeurs.

$cfg['ConsoleEnterExecutes']
Type:booléen
Default value:false

Ce paramétrage réglé sur true permet à l’utilisateur d’exécuter des requêtes en appuyant sur Entrée au lieu de Ctrl + Entrée. Une nouvelle ligne peut être insérée en appuyant sur Maj + Entrée.

Le comportement de la console peut être temporairement modifié en utilisant l’interface des paramètres de la console.

$cfg['AllowThirdPartyFraming']
Type:booléen
Default value:false

En définissant ceci à true, cela permet à phpMyAdmin d’être inclus à l’intérieur d’un cadre, et cela représente un trou potentiel de sécurité pour les attaques de script inter-cadre (cross-frame) ou par clickjacking.

Paramètres de connexion au serveur

$cfg['Servers']
Type:array
Default value:un tableau de serveur avec les paramètres listés ci-dessous

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).

Note

Le tableau $cfg['Servers'] commence par $cfg[‘Servers’][1]. N’utilisez pas $cfg[‘Servers’][0]. Si vous voulez plus d’un serveur, copiez simplement la section suivante (en incrémentant $i) plusieurs fois. Il n’est pas utilise de renseigner tous les paramètres, ne renseignez que ceux que vous avez besoin de changer.

$cfg['Servers'][$i]['host']
Type:chaîne
Default value:'localhost'

Le nom d’hôte ou l’adresse IP de votre $i-ème serveur MySQL. Par ex. localhost.

Les valeurs autorisées sont :

  • nom d’hôte, par exemple 'localhost' ou encore 'mabdd.exemple.org'

  • Adresse IP, par exemple, '127.0.0.1' ou encore '192.168.10.1'

  • Adresse IPv6, par exemple : 2001:cdba:0000:0000:0000:0000:3257:9652

  • point - '.', c’est-à-dire, utiliser les canaux nommés sur les systèmes Windows

  • vide - '', désactive ce serveur

Note

Le nom d’hôte localhost est spécialement pris en charge par MySQL qui utilise un protocole de connexion basé sur socket. Pour exploiter un adressage TCP/IP, utiliser une adresse IP ou un nom d’hôte comme 127.0.0.1 ou db.example.com. Il est possible de configurer le chemin vers le socket avec $cfg['Servers'][$i]['socket'].

$cfg['Servers'][$i]['port']
Type:chaîne
Default value:''

Le numéro de port de votre $i-ème serveur MySQL. Ce numéro est 3306 par défaut (laissez à vide pour utiliser la valeur par défaut).

Note

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']
Type:chaîne
Default value:''

Le chemin vers le socket à utiliser. Laisser à vide pour utiliser le chemin 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é.

Note

Prend effet seulement si $cfg['Servers'][$i]['host'] est défini à localhost.

$cfg['Servers'][$i]['ssl']
Type:booléen
Default value:false

Pour activer ou pas une connexion SSL entre phpMyAdmin et le serveur MySQL pour sécuriser la connexion.

En utilisant l’extension 'mysql', aucune des options de configuration 'ssl…' restantes ne s’applique.

Nous vous recommandons vivement d’utiliser l’extension 'mysqli' pour l’utilisation de cette option.

$cfg['Servers'][$i]['ssl_key']
Type:chaîne
Default value:NULL

Chemin d’accès vers le fichier de certificat (key) client lors de l’utilisation de SSL pour la connexion au serveur MySQL. Ceci est utilisé pour authentifier le client au serveur.

Par exemple :

$cfg['Servers'][$i]['ssl_key'] = '/etc/mysql/server-key.pem';
$cfg['Servers'][$i]['ssl_cert']
Type:chaîne
Default value:NULL

Chemin d’accès vers le fichier de certificat client lors de l’utilisation de SSL pour la connexion au serveur MySQL. Ceci est utilisé pour authentifier le client au serveur.

$cfg['Servers'][$i]['ssl_ca']
Type:chaîne
Default value:NULL

Chemin d’accès vers le fichier de certificat (CA) lors de l’utilisation de SSL pour la connexion au serveur MySQL.

$cfg['Servers'][$i]['ssl_ca_path']
Type:chaîne
Default value:NULL

Répertoire contenant les certificats SSL CA (autorité de certification) approuvés au format PEM.

$cfg['Servers'][$i]['ssl_ciphers']
Type:chaîne
Default value:NULL

Liste des chiffrements SSL disponibles pour les connexions au serveur MySQL.

$cfg['Servers'][$i]['ssl_verify']
Type:booléen
Default value:true

Nouveau dans la version 4.6.0: Ceci est géré depuis phpMyAdmin 4.6.0.

Si votre installation PHP utilise le pilote natif de MySQL (mysqlnd), que votre serveur MySQL est en version 5.6 ou supérieure et que votre certificat SSL est auto-signé, il y a des chances que votre connexion SSL échoue en raison de la validation. Définir ceci à false désactivera la vérification de validation.

Depuis PHP 5.6.0, il vérifie aussi si le nom du serveur correspond au CN de son certificat. Il n’existe actuellement aucun moyen de désactiver uniquement cette vérification sauf à désactiver totalement la vérification SSL.

Avertissement

Désactiver la vérification du certificat SSL Rend inutile l’utilisation de SSL. Ceci rendra la connexion vulnérable à des attaque de type « man in the middle ».

Note

Cette étiquette ne fonctionne qu’avec PHP 5.6.16 ou supérieur.

$cfg['Servers'][$i]['connect_type']
Type:chaîne
Default value:'tcp'

Obsolète depuis la version 4.7.0: Ce réglage n’est plus utilisé à aprtir de la version 4.7.0, depuis que MySQL a décidé du type de connexion basé sur l’hôte. Merci de définir à la place et en conséquence $cfg['Servers'][$i]['host'].

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.

$cfg['Servers'][$i]['compress']
Type:booléen
Default value:false

Pour utiliser ou non un protocole compressé pour la connexion au serveur MySQL (expérimental).

$cfg['Servers'][$i]['controlhost']
Type:chaîne
Default value:''

Permet d’utiliser un hôte alternatif pour la configuration des données de stockage.

$cfg['Servers'][$i]['controlport']
Type:chaîne
Default value:''

Permet d’utiliser un port alternatif pour accéder à l’hôte contenant la configuration du stockage.

$cfg['Servers'][$i]['controluser']
Type:chaîne
Default value:''
$cfg['Servers'][$i]['controlpass']
Type:chaîne
Default value:''

Ce compte spécial est utilisé pour accéder aux Configuration de stockage de phpMyAdmin. Vous n’en avez pas besoin dans le cas d’un utilisateur unique, mais si phpMyAdmin est partagé, il est recommandé de donner accès aux Configuration de stockage de phpMyAdmin seulement à cet utilisateur et de configurer phpMyAdmin pour l’utiliser. Tous les utilisateurs seront alors capables d’utiliser les fonctionnalités sans avoir d’accès direct aux Configuration de stockage de phpMyAdmin.

Modifié dans la version 2.2.5: ceux-ci étaient appelés stduser et stdpass

$cfg['Servers'][$i]['control_*']
Type:mixte

Nouveau dans la version 4.7.0.

Vous pouvez modifier tout paramètre de connexion MySQL pour le lien de contrôle (utilisé pour accéder aux Configuration de stockage de phpMyAdmin) en utilisant la configuration préfixée avec control_.

Ceci peut être utilisé pour modifier tout aspect du contrôle de connexion, qui utilise par défaut les mêmes paramètres que ceux de l’utilisateur.

Par exemple, vous pouvez configurer SSL pour le contrôle de connexion :

// Enable SSL
$cfg['Servers'][$i]['control_ssl'] = true;
// Client secret key
$cfg['Servers'][$i]['control_ssl_key'] = '../client-key.pem';
// Client certificate
$cfg['Servers'][$i]['control_ssl_cert'] = '../client-cert.pem';
// Server certification authority
$cfg['Servers'][$i]['control_ssl_ca'] = '../server-ca.pem';
$cfg['Servers'][$i]['auth_type']
Type:chaîne
Default value:'cookie'

Définit le mode d’authentification config, cookie, signon ou HTTP qui sera utilisé sur le serveur.

  • l’authentification ‘config’ ($auth_type = 'config') est la bonne vieille méthode : nom d’utilisateur et mot de passe sont stockés dans config.inc.php.

  • La méthode d’authentification par cookie ($auth_type = 'cookie') permet de se connecter comme un utilisateur MySQL valide à l’aide des cookies.

  • La méthode d’authentification ‘http’ permet de se connecter comme un utilisateur MySQL valide à l’aide de HTTP-Auth.

  • Le mode d’authentification ‘signon’ ($auth_type = 'signon') permet de se connecter en utilisant des données de session PHP préparée ou en utilisant le script PHP fourni.

$cfg['Servers'][$i]['auth_http_realm']
Type:chaîne
Default value:''

En utilisant l’authentification auth_type = http, ce champ permet de définir un flux d’authentification HTTP basique personnalisé qui sera affiché à l’utilisateur. Si ce n’est pas explicitement spécifié dans votre configuration, une chaîne combinée de « phpMyAdmin  » et soit de $cfg['Servers'][$i]['verbose'] ou $cfg['Servers'][$i]['host'] sera utilisée.

$cfg['Servers'][$i]['user']
Type:chaîne
Default value:'root'
$cfg['Servers'][$i]['password']
Type:chaîne
Default value:''

En utilisant $cfg['Servers'][$i]['auth_type'] défini à ‘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']
Type:booléen
Default value:false

Obsolète depuis la version 4.7.0: Ce paramètre a été supprimé car il peut produire des résultats inattendus.

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']
Type:chaîne ou tableau
Default value:''

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('db1', 'db2');

Modifié dans la version 4.0.0: Les versions précédentes permettaient d’indiquer l’ordre d’affichage des noms de bases de données à l’aide de cette directive.

$cfg['Servers'][$i]['hide_db']
Type:chaîne
Default value:''

Expression régulière pour masquer certaines bases pour les utilisateurs sans privilèges. 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 », utiliser :

$cfg['Servers'][$i]['hide_db'] = '^a';

et pour masquer les bases de données « db1 » et « db2 », utiliser

$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']
Type:chaîne
Default value:''

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]['extension']
Type:chaîne
Default value:'mysqli'

L’extension PHP MySQL à utiliser (mysql ou mysqli).

Il est recommandé d’utiliser l’extension 'mysqli' pour toutes les installations.

$cfg['Servers'][$i]['pmadb']
Type:chaîne
Default value:''

Le nom de la base de données contenant la configuration de stockage de phpMyAdmin.

Voir la section Configuration de stockage de phpMyAdmin dans ce document pour voir les avantages de cette fonctionnalité, 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 la configuration de stockage de phpMyAdmin.

$cfg['Servers'][$i]['bookmarktable']
Type:chaîne ou false
Default value:''

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 permettre l’utilisation de cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['relation']
Type:chaîne ou false
Default value:''

Depuis la version 2.2.4, vous pouvez décrire, dans une table spéciale « relation », quel colonne 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 pouvoir utiliser cette fonctionnalité :

  • paramétrer $cfg['Servers'][$i]['pmadb'] et la configuration de stockage de phpMyAdmin

  • mettre le nom de la table de relation dans $cfg['Servers'][$i]['relation']

  • puis, en tant qu’utilisateur normal, ouvrir phpMyAdmin et pour chacune de vos tables où vous voulez utiliser cette fonctionnalité, cliquer sur Structure/Gestion des relations/ et choisir les colonnes étrangers.

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

Note

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']
Type:chaîne ou false
Default value:''

Depuis la version 2.3.0, vous pouvez décrire dans une table spéciale « table_info », quel colonne doit être affichée comme info-bulle en déplaçant le curseur sur la clé correspondante. Pour permettre l’utilisation de cette fonctionnalité :

  • paramétrer $cfg['Servers'][$i]['pmadb'] et la configuration de stockage de phpMyAdmin

  • mettre le nom de la table dans $cfg['Servers'][$i]['table_info'] (par ex. pma__table_info)

  • ensuite, pour chaque table pour laquelle vous voulez utiliser cette fonctionnalité, cliquer sur « Structure/Gestion des relations/Champ à afficher » pour choisir la colonne.

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['table_coords']
Type:chaîne ou false
Default value:''

La fonctionnalité de conception peut enregistrer l’agencement de votre page ; en cliquant sur le bouton « Enregistrer la page » ou « Enregistrer la page sous » dans le menu de conception, vous pouvez personnaliser l’agencement et le charger automatiquement lors de la prochaine utilisation de la fonctionnalité de conception. L’agencement est stocké dans cette table. De plus, cette table est également nécessaire pour la fonctionnalité d’export de relation PDF, voir $cfg['Servers'][$i]['pdf_pages'] pour plus de détails.

$cfg['Servers'][$i]['pdf_pages']
Type:chaîne ou false
Default value:''

Depuis la version 2.3.0, phpMyAdmin peut créer des pages PDF montrant les relations entre vos tables. De plus, l’interface Concepteur vous permet de gérer visuellement les relations. Pour ce faire, on doit utiliser 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é :

Cette fonctionnalité peut être désactivée également en définissant la configuration à false.

$cfg['Servers'][$i]['column_info']
Type:chaîne ou false
Default value:''

Cette partie nécessite une mise à jour du contenu ! 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’.

À compter de la version 4.3.0, un nouveau système de transformations orienté saisie a été introduit. Par conséquent, la compatibilité ascendante du code utilisé dans l’ancien système de transformations a été retiré. Il est donc nécessaire de mettre à jour la table column_info afin que les anciennes transformations et le nouveau système de transformations orienté saisie fonctionnent. phpMyAdmin la mettra à jour automatiquement en analysant la structure actuelle de votre table column_info. Cependant, si quelque chose se passait mal avec la mise à jour automatique, vous pouvez utiliser le script SQL qui se trouve dans ./sql/upgrade_column_info_4_3_0+.sql pour faire la mise à jour manuellement.

Pour pouvoir utiliser cette fonctionnalité :

  • paramétrer $cfg['Servers'][$i]['pmadb'] et la configuration de stockage de phpMyAdmin

  • mettre le nom de la table dans $cfg['Servers'][$i]['column_info'] (par ex. pma__column_info)

  • pour mettre à jour votre table PRE-2.5.0 Column_comments, utilisez ceci : et souvenez-vous que la variable dans config.inc.php a été renommée de $cfg['Servers'][$i]['column_comments'] en $cfg['Servers'][$i]['column_info']

    ALTER TABLE `pma__column_comments`
    ADD `mimetype` VARCHAR( 255 ) NOT NULL,
    ADD `transformation` VARCHAR( 255 ) NOT NULL,
    ADD `transformation_options` VARCHAR( 255 ) NOT NULL;
    
  • pour mettre à jour votre table PRE-4.3.0 Column_info manuellement, utilisez ce script SQL : ./sql/upgrade_column_info_4_3_0+.sql.

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

Note

Pour que la fonctionnalité de mise à jour automatique fonctionne, votre $cfg['Servers'][$i]['controluser'] doit avoir le privilège ALTER sur la base de données phpmyadmin. Consulter la Documentation MySQL au sujet de GRANT pour savoir comment donner le privilège GRANT à un utilisateur.

$cfg['Servers'][$i]['history']
Type:chaîne ou false
Default value:''

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 $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 pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['recent']
Type:chaîne ou false
Default value:''

Depuis la version 3.5.0, vous pouvez afficher les tables récemment utilisées dans le panneau de navigation à gauche. C’est utile pour se rendre directement sur une table sans avoir besoin de la sélectionner dans la base. En utilisant $cfg['NumRecentTables'] vous pouvez configurer le nombre maximum de tables récentes à afficher. En sélectionnant une table dans cette liste, cela vous amènera directement à la page spécifiée dans $cfg['NavigationTreeDefaultTabTable'].

Sans configurer le stockage, vous pouvez toujours accéder aux tables récemment utilisées, mais elles disparaîtront après votre déconnexion.

Pour pouvoir utiliser cette fonctionnalité de façon persistante :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['favorite']
Type:chaîne ou false
Default value:''

Depuis la version 4.2.0, vous pouvez afficher la liste des tables sélectionnées dans le panneau de navigation à gauche. C’est utile pour se rendre directement sur une table sans avoir besoin sélectionner la base, puis la table. Quand vous sélectionnez une table dans la liste, cela ira dans la page spécifiée dans $cfg['NavigationTreeDefaultTabTable'].

Vous pouvez ajouter ou retirer des tables de cette liste dans la page structure de la base de données en cliquant sur les icônes étoile à côté du nom des tables. En utilisant $cfg['NumFavoriteTables'] vous pouvez définir le nombre maximum de tables favorites à afficher.

Sans configurer le stockage, vous pouvez toujours accéder aux tables favorites, mais elles disparaîtront après votre déconnexion.

Pour pouvoir utiliser cette fonctionnalité de façon persistante :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['table_uiprefs']
Type:chaîne ou false
Default value:''

Depuis la version 3.5.0, phpMyAdmin peut être configuré pour se rappeler diverses choses (colonne triée $cfg['RememberSorting'], ordre des colonnes et visibilité des colonnes dans une table) pour la navigation dans les tables. Sans configurer le stockage, ces fonctionnalités peuvent être utilisées mais les valeurs disparaîtront après votre déconnexion.

Pour pouvoir utiliser cette fonctionnalité de façon persistante :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['users']
Type:chaîne ou false
Default value:''
$cfg['Servers'][$i]['usergroups']
Type:chaîne ou false
Default value:''

Depuis la version 4.1.0, vous pouvez créer différents groupes d’utilisateurs avec différents éléments de menu. Les utilisateurs peuvent être affectés à ces groupes et lors de leur connexion, ils ne verront que les menus associés aux groupes auxquels ils appartiennent. Pour cela, il faut deux tables : « usergroups » (stockant les éléments de menu autorisés pour chaque groupe) et « users » (stockant les utilisateurs et leur appartenance aux groupes).

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée également en définissant la configuration à false.

$cfg['Servers'][$i]['navigationhiding']
Type:chaîne ou false
Default value:''

Depuis la version 4.1.0, vous pouvez masquer/afficher les éléments dans l’arbre de navigation.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['central_columns']
Type:chaîne ou false
Default value:''

Depuis la version 4.3.0, vous pouvez avoir une liste centrale des colonnes par base de données. Vous pouvez ajouter/retirer des colonnes à la liste selon votre convenance. Ces colonnes de la liste centrale seront disponibles lorsque vous créerez une nouvelle colonne pour une table ou une nouvelle table. Vous pouvez sélectionner une colonne de la liste centrale lors de la création d’une nouvelle colonne. Cela vous épargnera de saisir la même définition de colonne encore et encore, ou de saisir des noms différents pour des colonnes similaires.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['designer_settings']
Type:chaîne ou false
Default value:''

Depuis la version 4.5.0 les paramètres de votre concepteur peuvent être mémorisés. Votre choix concernant « Liens angulaires / Liens directs », « Accrocher à la grille », « Basculement des lignes de relations », « Agrandir / Réduire tout », « Déplacer le menu » et « Épingler le texte » peut être mémorisé de manière persistante.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['savedsearches']
Type:chaîne ou false
Default value:''

Depuis la version 4.2.0, vous pouvez enregistrer et charger des requêtes « query-by-example » à partir du menu Base de données > Panneau de requêtes.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['export_templates']
Type:chaîne ou false
Default value:''

Depuis la version 4.5.0, vous pouvez enregistrer et charger des modèles d’exportation.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['tracking']
Type:chaîne ou false
Default value:''

Depuis la version 3.3.x, un mécanisme de suivi est disponible. Il vous aide à suivre toutes les commandes SQL exécutées par phpMyAdmin. Le mécanisme gère la journalisation de la manipulation de données et les déclarations de définition de données. Après son activation, vous pouvez créer des versions de tables.

La création d’une version a deux effets :

  • phpMyAdmin enregistre un cliché de la table, y compris sa structure et ses index.

  • phpMyAdmin journalise toutes les commandes qui modifie la structure et/ou les données de la table et lie ces commandes au numéro de la version.

Bien sûr, vous pouvez voir les modifications suivies. Dans la page Tracking, un rapport complet est disponible pour chaque version. Pour le rapport, vous pouvez utiliser des filtres, par exemple, vous pouvez obtenir une liste des déclarations dans un intervalle de temps donné. Si vous voulez filtrer les noms d’utilisateurs, vous pouvez saisir « * » pour tous les noms ou une liste de nom séparés par des virgules (« , »). De plus, vous pouvez exporter le rapport (filtré) dans un fichier ou une base de données temporaire.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['tracking_version_auto_create']
Type:booléen
Default value:false

Définit si le mécanisme de suivi crée automatiquement des versions pour les tables et les vues.

Si ceci est défini à « true » et que vous créez une table ou une vue avec

  • CREATE TABLE ...
  • CREATE VIEW ...

et qu’il n’existe pas de version pour celle-ci, le mécanisme de suivi créera automatiquement une version pour vous.

$cfg['Servers'][$i]['tracking_default_statements']
Type:chaîne
Default value:'CREATE TABLE,ALTER TABLE,DROP TABLE,RENAME TABLE,CREATE INDEX,DROP INDEX,INSERT,UPDATE,DELETE,TRUNCATE,REPLACE,CREATE VIEW,ALTER VIEW,DROP VIEW,CREATE DATABASE,ALTER DATABASE,DROP DATABASE'

Définit la liste des instructions que le mécanisme d’auto-création utilise pour les nouvelles versions.

$cfg['Servers'][$i]['tracking_add_drop_view']
Type:booléen
Default value:true

Si une instruction DROP VIEW IF EXISTS sera ajoutée en première ligne dans le journal lors de la création de la vue.

$cfg['Servers'][$i]['tracking_add_drop_table']
Type:booléen
Default value:true

Si une instruction DROP TABLE IF EXISTS sera ajoutée en première ligne du journal lors de la création d’une table.

$cfg['Servers'][$i]['tracking_add_drop_database']
Type:booléen
Default value:true

Si une instruction DROP DATABASE IF EXISTS sera ajoutée en première ligne du journal lors de la création d’une base de données.

$cfg['Servers'][$i]['userconfig']
Type:chaîne ou false
Default value:''

Depuis la version 3.4.x, phpMyAdmin permet aux utilisateurs de définir eux-mêmes la plupart des préférences et de les stocker en base de données.

Si vous n’autorisez pas le stockage des préférences dans $cfg['Servers'][$i]['pmadb'], les utilisateurs pourront quand même personnaliser phpMyAdmin, mais les paramètres seront enregistrés dans le stockage local du navigateur, ou, si indisponible, jusqu’à la fin de la session.

Pour pouvoir utiliser cette fonctionnalité :

Cette fonctionnalité peut être désactivée en définissant la configuration à false.

$cfg['Servers'][$i]['MaxTableUiprefs']
Type:entier
Default value:100

Nombre maximum de lignes enregistrées dans la table $cfg['Servers'][$i]['table_uiprefs'].

Quand les tables sont supprimées ou renommées, $cfg['Servers'][$i]['table_uiprefs'] peut contenir des données invalides (se référant à des tables qui n’existent plus). Nous ne conservons que ce nombre des lignes les plus récentes dans $cfg['Servers'][$i]['table_uiprefs'] et supprimons automatiquement les lignes plus anciennes.

$cfg['Servers'][$i]['SessionTimeZone']
Type:chaîne
Default value:''

Définit le fuseau horaire utilisé par phpMyAdmin. Laisser vide pour utiliser le fuseau horaire de votre serveur de base de données. Les valeurs autorisées sont expliquées dans https://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html

Ceci est utile quand votre serveur de base de données utilise un fuseau horaire différent de celui que vous voulez utiliser dans phpMyAdmin.

$cfg['Servers'][$i]['AllowRoot']
Type:booléen
Default value:true

Autoriser ou non un accès à la racine. Il s’agit seulement d’un raccourci pour les règles $cfg['Servers'][$i]['AllowDeny']['rules'] ci-dessous.

$cfg['Servers'][$i]['AllowNoPassword']
Type:booléen
Default value:false

Permet d’autoriser les connexions sans mot de passe. La valeur par défaut est false pour ce paramètre, ce qui empêche les accès non voulus à un serveur MySQL pour lequel le mot de passe root est vide ou pour lequel un utilisateur anonyme (vide) a été défini.

$cfg['Servers'][$i]['AllowDeny']['order']
Type:chaîne
Default value:''

Si votre règle « order » est vide, alors l’autorisation 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'] pour la détection d’adresse IP derrière des serveurs mandataires.

$cfg['Servers'][$i]['AllowDeny']['rules']
Type:tableau chaînes
Default value:array()

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 dans le champ ipmask (notez que ceux contenant SERVER_ADDRESS ne sont pas disponibles sur tous les serveurs web) :

'all' -> 0.0.0.0/0
'localhost' -> 127.0.0.1/8
'localnetA' -> SERVER_ADDRESS/8
'localnetB' -> SERVER_ADDRESS/16
'localnetC' -> SERVER_ADDRESS/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 address, 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)

Pour les adresses IPv6, ce qui suit fonctionne :

  • xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx (une adresse IPv6 exacte)

  • xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:[yyyy-zzzz] (une plage d’adresses IPv6)

  • xxxx.xxxx.xxxx.xxxx/nn (CIDR, adresses IPv6 de type Classless Inter-Domain Routing – routage inter-domaine sans classe)

Mais ce qui suit ne fonctionne pas :

  • xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xx[yyy-zzz] (plage partielle d’adresses IPv6)

$cfg['Servers'][$i]['DisableIS']
Type:booléen
Default value:false

Désactiver en utilisant INFORMATION_SCHEMA pour retrouver les informations (utiliser des commandes SHOW à la place), à cause de problèmes de performances quand il y a beaucoup de bases de données.

Note

Activer cette option pourrait donner un gain de performance notable sur les serveurs MySQL plus anciens.

$cfg['Servers'][$i]['SignonScript']
Type:chaîne
Default value:''

Nouveau dans la version 3.5.0.

Le nom du script PHP qui doit être exécuté pour obtenir les crédentiels de connexion. C’est une approche alternative aux sessions basées sur le single signon. Le script doit fournir la fonction appelée get_login_credentials qui renvoie le nom d’utilisateur et le mot de passe, en acceptant un seul paramètre d’utilisateur existant (peut être vide). Consulter examples/signon-script.php pour un exemple :

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
 * Single signon for phpMyAdmin
 *
 * This is just example how to use script based single signon with
 * phpMyAdmin, it is not intended to be perfect code and look, only
 * shows how you can integrate this functionality in your application.
 *
 * @package    PhpMyAdmin
 * @subpackage Example
 */


/**
 * This function returns username and password.
 *
 * It can optionally use configured username as parameter.
 *
 * @param string $user User name
 *
 * @return array
 */
function get_login_credentials($user)
{
    /* Optionally we can use passed username */
    if (!empty($user)) {
        return array($user, 'password');
    }

    /* Here we would retrieve the credentials */
    $credentials = array('root', '');

    return $credentials;
}
$cfg['Servers'][$i]['SignonSession']
Type:chaîne
Default value:''

Nom de la session que sera utilisée pour la méthode d’authentification signon. Vous devrez utiliser quelque chose de différent de phpMyAdmin, car c’est le nom de session qu’utilise phpMyAdmin en interne. N’est pris en compte que si $cfg['Servers'][$i]['SignonScript'] n’est pas configuré.

$cfg['Servers'][$i]['SignonCookieParams']
Type:array
Default value:array()

Nouveau dans la version 4.7.0.

Un tableau associatif de paramètres de cookies de session d’autres systèmes d’authentification. Ce n’est pas nécessaire si l’autre système n’utilise pas session_set_cookie_params(). Les clés doivent contenir « lifetime », « path », « domain », « secure » ou « httponly ». Les valeurs valides sont mentionnées dans session_get_cookie_params, et devraientt être définies avec les mêmes valeurs que celles utilisées par l’autre application. N’a d’effet que si $cfg['Servers'][$i]['SignonScript'] n’est pas configuré.

$cfg['Servers'][$i]['SignonURL']
Type:chaîne
Default value:''

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']
Type:chaîne
Default value:''

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.

Paramètres génériques

$cfg['DisableShortcutKeys']
Type:booléen
Default value:false

Vous pouvez aussi désactiver les raccourcis en définissant à false $cfg['SuhosinDisableWarning'].

$cfg['ServerDefault']
Type:entier
Default value:1

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['VersionCheck']
Type:booléen
Default value:true

Active la vérification des dernières versions en utilisant JavaScript sur la page principale de phpMyAdmin par un accès direct à version_check.php.

Note

Ce paramètre peut être ajusté par votre vendeur.

$cfg['ProxyUrl']
Type:chaîne
Default value:“”

L’URL du serveur mandataire à utiliser quand phpMyAdmin doit accéder à Internet comme par exemple pour récupérer l’information au sujet de la plus récente version de phpMyAdmin ou pour envoyer des rapports d’erreur. Ceci est nécessaire si le serveur sur lequel phpMyAdmin est installé n’a pas d’accès direct à Internet. Le format est « nom de serveur:numéro de port »

$cfg['ProxyUser']
Type:chaîne
Default value:“”

Le code utilisateur pour s’authentifier sur le serveur mandataire. Par défaut, aucune authentification n’est utilisée. Si un code utilisateur est fourni, l’authentification de base sera utilisée. Aucun autre type d’authentification n’est permis pour le moment.

$cfg['ProxyPass']
Type:chaîne
Default value:“”

Le mot de passe pour s’authentifier sur le serveur mandataire.

$cfg['MaxDbList']
Type:entier
Default value:100

Le nombre maximum de noms de bases de données à afficher dans la liste des bases de données.

$cfg['MaxTableList']
Type:entier
Default value:250

Le nombre maximum de tables à afficher dans le panneau principal (sauf sur le panneau Exporter).

$cfg['ShowHint']
Type:booléen
Default value:true

Affichage ou pas des astuces (par exemple, les astuces lors du survol des en-têtes de tables par la souris).

$cfg['MaxCharactersInDisplayedSQL']
Type:entier
Default value:1000

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. Également, si la longueur d’une requête excède cette limite, la requête n’est pas conservée dans l’historique.

$cfg['PersistentConnections']
Type:booléen
Default value:false

Indique si les connexions persistantes doivent être utilisées ou pas. Fonctionne avec les extensions suivantes :

$cfg['ForceSSL']
Type:booléen
Default value:false

Obsolète depuis la version 4.6.0: Ce paramètre n’est plus disponible depuis phpMyAdmin 4.6.0. Veuillez adapter la configuration de votre serveur Web en conséquence.

Pour forcer ou pas l’utilisation de https lors de l’accès à phpMyAdmin. Dans une configuration de proxy inverse, paramétrer ceci à true n’est pas pris en charge.

Note

Dans certaines configurations −comme un proxy SSL séparé ou un équilibreur de charge (load balancer)− vous pourriez avoir besoin de définir $cfg['PmaAbsoluteUri'] pour avoir une redirection correcte.

$cfg['ExecTimeLimit']
Type:entier [nombre de secondes]
Default value:300

Définit le nombre de secondes pendant lequel un script est autorisé à s’exécuter. Si ce chiffre est zéro, aucune limite de temps n’est imposée. Ce paramètre est utilisé lors de l’importation/exportation de fichiers dump et dans la fonctionnalité de synchronisation mais n’a aucun effet lorsque PHP est exécuté en mode sécurisé.

$cfg['SessionSavePath']
Type:chaîne
Default value:''

Chemin de stockage des données de session (session_save_path PHP parameter).

Avertissement

Ce dossier ne doit pas être publiquement accessible via le serveur web, sinon vous risquez la fuite de données privées provenant de votre session.

$cfg['MemoryLimit']
Type:chaîne [nombre d’octets]
Default value:'-1'

Définit le nombre d’octets qu’un script est autorisé à allouer. Si ce nombre est défini à '-1', aucune limite n’est imposée. S’il est défini à '0', aucun changement à la limite de mémoire n’est tenté et le réglage de php.ini memory_limit est utilisé.

Ce paramètre est utilisé lors de l’importation/exportation de fichiers dump, vous ne voulez donc pas mettre une valeur trop basse ici. Il 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’. Assurez-vous de ne pas oublier le suffixe (16 signifie 16 octets !)

$cfg['SkipLockedTables']
Type:booléen
Default value:false

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']
Type:booléen
Default value:true

Définit si les requêtes SQL générées par phpMyAdmin doivent être affichées.

$cfg['RetainQueryBox']
Type:booléen
Default value:false

Définit si la boîte de requête SQL doit rester affichée après soumission de la requête.

$cfg['CodemirrorEnable']
Type:booléen
Default value:true

Définit s’il faut utiliser un éditeur de code JavaScript pour les boîtes de requêtes. CodeMirror fournit la coloration syntaxique et la numérotation des lignes. Cependant, un double clic pour copier des contenus dans le presse-papiers dans certaines distributions GNU/Linux (comme Ubuntu) n’est pas supporté dans tous les navigateurs.

$cfg['DefaultForeignKeyChecks']
Type:chaîne
Default value:'default'

La valeur par défaut de la case à cocher pour la vérification des clés étrangères, qui sert à désactiver/activer les vérification de clés étrangères pour certaines requêtes. Les valeurs possibles sont « Valeur par défaut du serveur », « Activer » ou « Désactiver ». Si « Valeur par défaut du serveur » est sélectionné, la valeur de la variable MySQL FOREIGN_KEY_CHECKS est utilisée.

$cfg['AllowUserDropDatabase']
Type:booléen
Default value:false

Avertissement

Ceci n’est pas une mesure de sécurité car il existera toujours des moyens de la contourner. Si vous voulez empêcher les utilisateurs de supprimer des bases de données, révoquez leurs privilèges DROP correspondant.

Définit si les utilisateurs lambda (non administrateur) sont autorisés à supprimer leur propre base de données. S’il est défini à FALSE, le lien guilabel: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']
Type:booléen
Default value:true

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['UseDbSearch']
Type:booléen
Default value:true

Définit si « rechercher une chaîne dans la base de données » est activé.

$cfg['IgnoreMultiSubmitErrors']
Type:booléen
Default value:false

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.

Panneau principal

$cfg['ShowStats']
Type:booléen
Default value:true

Définit s’il faut afficher ou non les statistiques et l’usage de l’espace de stockage des bases de données et des 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']
Type:booléen
Default value:true

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']
Type:booléen
Default value:false

Définit si on affiche ou pas les liens Informations PHP dans le cadre principal (de droite) de démarrage.

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()

Avertissement

En activant la page phpinfo, vous perdrez beaucoup d’informations sur la configuration du serveur. Il n’est pas recommandé de l’activer sur les installations partagées.

Cela pourrait également rendre certaines attaques à distance plus faciles sur les installations de l’utilisateur, activer donc ceci seulement lorsque c’est nécessaire.

$cfg['ShowChgPassword']
Type:booléen
Default value:true

Définit si on affiche ou pas les liens Modifier le mot de passe dans le cadre principal (de droite) de démarrage. Ce paramètre ne vérifie pas les commandes MySQL saisies directement.

Merci de noter qu’activer le lien Modifier le mot de passe n’a pas d’effet avec le mode d’authentification « config » : leur mot de passe étant codé dans le fichier de configuration, les utilisateurs n’ont pas la possibilité de le modifier.

$cfg['ShowCreateDb']
Type:booléen
Default value:true

Définit si on affiche ou pas le formulaire de création de base de données dans le cadre principal (de droite) de démarrage. Ce paramètre ne vérifie pas les commandes MySQL saisies directement.

$cfg['ShowGitRevision']
Type:booléen
Default value:true

Définit s’il faut afficher des informations sur la révision Git actuelle (le cas échéant) sur le panneau principal.

$cfg['MysqlMinVersion']
Type:array

Définit la version minimum de MySQL qui est supportée. La version par défaut est choisie par l’équipe phpMyAdmin; cependant ce paramètre a été demandé par un développeur du panneau de contrôle Plesk pour faciliter l’intégration avec d’anciens serveurs MySQL (où la plupart des fonctionnalités de phpMyAdmin sont possibles).

Structure de base de données

$cfg['ShowDbStructureCreation']
Type:booléen
Default value:false

Définit si la page de structure de base de données (liste des tables) a une colonne « Création » qui s’affiche lorsque chaque table est créée.

$cfg['ShowDbStructureLastUpdate']
Type:booléen
Default value:false

Définit si la page de structure de base de données (liste des tables) a une colonne « Dernière mise à jour » qui s’affiche pour la date de dernière mise à jour de la table.

$cfg['ShowDbStructureLastCheck']
Type:booléen
Default value:false

Définit si la page de structure de base de données (liste des tables) a une colonne « Dernière vérification » qui affiche la date de la dernière vérification de la table.

$cfg['HideStructureActions']
Type:booléen
Default value:true

Définit si les actions sur la structure des tables doivent être masquées dans une liste déroulante « Plus ».

Mode de navigation

$cfg['TableNavigationLinksMode']
Type:chaîne
Default value:'icons'

Définit si les liens vers les tables contiennent des « Icônes », du « Texte » ou « Les deux ».

$cfg['ActionLinksMode']
Type:chaîne
Default value:'both'

Si défini à icons, les liens vers les propriétés des tables et les menus seront affichés avec des icônes à la place du texte (comme Parcourir, Sélectionner, Insérer, …). Peut être défini à 'both' si vous voulez des icônes ET du texte. Quand cette valeur vaut text il ne sera affiché que du texte.

$cfg['RowActionType']
Type:chaîne
Default value:'both'

Pour activer ou non l’affichage des icônes ou du texte ou des deux dans le segment action d’une ligne de table. Les valeurs peuvent être 'icons', 'text' ou 'both'.

$cfg['ShowAll']
Type:booléen
Default value:false

Définit si un utilisateur peut afficher un bouton « Afficher tout » en mode navigation ou dans tous les cas. Par défaut, il est affiché pour les petites tables (moins de 500 lignes) pour éviter les problèmes de performance.

$cfg['MaxRows']
Type:entier
Default value:25

Nombre de lignes affichées lors de la navigation sur un ensemble de résultats et si aucune clause LIMIT n’est utilisée. Si le nombre des colonnes est supérieur à cette valeur, des liens « Suivant » et « Précédent » seront affichés. Les valeurs possibles sont 25,50,100,250,500.

$cfg['Order']
Type:chaîne
Default value:'SMART'

Définit si les colonnes sont affichées en ordre croissant (ASC), décroissant (DESC) ou en ordre « intelligent » (SMART) - c’est-à-dire en ordre décroissant pour les colonnes de type TIME, DATE, DATETIME &amp; TIMESTAMP et croissant pour les autres - par défaut.

Modifié dans la version 3.4.0: Depuis phpMyAdmin 3.4.0, la valeur par défaut est 'SMART'.

$cfg['GridEditing']
Type:chaîne
Default value:'double-click'

Définit quelle action (double-clic ou clic) déclenche l’édition de la grille. Peut être désactivé avec la valeur disabled.

$cfg['RelationalDisplay']
Type:chaîne
Default value:'K'

Définit le comportement initial pour Options > Relations. K , qui est la valeur par défaut, affiche la clé alors que D montre colonne d’affichage.

$cfg['SaveCellsAtOnce']
Type:booléen
Default value:false

Définit s’il faut enregistrer toutes les cellules éditées à la fois en édition de grille.

Mode de modification

$cfg['ProtectBinary']
Type:booléen ou chaîne
Default value:'blob'

Définit si les colonnes BLOB ou BINARY sont protégés lors de l’affichage du contenu d’une table. Les valeurs valides sont :

  • false pour permettre la modification de toutes les colonnes ;

  • blob pour autoriser la modification de toutes les colonnes sauf les colonnes de type BLOBS ;

  • 'noblob' pour désactiver la modification de toutes les colonnes sauf les colonnes de type BLOBS (le contraire de 'blob') ;

  • 'all' pour interdire la modification des colonnes de types BINARY ou BLOB.

$cfg['ShowFunctionFields']
Type:booléen
Default value:true

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['ShowFieldTypesInDataEditView']
Type:booléen
Default value:true

Définit si les colonnes type doivent être affichées en mode modification/insertion. L’utilisateur peut changer ce paramètre à partir de l’interface.

$cfg['InsertRows']
Type:entier
Default value:2

Définit le nombre de lignes par défaut devant être saisies depuis la page d’insertion. Les utilisateurs peuvent le modifier manuellement depuis le bas de cette page pour ajouter/retirer des lignes vides.

$cfg['ForeignKeyMaxLimit']
Type:entier
Default value:100

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']
Type:array
Default value:array(‘content-id’, ‘id-content’)

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.

Exporter et importer des paramètres

$cfg['ZipDump']
Type:booléen
Default value:true
$cfg['GZipDump']
Type:booléen
Default value:true
$cfg['BZipDump']
Type:booléen
Default value:true

Définit si on utilise la compression zip/GZip/BZip2 lors de la création de fichiers d’exportation

$cfg['CompressOnFly']
Type:booléen
Default value:true

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['Export']
Type:array
Default value:array(…)

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['Export']['format']
Type:chaîne
Default value:'sql'

Format d’exportation par défaut.

$cfg['Export']['method']
Type:chaîne
Default value:'quick'

Définit le mode d’affichage du formulaire d’export lors de son chargement. Les valeurs permises sont :

  • quick pour afficher le nombre minimum d’options à configurer

  • custom pour afficher toutes les options de configuration disponibles

  • custom-no-form est identique à custom mais n’affiche pas l’option d’export rapide

$cfg['Export']['charset']
Type:chaîne
Default value:''

Définit l’encodage pour l’exportation générée. Par défaut, aucune conversion d’encodage n’est effectuée en supposant UTF-8.

$cfg['Export']['file_template_table']
Type:chaîne
Default value:'@TABLE@'

Modèle de nom de fichier par défaut pour les exportations de tables.

$cfg['Export']['file_template_database']
Type:chaîne
Default value:'@DATABASE@'

Modèle de nom de fichier par défaut pour les exportations de bases de données.

$cfg['Export']['file_template_server']
Type:chaîne
Default value:'@SERVER@'

Modèle de nom de fichier par défaut pour les exportations de serveurs.

$cfg['Import']
Type:array
Default value:array(…)

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['Import']['charset']
Type:chaîne
Default value:''

Définit l’encodage pour l’importation. Par défaut, aucune conversion d’encodage n’est effectuée en supposant UTF-8.

Paramètres d’affichage des onglets

$cfg['TabsMode']
Type:chaîne
Default value:'both'

Définit si les onglets de menu contiennent des « Icônes », du « Texte » ou « les deux ».

$cfg['PropertiesNumColumns']
Type:entier
Default value:1

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. 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']
Type:chaîne
Default value:'welcome'

Définit l’onglet affiché par défaut dans la vue serveur. Les valeurs autorisées sont les traductions équivalentes à :

  • `welcome (recommandé pour les installations multi-utilisateurs)

  • databases,
  • status
  • variables
  • privileges
$cfg['DefaultTabDatabase']
Type:chaîne
Default value:'structure'

Définit l’onglet affiché par défaut pour la vue base de données. Les valeurs possibles sont les traductions équivalentes à :

  • structure
  • sql
  • search
  • opérations

$cfg['DefaultTabTable']
Type:chaîne
Default value:'browse'

Définit l’onglet affiché par défaut pour la vue base de données. Les valeurs autorisées sont les traductions équivalentes à :

  • structure
  • sql
  • search
  • insérer

  • afficher

Options PDF

$cfg['PDFPageSizes']
Type:array
Default value:array('A3', 'A4', 'A5', 'letter', 'legal')

Tableau des différentes tailles de papier possibles pour la création des pages PDF.

Vous ne devriez jamais avoir besoin de modifier cela.

$cfg['PDFDefaultPageSize']
Type:chaîne
Default value:'A4'

Taille de page par défaut à utiliser pour la création de pages PDF. Les valeurs autorisées sont énumérées dans $cfg['PDFPageSizes'].

Langues

$cfg['DefaultLang']
Type:chaîne
Default value:'en'

Définit la langue à utiliser par défaut, s’il n’est pas définit par le navigateur ou l’utilisateur. Le fichier de langue correspondant doit être dans locale/code/LC_MESSAGES/phpmyadmin.mo.

$cfg['DefaultConnectionCollation']
Type:chaîne
Default value:'utf8mb4_general_ci'

Définit la collation utilisée par défaut. Consultez la documentation MySQL pour les jeux de caractères pour obtenir une liste des valeurs possibles.

$cfg['Lang']
Type:chaîne
Default value:non défini

Force la langue à utiliser. Le fichier de langue correspondant doit être dans locale/code/LC_MESSAGES/phpmyadmin.mo.

$cfg['FilterLanguages']
Type:chaîne
Default value:''

Limite la liste des langues disponibles à celle correspondant à 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['RecodingEngine']
Type:chaîne
Default value:'auto'

Pour pouvez choisir ici quelles fonctions seront utilisées pour la conversion de page de code. Les valeurs autorisées sont :

  • auto - utilise automatiquement une fonction disponible (la première testée est iconv, puis recode),

  • iconv - utilise les fonctions iconv ou libiconv,

  • recode - utilise la fonction recode_string

  • mb - utilise l’extension mbstring

  • none - désactive la conversion de l’encodage

Quand la conversion de caractères est activée, cela active un menu déroulant dans les pages d’export et d’import, afin de choisir le jeu de caractères utilisé lors de l’exportation d’un fichier. La valeur par défaut dans ce menu provient de $cfg['Export']['charset'] et $cfg['Import']['charset'].

$cfg['IconvExtraParams']
Type:chaîne
Default value:'//TRANSLIT'

Spécifie des paramètres pour iconv utilisés dans la conversion de jeux de caractères. 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']
Type:array
Default value:array(…)

Jeux de caractères disponibles pour la conversion MySQL. Vous pouvez ajouter le vôtre (n’importe lequel pris en charge par recode/iconv) ou supprimer celui dont vous ne vous servez pas. Les jeux de caractères seront affichés dans le même ordre que celui défini ici ; aussi, si vous en utilisez fréquemment quelques-uns, faites-les figurer en début de tableau.

Paramètres du serveur web

$cfg['OBGzip']
Type:chaîne/booléen
Default value:'auto'

Définit s’il faut utiliser la mise en cache des sorties de GZIP pour améliorer les vitesses de transfert 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['TrustedProxies']
Type:array
Default value:array()

Liste les serveurs mandataires et les en-têtes HTTP de confiance pour $cfg['Servers'][$i]['AllowDeny']['order']. Cette liste est vide par défaut. Vous devez renseigner des serveurs mandataires de confiance si vous voulez utiliser des règles pour les adresses IP derrière un serveur mandataire.

L’exemple suivant spécifie que phpMyAdmin doit faire confiance à un en-tête HTTP_X_FORWARDED_FOR (X -Forwarded-For) provenant du serveur mandataire 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']
Type:chaîne
Default value:'auto'

Spécifie si GD est disponible en version 2 ou supérieure. Si c’est le cas, il peut être utilisé pour les transformations MIME. Les valeurs autorisées sont :

  • auto - détecte automatiquement

  • yes - les fonctions GD 2 peuvent être utilisées,

  • no - les fonctions GD 2 ne peuvent pas être utilisées

$cfg['CheckConfigurationPermissions']
Type:booléen
Default value:true

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 devrait définir ce paramètre à FALSE.

$cfg['LinkLengthLimit']
Type:entier
Default value:1000

Longueur limite de l’URL dans les liens. Quand la longueur est supérieure à cette limite, le lien est remplacé par un formulaire avec un bouton. Ceci est nécessaire car certains serveurs Web (IIS) ont des problèmes avec les URL longues.

$cfg['CSPAllow']
Type:chaîne
Default value:''

Chaîne supplémentaire à inclure dans les sources autorisées de script et d’image dans l’en-tête de de la politique de sécurité du contenu.

Cela peut être utile lorsque vous souhaitez inclure des fichiers externes de JavaScript dans config.footer.inc.php ou config.header.inc.php, ce qui ne serait normalement pas autorisé par la politique de sécurité du contenu.

Pour permettre certains sites, il suffit de les énumérer à l’intérieur de la chaîne :

$cfg['CSPAllow'] = 'example.com example.net';

Nouveau dans la version 4.0.4.

$cfg['DisableMultiTableMaintenance']
Type:booléen
Default value:false

Dans la page Structure de la base de données, il est possible de marquer certaines tables puis de choisir une opération comme l’optimisation de plusieurs tables. Ceci peut ralentir le serveur ; par conséquent, définir ceci à true empêche ce type d’opération de maintenance multiple.

Paramètres des thèmes

Veuillez modifier directement themes/themename/layout.inc.php, bien que vos changements seront écrasés lors de la prochaine mise à jour.

Personnalisation du design

$cfg['NavigationTreePointerEnable']
Type:booléen
Default value:true

Lorsque défini à true, placer le curseur sur un élément dans le panneau de navigation provoque le marquage de cet élément (le fond est mis en surbrillance).

$cfg['BrowsePointerEnable']
Type:booléen
Default value:true

Lorsque défini à true, survoler une ligne dans le volet Afficher provoque le marquage de cette ligne (le fond est mis en surbrillance).

$cfg['BrowseMarkerEnable']
Type:booléen
Default value:true

Lorsque réglé à la valeur true, une ligne de données est marquée (le fond est mis en surbrillance) lorsque la ligne est sélectionnée avec la case à cocher.

$cfg['LimitChars']
Type:entier
Default value:50

Nombre maximum de caractères affichés dans un champ non numérique en mode Afficher. Peut être désactivé par un bouton radio dans la page de navigation.

Type:chaîne
Default value:'left'

Définit l’endroit où les liens modifier, copier et effacer seront placés quand le contenu des tables est affiché (vous pouvez les afficher à gauche, à droite, des deux côtés ou nulle part).

$cfg['RowActionLinksWithoutUnique']
Type:booléen
Default value:false

Définit si l’on doit afficher les liens relatifs aux lignes (Modifier, Copier, Effacer) et les cases à cocher pour des opérations sur plusieurs lignes, même si la sélection ne comporte pas de unique key. Faire des actions sur des lignes en l’absence d’une clé unique peut faire en sorte que des lignes différentes ou plus de lignes soient affectées puisqu’il n’y a aucun garantie quant à la sélection exacte des lignes.

$cfg['RememberSorting']
Type:booléen
Default value:true

Si activé, l’ordre de tri des tables est conservé lors de la navigation dans les tables.

$cfg['TablePrimaryKeyOrder']
Type:chaîne
Default value:'NONE'

Ceci définit l’ordre de tri par défaut des tables possédant une primary key, lorsqu’il n’y a aucun ordre de tri défini à l’externe. Les valeurs possibles sont : [‘NONE’, ‘ASC’, ‘DESC’]

$cfg['ShowBrowseComments']
Type:booléen
Default value:true
$cfg['ShowPropertyComments']
Type:booléen
Default value:true

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 affiché en tant qu’info-bulle pour ce champ.

Champs texte

$cfg['CharEditing']
Type:chaîne
Default value:'input'

Définit quels types de contrôles d’édition doivent être utilisés pour les colonnes CHAR et VARCHAR. Cela s’applique à l’édition des données ainsi qu’aux valeurs par défaut dans l’édition de structure. Les valeurs permises sont :

  • input - ceci permet de limiter la taille du texte en fonction de la taille des colonnes dans MySQL, mais il y a des problèmes avec les caractères « newline » dans les colonnes

  • textarea - aucun problème avec les caractères « newline » dans les colonnes, mais ne permet pas de limitation de taille

$cfg['MinSizeForInputField']
Type:entier
Default value:4

Définit la taille minimale des champs de saisie générés pour les colonnes CHAR et VARCHAR.

$cfg['MaxSizeForInputField']
Type:entier
Default value:60

Définit la taille maximale des champs de saisie générés pour les colonnes CHAR et VARCHAR.

$cfg['TextareaCols']
Type:entier
Default value:40
$cfg['TextareaRows']
Type:entier
Default value:15
$cfg['CharTextareaCols']
Type:entier
Default value:40
$cfg['CharTextareaRows']
Type:entier
Default value:2

Le nombre de colonnes et de lignes pour les zones de text (textareas). 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 la modification de CHAR et VARCHAR (si configurées dans $cfg['CharEditing']).

$cfg['LongtextDoubleTextarea']
Type:booléen
Default value:true

Définit si la zone de texte pour les colonnes LONGTEXT doit avoir une taille double.

$cfg['TextareaAutoSelect']
Type:booléen
Default value:false

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['EnableAutocompleteForTablesAndColumns']
Type:booléen
Default value:true

Si vous voulez activer la saisie semi-automatique pour les noms de table et de colonne dans n’importe quelle boîte de requête SQL.

Paramètres de la fenêtre de requête SQL

$cfg['SQLQuery']['Edit']
Type:booléen
Default value:true

Définit l’affichage d’un lien pour modifier une requête dans toute boîte SQL Query.

$cfg['SQLQuery']['Explain']
Type:booléen
Default value:true

Définit l’affichage d’un lien pour expliquer une requête SELECT dans toute boîte SQL Query.

$cfg['SQLQuery']['ShowAsPHP']
Type:booléen
Default value:true

Définit l’affichage d’un lien pour incorporer une requête dans du code PHP dans toute boîte SQL Query.

$cfg['SQLQuery']['Refresh']
Type:booléen
Default value:true

Définit l’affichage d’un lien pour actualiser une requête dans toute boîte SQL Query.

Les répertoires de transfert/sauvegarde/import du serveur web

Si PHP est exécuté en mode sécurisé, tous les répertoires doivent appartenir au même utilisateur que le propriétaire des scripts phpMyAdmin.

Si le répertoire où est installé phpMyAdmin est sujet à une restriction open_basedir, vous devez créer un répertoire temporaire dans un répertoire accessible par l’interprêteur PHP.

Pour des raisons de sécurité, tous les répertoires doivent être en dehors de l’arbre publié par le serveur Web. Si vous ne pouvez faire autrement, limitez l’accès aux répertoires en utilisant la configuration du serveur Web (par exemple en utilisant des fichiers .htaccess ou web.config) ou placez au moins un fichier index.html vide ici, de sorte que le parcours de répertoires ne soit pas possible. Cependant, tant que le répertoire est accessible par le serveur Web, un attaquant peut deviner les noms de fichiers pour les télécharger.

$cfg['UploadDir']
Type:chaîne
Default value:''

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é via HTTP, ou quand les transferts de fichiers sont désactivés dans PHP.

Avertissement

Veuillez consulter le début de ce chapitre (Les répertoires de transfert/sauvegarde/import du serveur web) pour des instructions sur la configuration de ce répertoire et comment le sécuriser.

$cfg['SaveDir']
Type:chaîne
Default value:''

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.

Avertissement

Veuillez consulter le début de ce chapitre (Les répertoires de transfert/sauvegarde/import du serveur web) pour des instructions sur la configuration de ce répertoire et comment le sécuriser.

$cfg['TempDir']
Type:chaîne
Default value:'./tmp/'

Le nom du répertoire où les fichiers temporaires peuvent être stockés. Il est utilisé pour :

Ce répertoire devra avoir les permissions les plus strictes possibles car le seul utilisateur à devoir accéder à ce répertoire est celui qui exécute le serveur Web. Si vous avez des privilèges root, rendez simplement cet utilisateur propriétaire de ce répertoire, et ne le rendez accessible que par lui :

chown www-data:www-data tmp
chmod 700 tmp

Si vous ne pouvez changer le propriétaire du répertoire, vous pouvez effectuer une configuration similaire en utilisant une ACL :

chmod 700 tmp
setfacl -m "g:www-data:rwx" tmp
setfacl -d -m "g:www-data:rwx" tmp

Si aucune de ces deux solutions ne fonctionne pour vous, vous pouvez toujours faire un chmod 777 sur le répertoire, mais cela pourrait imposer des risques de sécurité aux autres utilisateurs du système qui lisent et écrivent des données dans ce répertoire.

Avertissement

Veuillez consulter le début de ce chapitre (Les répertoires de transfert/sauvegarde/import du serveur web) pour des instructions sur la configuration de ce répertoire et comment le sécuriser.

Divers paramètres d’affichage

$cfg['RepeatCells']
Type:entier
Default value:100

Répète les en-têtes toutes les X cellules, ou 0 pour désactiver.

$cfg['QueryHistoryDB']
Type:booléen
Default value:false
$cfg['QueryHistoryMax']
Type:entier
Default value:25

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']). S’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 à cocher 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 sauvegardées dans l’historique en utilisant $cfg['QueryHistoryMax'].

$cfg['BrowseMIME']
Type:booléen
Default value:true

Activer les Transformations.

$cfg['MaxExactCount']
Type:entier
Default value:500000

Pour les tables InnoDB, détermine pour quelle taille de tables phpMyAdmin doit obtenir le nombre de lignes exact avec SELECT COUNT. Si le nombre 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']
Type:entier
Default value:0

Pour les vues, 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. Mettre cette valeur à 0 passe outre tout comptage de lignes.

$cfg['NaturalOrder']
Type:booléen
Default value:true

Trie les noms des bases de données et des tables en ordre naturel (par exemple, t1, t2, t10). Actuellement mis en œuvre dans le panneau de navigation et dans la vue Base de données, pour la liste des tables.

$cfg['InitialSlidersState']
Type:chaîne
Default value:'closed'

Si défini à 'closed', les cases de défilement sont initialement dans un état fermé. Une valeur 'open' fait le contraire. Pour désactiver complètement toutes les cases de défilement visuel, utiliser 'disabled'.

$cfg['UserprefsDisallow']
Type:array
Default value:array()

Contient les noms des options de configuration (clés d’un tableau $cfg) que les utilisateurs ne peuvent définir via les préférences. Pour les valeurs autorisées, voir les classes sous libraries/classes/Config/Forms/User/.

$cfg['UserprefsDeveloperTab']
Type:booléen
Default value:false

Active dans les préférences utilisateur un onglet contenant les options pour les développeurs de phpMyAdmin.

Titres de page

$cfg['TitleTable']
Type:chaîne
Default value:'@HTTP_HOST@ / @VSERVER@ / @DATABASE@ / @TABLE@ | @PHPMYADMIN@'
$cfg['TitleDatabase']
Type:chaîne
Default value:'@HTTP_HOST@ / @VSERVER@ / @DATABASE@ | @PHPMYADMIN@'
$cfg['TitleServer']
Type:chaîne
Default value:'@HTTP_HOST@ / @VSERVER@ | @PHPMYADMIN@'
$cfg['TitleDefault']
Type:chaîne
Default value:'@HTTP_HOST@ | @PHPMYADMIN@'

Vous permet d’indiquer le titre de la fenêtre. Vous pouvez utiliser 6.27 Quels formats de chaînes puis-je utiliser ?.

Paramètres du gestionnaire de thèmes

$cfg['ThemeManager']
Type:booléen
Default value:true

Active les thèmes sélectionnables par l’utilisateur. Voir 2.7 Utiliser et créer des thèmes.

$cfg['ThemeDefault']
Type:chaîne
Default value:'pmahome'

Le thème par défaut (un sous-répertoire de ./themes/).

$cfg['ThemePerServer']
Type:booléen
Default value:false

Autorise ou non un thème différent pour chaque serveur.

Requêtes par défaut

$cfg['DefaultQueryTable']
Type:chaîne
Default value:'SELECT * FROM @TABLE@ WHERE 1'
$cfg['DefaultQueryDatabase']
Type:chaîne
Default value:''

Requêtes par défaut qui seront affichées dans les boîtes de requête quand l’utilisateur ne spécifie rien. Vous pouvez utiliser 6.27 Quels formats de chaînes puis-je utiliser ?.

Paramètres MySQL

$cfg['DefaultFunctions']
Type:array
Default value:array(…)

Fonctions sélectionnées par défaut pour insérer/modifier un enregistrement. Les fonctions sont définies pour les méta-types comme (FUNC_NUMBER, FUNC_DATE, FUNC_CHAR, FUNC_SPATIAL, FUNC_UUID) et pour first_timestamp, qui est utilisé pour la première colonne d’horodatage dans une table.

Options par défaut pour les transformations

$cfg['DefaultTransformations']
Type:array
Default value:Un tableau avec les clés-valeurs listées ci-dessous
$cfg['DefaultTransformations']['Substring']
Type:array
Default value:array(0, ‘tout’, ‘…’)
$cfg['DefaultTransformations']['Bool2Text']
Type:array
Default value:array(‘T’, ‘F’)
$cfg['DefaultTransformations']['External']
Type:array
Default value:array(0, ‘-f /dev/null -i -wrap -q’, 1, 1)
$cfg['DefaultTransformations']['PreApPend']
Type:array
Default value:array(‘’, ‘’)
$cfg['DefaultTransformations']['Hex']
Type:array
Default value:array(‘2’)
$cfg['DefaultTransformations']['DateFormat']
Type:array
Default value:array(0, ‘’, ‘local’)
$cfg['DefaultTransformations']['Inline']
Type:array
Default value:array(‘100’, 100)
Type:array
Default value:array(‘’, 100, 50)
Type:array
Default value:array(‘’, ‘’, ‘’)

Développeur

Avertissement

Ces paramètres peuvent avoir un effet énorme sur les performances ou la sécurité.

$cfg['DBG']
Type:array
Default value:array(…)
$cfg['DBG']['sql']
Type:booléen
Default value:false

Active la journalisation des requêtes et des temps d’exécution qui sont alors affichés dans la console de l’onglet Debug SQL.

$cfg['DBG']['sqllog']
Type:booléen
Default value:false

Active la journalisation des requêtes et des temps d’exécution dans syslog. Nécessite que $cfg['DBG']['sql'] soit activé.

$cfg['DBG']['demo']
Type:booléen
Default value:false

Activer pour permettre au serveur de se présenter comme un serveur de démonstration. Ceci est utilisé pour le serveur de démonstration phpMyAdmin.

Actuellement, il modifie le comportement suivant :

  • Il y a un message d’accueil sur la page principale.

  • Il y a de l’information de pied de page à propos de la démo de server et de la révision de git utilisée.

  • Le script d’installation est activé même pour une configuration existante.

  • L’installation n’essaie pas de se connecter au serveur MySQL.

Exemple

Consulter les parties de configuration suivantes pour les configurations typiques de phpMyAdmin.

Exemple de base :

Exemple de fichier de configuration qui peut être copié dans config.inc.php pour obtenir une configuration de base pour le rendu. Il est distribué avec phpMyAdmin sous le nom config.sample.inc.php. Veuillez noter qu’il ne contient pas toutes les options de configuration, seulement les plus fréquemment utilisées.

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
 * phpMyAdmin sample configuration, you can use it as base for
 * manual configuration. For easier setup you can use setup/
 *
 * All directives are explained in documentation in the doc/ folder
 * or at <https://docs.phpmyadmin.net/>.
 *
 * @package PhpMyAdmin
 */

/**
 * This is needed for cookie based authentication to encrypt password in
 * cookie. Needs to be 32 chars long.
 */
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

/**
 * Servers configuration
 */
$i = 0;

/**
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;

/**
 * phpMyAdmin configuration storage settings.
 */

/* User used to manipulate with storage */
// $cfg['Servers'][$i]['controlhost'] = '';
// $cfg['Servers'][$i]['controlport'] = '';
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';

/* Storage database and tables */
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
// $cfg['Servers'][$i]['history'] = 'pma__history';
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
// $cfg['Servers'][$i]['users'] = 'pma__users';
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';

/**
 * End of servers configuration
 */

/**
 * Directories for saving/loading files from server
 */
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';

/**
 * Whether to display icons or text or both icons and text in table row
 * action segment. Value can be either of 'icons', 'text' or 'both'.
 * default = 'both'
 */
//$cfg['RowActionType'] = 'icons';

/**
 * Defines whether a user should be displayed a "show all (records)"
 * button in browse mode or not.
 * default = false
 */
//$cfg['ShowAll'] = true;

/**
 * Number of rows displayed when browsing a result set. If the result
 * set contains more rows, "Previous" and "Next".
 * Possible values: 25, 50, 100, 250, 500
 * default = 25
 */
//$cfg['MaxRows'] = 50;

/**
 * Disallow editing of binary fields
 * valid values are:
 *   false    allow editing
 *   'blob'   allow editing except for BLOB fields
 *   'noblob' disallow editing except for BLOB fields
 *   'all'    disallow editing
 * default = 'blob'
 */
//$cfg['ProtectBinary'] = false;

/**
 * Default language to use, if not browser-defined or user-defined
 * (you find all languages in the locale folder)
 * uncomment the desired line:
 * default = 'en'
 */
//$cfg['DefaultLang'] = 'en';
//$cfg['DefaultLang'] = 'de';

/**
 * How many columns should be used for table display of a database?
 * (a value larger than 1 results in some information being hidden)
 * default = 1
 */
//$cfg['PropertiesNumColumns'] = 2;

/**
 * Set to true if you want DB-based query history.If false, this utilizes
 * JS-routines to display query history (lost by window close)
 *
 * This requires configuration storage enabled, see above.
 * default = false
 */
//$cfg['QueryHistoryDB'] = true;

/**
 * When using DB-based query history, how many entries should be kept?
 * default = 25
 */
//$cfg['QueryHistoryMax'] = 100;

/**
 * Whether or not to query the user before sending the error report to
 * the phpMyAdmin team when a JavaScript error occurs
 *
 * Available options
 * ('ask' | 'always' | 'never')
 * default = 'ask'
 */
//$cfg['SendErrorReports'] = 'always';

/**
 * You can find more configuration options in the documentation
 * in the doc/ folder or at <https://docs.phpmyadmin.net/>.
 */

Avertissement

N’utilisez pas l’utilisateur de contrôle ‘pma’ s’il n’existe pas encore et n’utilisez pas ‘pmapass’ comme mot de passe.

Exemple pour l’authentification ‘signon’

Cet exemple utilise examples/signon.php pour montrer l’utilisation de Mode d’authentification ‘signon’:

<?php
$i = 0;
$i++;
$cfg['Servers'][$i]['extension']     = 'mysqli';
$cfg['Servers'][$i]['auth_type']     = 'signon';
$cfg['Servers'][$i]['SignonSession'] = 'SignonSession';
$cfg['Servers'][$i]['SignonURL']     = 'examples/signon.php';
?>`

Exemple de limitation de l’adresse IP pour la connexion automatique

Si vous voulez vous connecter automatiquement pour accéder à phpMyAdmin localement, et avec la demande d’un mot de passe pour l’accès à distance, vous pouvez utiliser le bout de code suivant :

if ($_SERVER["REMOTE_ADDR"] == "127.0.0.1") {
    $cfg['Servers'][$i]['auth_type'] = 'config';
    $cfg['Servers'][$i]['user'] = 'root';
    $cfg['Servers'][$i]['password'] = 'yourpassword';
} else {
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
}

Note

Le filtrage basé sur les adresses IP n’est pas fiable sur Internet. Ne l’utiliser que pour les adresses locales.

Exemple pour l’utilisation de plusieurs serveurs MySQL

Vous pouvez configurer plusieurs serveurs en utilisant $cfg['Servers'], l’exemple suivant en propose deux :

<?php
$cfg['blowfish_secret']='multiServerExample70518';
//any string of your choice
$i = 0;

$i++; // server 1 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose']   = 'no1';
$cfg['Servers'][$i]['host']      = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysqli';
// more options for #1 ...

$i++; // server 2 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose']   = 'no2';
$cfg['Servers'][$i]['host']      = 'remote.host.addr';//or ip:'10.9.8.1'
// this server must allow remote clients, e.g., host 10.9.8.%
// not only in mysql.host but also in the startup configuration
$cfg['Servers'][$i]['extension'] = 'mysqli';
// more options for #2 ...

// end of server sections
$cfg['ServerDefault'] = 0; // to choose the server on startup

// further general options ...
?>

Google Cloud SQL avec SSL

Pour se connecter à Google Cloud SQL, vous devez désactiver la vérification de certificat. Ceci survient quant le CN du certificat correspond au nom de votre instance mais que vous vous connectez en utilisant l’adresse IP et PHP essaie de faire correspondre les deux. Quand la vérification est activée, vous obtenez un message d’erreur du type :

Peer certificate CN=`api-project-851612429544:pmatest' did not match expected CN=`8.8.8.8'

Avertissement

En désactivant la vérification, votre trafic est chiffré mais vous êtes vulnérable aux attaque de type « man in the middle ».

Pour connecter phpMyAdmin à Google Cloud SQL en utilisant SSL, télécharger les certificats client et serveur et indiquer à phpMyAdmin de les utiliser :

// IP address of your instance
$cfg['Servers'][$i]['host'] = '8.8.8.8';
// Use SSL for connection
$cfg['Servers'][$i]['ssl'] = true;
// Client secret key
$cfg['Servers'][$i]['ssl_key'] = '../client-key.pem';
// Client certificate
$cfg['Servers'][$i]['ssl_cert'] = '../client-cert.pem';
// Server certification authority
$cfg['Servers'][$i]['ssl_ca'] = '../server-ca.pem';
// Disable SSL verification (see above note)
$cfg['Servers'][$i]['ssl_verify'] = false;