Ceci est une version traduite de la documentation de phpMyAdmin. Vous pouvez y contribuer sur notre serveur de traduction.
Prérequis
- PHP
- Vous devez utiliser PHP 5.2.0 ou ultérieur avec la gestion de session ( voir la FAQ 1.31) et l'extension Standard PHP Library (SPL).
- Pour pouvoir télécharger des fichiers ZIP vers le serveur, vous avez besoin de l'extension PHP zip.
- Pour la gestion correcte des chaînes multioctets (par ex. UTF-8, qui est le défaut actuellement), vous devez installer les extensions mbstring et ctype.
- Vous avez besoin du module GD2 dans PHP pour afficher des vignettes intégrées de fichiers JPEG (« image/jpeg:inline ») avec le rapport hauteur / largeur original.
- Pour utiliser la méthode d'authentification par « cookie », l'extension mcrypt est fortement recommandée pour la plupart des utilisateurs et nécessaire pour les machines 64-bit. Ne pas utiliser mcrypt provoquera un chargement des pages par phpMyAdmin sensiblement plus lent.
- Pour gérer les barres de progression d'upload, consulter la FAQ 2.9.
- MySQL 5.0 ou ultérieur (détails) ;
- un navigateur avec les cookies activés.
Introduction
phpMyAdmin peut gérer un serveur MySQL (cela nécessite un compte super-utilisateur) aussi bien qu'une seule base de données. Pour pouvoir administrer une seule base de données, il est nécessaire d'avoir un droit de lecture / écriture sur la base de données concernée. Il vous appartient de consulter la section appropriée dans le manuel de MySQL.
Actuellement phpMyAdmin sait :
- browse and drop databases, tables, views, columns and indexes
- create, copy, drop, rename and alter databases, tables, columns and indexes
- maintenir serveur, bases de données et tables en proposant une configuration serveur ;
- supprimer, modifier et ajouter des champs ;
- exécuter, modifier et créer un signet pour toute requête SQL, même les requêtes par lot ;
- créer1 et lire des fichiers d'exportation (dumps) de tables ;
- exporter1 des données dans divers formats : CSV, XML, PDF, ISO/IEC 26300 - texte et feuille de calcul OpenDocument, Word, Excel et LATEX ;
- importeer des données et des structures MySQL à partir de Microsoft Excel et des feuilles de tableur OpenDocument, ou encore des fichiers XML, CSV et SQL
- administrer plusieurs serveurs ;
- gérer les utilisateurs MySQL et les privilèges ;
- vérifier l'intégrité référentielle des tables MyISAM ;
- utiliser Query-by-example (QBE), créer des requêtes complexes se connectant automatiquement aux tables concernées ;
- créer des graphiques PDF du schéma de votre base de données ;
- faire des recherches dans une base de données entière ou dans une partie seulement ;
- convertir des données stockées en n'importe quel format en utilisant un ensemble de fonctions prédéfinies, comme par exemple l'affichage de données stockées en format BLOB en tant qu'image ou les liens de téléchargement ;
- suivre les modifications dans les bases de données, tables et vues ;
- gérer les tables InnoDB et les clés étrangères (voir FAQ 3.6) ;
- gérer mysqli, l'extension améliorée de MySQL (voir FAQ 1.17) ;
- communicate in 58 different languages
- synchroniser deux bases de données résidant sur le même serveur ou sur des serveurs distants(voir FAQ 9.1);
Un mot au sujet des utilisateurs :
Beaucoup de gens ont des difficultés à comprendre le concept de gestion d'utilisateur par rapport à phpMyAdmin. Quand un utilisateur se connecte à phpMyAdmin, son nom d'utilisateur et son mot de passe sont passés directement à MySQL. phpMyAdmin ne fait de gestion d'utilisateurs par lui-même (autre que de permettre la manipulation de l'information du compte utilisateur MySQL) ; tous les utilisateurs doivent être des utilisateurs MySQL valides.
Installation
- Installation rapide
- Script d'installation usage
- Infrastructure de tables liées
- Mise à jour
- Modes d'authentification
phpMyAdmin n'applique pas de méthodes de sécurité spéciales au serveur de données MySQL. Il appartient toujours à l'administrateur système d'accorder les autorisations adéquates sur les bases de données MySQL. La page « Privilèges » de phpMyAdmin peut être utilisée pour cela.
À l'attention des utilisateurs Mac :
Si vous utilisez une version Mac OS antérieure à la version OS X, StuffIt se débrouille avec les formats Mac.
Vous devrez donc convertir, tout comme dans BBEdit, au format Unix TOUS les scripts phpMyAdmin avant de les transférer sur votre serveur, car PHP ne semble pas apprécier les caractères de fin de ligne au format Mac (« \r »).
Installation rapide
- Choisissez un kit de distribution approprié sur la page de téléchargement de phpmyadmin.net. Certains kits ne contiennent que les messages en anglais, d'autres les messages pour toutes les langues au format UTF-8 (ce qui devrait suffire dans la plupart des cas), d'autres les messages pour toutes les langues et tous les jeux de caractères. Nous supposerons que vous avez choisi un kit dont le nom est de la forme phpMyAdmin-x.x.x-all-languages.tar.gz.
- « Détarrez » (.tar) ou « dézippez » (.zip) la distribution (assurez-vous de conserver l'arborescence des sous-répertoires). Exécutez ensuite la commande suivante : tar -xzvf phpMyAdmin_x.x.x-all-languages.tar.gz dans le répertoire document racine de votre serveur web. Si vous n'avez pas d'accès direct à votre répertoire racine document, mettez les fichiers dans un répertoire de votre ordinateur local, et, après l'étape 4, transférez le répertoire sur votre serveur web en utilisant, par exemple, le protocole ftp.
- Assurez-vous que tous les scripts ont le propriétaire adéquat (si PHP fonctionne en mode sécurisé, avoir des scripts avec un propriétaire différent de celui des autres posera un problème). Voir la section FAQ 4.2 et FAQ 1.26 pour des suggestions.
- Maintenant vous devez configurer votre installation. Il y a deux méthodes pouvant être utilisées. Traditionnellement, les utilisateurs ont une copie modifiée manuellement du fichier config.inc.php, mais maintenant un script d'installation de type assistant d'installation est fourni pour ceux qui préfèrent une installation graphique. Créer un fichier config.inc.php demeure néanmoins un moyen rapide pour démarrer et nécessaire pour certaines fonctionnalités avancées.
- Pour créer manuellement le fichier, utilisez un simple éditeur de texte pour créer le fichier config.inc.php (vous pouvez copier le fichier config.sample.inc.php pour obtenir un fichier de configuration minimal) dans le répertoire principal de phpMyAdmin (celui qui contient le fichier index.php). phpMyAdmin charge tout d'abord le fichier libraries/config.default.php puis écrase ces valeurs avec celles trouvées dans le fichier config.inc.php. Si la valeur par défaut vous convient pour un paramètre particulier, il n'est pas nécessaire de l'inclure dans le fichier config.inc.php. Vous aurez besoin de quelques directives pour continuer. Une configuration simple peut ressembler à ceci :
<?php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003'; // indiquer ici une valeur de votre choix
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>
Ou, si vous préférez ne pas avoir d'invite de connexion
à chaque fois :
<?php
$i=0;
$i++;
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'cbb74bc'; // indiquez ici votre mot de passe
$cfg['Servers'][$i]['auth_type'] = 'config';
?>
Pour une explication complète de toutes les valeurs de configuration possibles, veuillez consulter la section Configuration de ce document.
- Au lieu de modifier manuellement le fichier config.inc.php, vous pouvez aussi utiliser le Script d'installation. Tout d'abord vous devez créer manuellement un répertoire config dans le répertoire phpMyAdmin. C'est une mesure de sécurité. Sur un système GNU/Linux ou Unix, vous pouvez utiliser les commandes suivantes :
cd phpMyAdmin
mkdir config # créez un répertoire pour la sauvegarde
chmod o+rw config # donnez les droits d'écriture à tout le monde
Et pour modifier une configuration existante, copier d'abord le fichier dans le répertoire config :
cp config.inc.php config/ # copiez le fichier de configuration existant pour le modifier
chmod o+w config/config.inc.php # donnez les droits d'écriture à tout le monde
rm -rf config # supprimez le répertoire inutile
Sur d'autres plateformes, créez simplement le répertoire et assurez-vous que votre serveur Web a les droits d'accè en lecture et écriture sur celui-ci. La section FAQ 1.26 peut vous aider pour cela.
Ensuite, ouvrez le fichier script d'installation dans votre navigateur. Veuillez noter que les changements ne sont pas enregistrés sur le disque tant que vous n'avez pas choisi Enregistrer dans la zone Configuration de l'écran. Normalement, le script enregistre le nouveau fichier config.inc.php dans le répertoire config/, mais si le serveur Web n'a pas les permissions appropriées, vous pouvez voir le message d'erreur suivant : « Impossible de charger ou enregistrer la configuration ». Assurez-vous que le répertoire config/ existe et qu'il a les bonnes permissions - ou utilisez le lien Télécharger pour enregistrer le fichier de configuration localement et l'envoyer (via FTP ou un autre moyen) dans le bon emplacement.
Un fois le fichier enregistré, il doit être déplacé du répertoire config/ et les permissions doivent être réinitialisées, pour des raisons de sécurité :
mv config/config.inc.php . # déplacez le fichier dans le répertoire courant
chmod o-rw config.inc.php # enlevez les droits de lecture et d'écriture à tout le monde
Maintenant, le fichier est prêt à être utilisé. Vous pouvez choisir de vérifier ou modifier le fichier de configuration avec votre éditeur favori, si vous préférez définir des options avancées que le script d'installation de permet pas de faire.
- Si vous utilisez la configuration auth_type, nous vous recommandons de protéger le répertoire dans lequel vous installez phpMyAdmin, car cette configuration ne nécessite pas que l'utilisateur donne un mot de passe pour accéder au répertoire d'installation de phpMyAdmin. Nous vous recommandons d'utiliser une méthode d'authentification alternative comme par exemple avec HTTP-AUTH dans un fichier .htaccess ou utilisez la méthode d'authentification par cookie ou http. Consultez la sous-section multi-utilisateurs de cette FAQ pour des informations supplémentaires et particulièrement la partie FAQ 4.4.
- Ouvrir le répertoire principal phpMyAdmin dans votre navigateur. phpMyAdmin devrait maintenant afficher un écran de bienvenue et vos bases de données, ou une boîte de dialogue de connexion si vous utilisez le mode HTTP ou le mode authentification par cookie.
- Vous devrez interdire l'accès aux sous-répertoires ./libraries et ./setup/lib de votre serveur Web. Pour Apache, vous pouvez utiliser le fichier .htaccess fourni dans ce dossier, pour les autres serveurs Web, vous devrez le configurer vous-même. Une telle configuration empêche de possibles vulnérabilités de « path exposure » et de « cross side scripting » qui pourraient être découvertes dans le code.
- Il est généralement conseillé de protéger l'installation phpMyAdmin publique contre les accès des robots car ils ne peuvent rien faire de bon en général ici. Vous pouvez faire ceci en utilisant le fichier
robots.txt à la racine de votre serveur Web ou en limitant l'accès par la configuration de votre serveur Web. Vous pouvez trouver un exemple de fichier .htaccess qui vous aide à effectuer ceci dans le répertoire contrib de phpMyAdmin.
Infrastructure des tables liées
For a whole set of new features (bookmarks, comments, SQL-history, tracking
mechanism,
PDF-generation, column
contents transformation, etc.) you need to create a set of special
tables. Those tables can be located in your own database, or in a
central
database for a multi-user installation (this database would then be
accessed
by the controluser, so no other user should have rights to it).
Veuillez regarder dans votre répertoire ./scripts/,
où vous devriez trouver un fichier du nom de
create_tables.sql. (Si vous utilisez un serveur Windows, portez
une
attention particulière à la partie FAQ 1.23).
Si vous avez déjà cette infrastructure et mis à jour
vers MySQL 4.1.2 ou ultérieur, veuillez utiliser le fichier
./scripts/upgrade_tables_mysql_4_1_2+.sql.
Vous pouvez d'ores et déjà utiliser phpMyAdmin qui
créera les tables pour vous. S'il vous plaît, sachez que vous
pouvez avoir besoin de privilèges spéciaux (administrateur)
pour créer la base de données et les tables, et que le script
peut avoir besoin de quelques ajustements en fonction du nom de la base
de
données.
Après avoir importé le fichier create_tables.sql, vous
devrez spécifier le nom des tables dans votre fichier
./config.inc.php. Vous trouverez les directives à utiliser
pour cela dans la section Configuration. Vous
aurez
également besoin d'un controluser avec les droits appropriés
pour ces tables (voir la section Utiliser
les
modes d'authentification ci-dessous).
Mise à jour :
Copiez simplement le fichier config.inc.php de votre
installation
précédente dans votre nouvelle installation. Les fichiers de
configuration de très anciennes versions (2.3.0 ou
précédentes) peuvent nécessiter des ajustements car
certaines options ont été modifiées ou
supprimées en particulier, la définition de
$cfg['AttributeTypes'] a changé, vous feriez donc mieux de les
retirer de votre fichier et d'utiliser celui par défaut. Pour une
compatibilité avec PHP 6, supprimez une déclaration
set_magic_quotes_runtime(0); que vous pourriez trouver à la
fin de votre fichier de configuration.
Vous ne devez pas copier
libraries/config.default.php par dessus config.inc.php
car
le fichier de configuration par défaut est spécifique à
chaque version.
Si vous avez mis à jour votre serveur MySQL d'une version plus
ancienne que la 4.1.2 vers une version 4.1.2 ou ultérieure et si vous
utilisez la partie pmadb/infrastructure des tables liées, vous devez
exécuter le script suivant :
scripts/upgrade_tables_mysql_4_1_2+.sql.
Utiliser les modes
d'authentification :
- Les modes d'authentification HTTP et par cookie sont conseillés dans un
environnement multi-utilisateurs où vous ne voulez donner
l'accès aux utilisateurs qu'à leur propre base de
données et où vous ne voulez pas qu'ils jouent avec les autres
bases.
Néanmoins, sachez que MS Internet Explorer paraît être
vraiment bogué en ce qui concerne les cookies, au moins
jusqu'à la version 6, et PHP 4.1.1 est également un peu
bogué dans ce domaine !
Même dans un environnement mono-utilisateur, vous
pourriez
opter pour les modes HTTP
ou par cookie de sorte que votre paire utilisateur/mot de passe ne soit
pas
écrite en clair dans le fichier de configuration.
- Les modes d'authentification HTTP et par cookie sont plus sécurisés :
les informations de connexion de MySQL n'ont pas besoin d'être
défini dans le fichier de configuration de phpMyAdmin (excepté
pour l'utilisateur de contrôle « controluser » -
voir la section controluser).
Quoi qu'il en soit, gardez à l'esprit que le mot de passe
transite en
clair, à moins d'utiliser le protocole HTTPS.
En mode cookie, le mot de passe est stocké et chiffré avec
l'algorithme blowfish, dans un cookie temporaire.
- Note : À partir de la version 2.6.1 de
phpMyAdmin, cette
section ne s'applique qu'aux serveurs MySQL exécutés avec
l'option --skip-show-database.
Pour les modes HTTP
et
cookie, phpMyAdmin a besoin d'un utilisateur de contrôle -
« controluser » - ayant seulement le
privilège SELECT sur les tables mysql.user (toutes
les colonnes sauf « Password »),
mysql.db (toutes les colonnes), mysql.host (toutes les
colonnes) et mysql.tables_priv (toutes les colonnes sauf
« Grantor » et
« Timestamp »).
Vous devez spécifier les détails
pour le controluser dans le fichier config.inc.php
dans la section paramètre $cfg['Servers'][$i]['controluser'] et $cfg['Servers'][$i]['controlpass'].
L'exemple suivant suppose que vous voulez utiliser
« pma » comme utilisateur de contrôle
et « pmapass » comme mot de passe, mais il
ne s'agit que d'un exemple : utilisez autre chose pour votre
fichier ! Saisissez ces déclarations dans une fenêtre
de requête de phpMyAdmin ou en ligne de commande mysql.
Bien sûr, vous devrez remplacer localhost par le nom
d'hôte de votre serveur web si celui-ci n'est pas le même que
votre serveur MySQL.
GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';
GRANT SELECT (
Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
Execute_priv, Repl_slave_priv, Repl_client_priv
)
ON mysql.user TO 'pma'@'localhost';
GRANT SELECT ON mysql.db TO 'pma'@'localhost';
GRANT SELECT ON mysql.host TO 'pma'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
ON mysql.tables_priv TO 'pma'@'localhost';
Si vous voulez utiliser les toutes nouvelles caractéristiques de
relation et de signets :
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
(ceci nécessite bien sûr que votre infrastructure de tables liées soit définie).
- Ensuite, un ensemble de privilèges doit être accordé
à chaque utilisateur réel sur un ensemble de bases
définies. Normalement, vous ne devriez pas donner de
privilèges globaux à un utilisateur ordinaire, à moins
que vous ne sachiez ce que vous faites (par exemple, si vous créez un
super-utilisateur).
Par exemple, pour accorder à l'utilisateur
utilisateur_réel tous les privilèges sur la base
base_utilisateur :
GRANT ALL PRIVILEGES ON base_utilisateur.* TO 'utilisateur_réel'@localhost IDENTIFIED BY 'vrai_mot_de_passe';
Ce que peut faire maintenant l'utilisateur est entièrement
contrôlé par le système de gestion d'utilisateurs de
MySQL.
Avec les modes d'authentification HTTP ou par cookie, vous n'avez pas besoin de
renseigner
les champs utilisateur/mot de passe dans la partie $cfg['Servers'].
Mode d'authentification 'HTTP'
- Il utilise la méthode d'authentification de base HTTP et vous autorise à
vous connecter en tant que n'importe quel utilisateur MySQL valide.
- Il est géré par la plupart des configurations PHP. Pour la
gestion IIS (ISAPI)
utilisant PHP CGI, voir la
section FAQ
1.32, pour utiliser Apache CGI voir la section FAQ 1.35.
- Voir également la section FAQ 4.4 sur le fait de ne pas utiliser le
mécanisme d'authentification .htaccess en même
temps que le mode d'authentification 'HTTP'.
Mode d'authentification 'cookie' :
- Vous pouvez utiliser cette méthode à la place de
l'authentification HTTP
(par exemple si vous utiliser IIS).
- Bien sûr, l'utilisateur doit activer les cookies dans son
navigateur,
mais c'est maintenant un prérequis pour tous les modes
d'authentification.
- Avec ce mode, l'utilisateur peut réellement se déconnecter de
phpMyAdmin et se reconnecter avec le même nom d'utilisateur.
- Si vous voulez vous connecter à un serveur arbitraire, voir la
directive $cfg['AllowArbitraryServer'].
- Comme il est indiqué dans la section Prérequis,
l'extension mycrypt
accélère considérablement l'accès, mais il n'est
pas obligatoire de l'installer.
Mode d'authentification 'signon'
- Ce mode est un moyen pratique pour utiliser les crédentiels
provenant
d'une autre application pour s'authentifier dans phpMyAdmin.
- L'autre application doit stocker les informations de connexion
dans les
données de session.
- Vous trouverez plus de détails dans la section auth_type.
Mode d'authentification 'config'
- Ce mode est le moins sécurisé car il requiert de remplir les
champs $cfg['Servers'][$i]['user']
et $cfg['Servers'][$i]['password']
(et par conséquent, quicoonque peut lire votre fichier
config.inc.php peut découvrir votre nom d'utilisateur et
votre mot de passe.
Mais vous n'avez pas besoin de définir un utilisateur de
contrôle - « controluser » - ici :
l'utilisation de $cfg['Servers'][$i]['only_db']
s'avère
suffisante.
- Dans la section FAI de la FAQ, il y a un point expliquant comment
protéger votre fichier de configuration.
- Pour une sécurité supplémentaire dans ce mode, vous
devriez considérer les directives de configuration de
l'authentification hôte $cfg['Servers'][$i]['AllowDeny']['order'] et $cfg['Servers'][$i]['AllowDeny']['rules'].
- Contrairement aux modes par cookie et http, il ne nécessite pas
que
l'utilisateur s'authentifie lors du premier chargement du site
phpMyAdmin. C'est prévu ainsi, mais cela pourrait permettre à
tout utilisateur d'accéder à votre installation.
L'utilisation d'une méthode de restriction est recommandée,
peut-être avec un fichier .htaccess avec la
directive HTTP-AUTH directive ou en interdisant les requêtes HTTP
entrantes sur le routeur ou le pare-feu suffisent (ces deux suggestions
n'entrent pas dans les sujets abordés dans ce manuel mais vous pouvez
facilement trouver des informations sur ces sujets avec Google).
Authentification Swekey
Swekey est une clé USB d'authentification bon marché qui peut être
utilisée
dans les applications Web.
Quand l'authentification Swekey est activée, phpMyAdmin nécessite que la
clé
Swekey de l'utilisateur soit connectée avant d'entrer sur la page de
connexion (actuellement disponible pour le mode authentification par
cookie
seulement). L'authentification Swekey est désactivée par défaut.
Pour l'activer, ajouter la ligne suivante au fichier
config.inc.php :
$cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey.conf';
Ensuite, vous devez créer le fichier swekey.conf qui associera
chaque utilisateur avec son identifiant Swekey. Il est important de
placer
ce fichier en dehors de la racine document de votre serveur Web (dans
l'exemple, il est situé dans /etc). Un fichier d'exemple
commenté
est fourni dans le répertoire contrib. Vous pouvez l'utiliser
avec
vos propres informations d'utilisateurs.
Si vous voulez acheter une clé Swekey, veuillez visiter http://phpmyadmin.net/auth_key
car
ce lien permet de recevoir des fonds pour phpMyAdmin.
Configuration
À l'attention des utilisateurs Mac : PHP ne semble pas
apprécier les caractères de fin de ligne Mac
(« \r »). Aussi, assurez-vous de choisir
l'option qui autorise l'utilisation des caractères de fin de ligne
*nix (« \n ») dans votre éditeur de
texte avant d'enregistrer un script que vous avez modifié.
Note sur la configuration :
Presque
toutes les données de configuration sont placées dans
config.inc.php. Si ce fichier n'existe pas, veuillez vous
rapporter
à la section Installation rapide pour en
créer un. Ce fichier ne nécessite de contenir que les
paramètres dont vous voudriez changer la valeur par défaut
dans le fichier libraries/config.default.php.
Les paramètres relatifs à la conception (comme les couleurs),
se trouvent dans themes/themename/layout.inc.php. Vous pouvez
également créer les fichiers config.footer.inc.php et
config.header.inc.php pour ajouter à votre site du code
spécifique à inclure en en-tête et en pied de chaque
page.
- $cfg['PmaAbsoluteUri'] chaîne
- Définissez ici l'URL
complète (avec le chemin d'accès complet) du répertoire
d'installation de votre phpMyAdmin. C'est-à-dire
http://www.votre_site.net/chemin_d_acces_avotre_repertoire_phpMyAdmin/.
Veuillez noter également que l'URL sur certains serveurs Web est sensible à la
casse. N'oubliez pas le slash (« / ») final pour
votre URL.
À partir de la version 2.3.0, il est conseillé d'essayer de
laisser ce paramètre à blanc. Dans la plupart des cas,
phpMyAdmin détecte automatiquement le paramètre
approprié. Les utilisateurs de « port
forwarding » devront définir PmaAbsoluteUri (plus
de
renseignements ici). Un bon test est de naviguer dans une table,
d'éditer une ligne et de l'enregistrer. Vous devriez obtenir un
message d'erreur si phpMyAdmin rencontre des problèmes pour
détecter automatiquement la bonne valeur. Si vous obtenez une erreur
indiquant que ce paramètre doit être défini ou que le
code d'auto-détection échoue à trouver le chemin
d'accès, veuillez poster un rapport de bogue sur notre traqueur de
bogues pour que nous améliorions le code.
- $cfg['PmaNoRelation_DisableWarning']
booléen
- À partir de la version 2.3.0 phpMyAdmin offre beaucoup de
fonctionnalités pour travailler avec les tables maîtres / de
référence (voir $cfg['Servers'][$i]['pmadb']).
Si vous essayez de le paramétrer et qu'il ne fonctionne pas pour
vous, regardez la page « Structure » d'une base de
données où vous voudriez l'utiliser. Vous trouverez alors un
lien qui analysera pourquoi ces fonctionnalités ont été
désactivées.
Si vous ne voulez pas utiliser ces fonctionnalités, mettez cette
variable à TRUE pour empêcher ce message
d'apparaître.
- $cfg['SuhosinDisableWarning']
booléen
- Un avertissement est affiché sur la page principale si Suhosin
est détecté.
Vous pouvez définir ce paramètre à TRUE pour empêcher ce
message
d'apparaître.
- $cfg['McryptDisableWarning']
booléen
- Désactive l'avertissement par défaut qui est affiché si mcrypt
est manquant
pour l'authentification par cookie. Vous pouvez définir ce paramètre à
TRUE pour empêcher l'affichage de ce message.
- $cfg['AllowThirdPartyFraming']
booléen
- En définissant ceci à true, cela permet à une page
située dans un
domaine différent d'appeler phpMyAdmin à 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).
- $cfg['blowfish_secret'] chaîne
- Le mode d'authentification par « cookie » utilise
l'algorithme blowfish pour chiffrer le mot de passe.
Si vous utilisez le mode d'authentification par 'cookie', entrez
ici une
phrase aléatoire de votre choix. Elle sera utilisée de
manière interne par l'algorithme blowfish : cette phrase mot de
passe ne vous sera pas demandée. Il n'y a pas de taille maximale pour
cette phrase.
Depuis la version 3.1.0, phpMyAdmin peut générer ceci à la
volée, mais cela
affaiblit un peu la sécurité car le mot de passe est stocké en session
et de
plus, cela rend impossible de se rappeler du nom de l'utilisateur à
partir
du cookie.
- $cfg['Servers'] tableau
- Depuis la version 1.4.2, phpMyAdmin gère l'administration de
plusieurs serveurs MySQL. Par conséquent, un tableau $cfg['Servers'] a
été ajouté qui contient les informations de connexions
pour les différents serveurs. Le premier $cfg['Servers'][$i]['host'] contient le nom
d'hôte du premier serveur, le second $cfg['Servers'][$i]['host'] le nom d'hôte du
second serveur, etc. Dans le fichier libraries/config.default.php,
il n'y a qu'une section pour la définition du serveur, cependant vous
pouvez en mettre autant que vous le voulez dans le fichier
config.inc.php; copier ce bloc ou d'autres parties
nécessaires (il n'est pas utile de définir tous les
paramètres, seulement ceux que vous avez besoin de changer).
- $cfg['Servers'][$i]['host'] chaîne
- Le nom d'hôte ou l'adresse IP
de votre $i-ème serveur MySQL. C'est-à-dire localhost.
- $cfg['Servers'][$i]['port'] chaîne
- Le numéro de port de votre $i-ème serveur MySQL. Par
défaut : 3306 (laissez à blanc pour utiliser la valeur
par défaut). Si vous utilisez « localhost »
comme nom d'hôte, MySQL ignore ce numéro de port et se connecte
avec le socket, donc, si vous voulez vous connecter avec un port
différent de celui par défaut, utilisez
« 127.0.0.1 » ou le nom d'hôte réel dans
$cfg['Servers'][$i]['host'].
- $cfg['Servers'][$i]['socket'] chaîne
- Le chemin d'accès vers le socket à utiliser. Laissez à
blanc pour utiliser la valeur par défaut.
Pour déterminer le bon socket, vérifiez votre configuration
MySQL ou, en utilisant la ligne de commande mysql, utilisez la
commande status. Parmi les informations affichées se
trouvera le socket utilisé.
- $cfg['Servers'][$i]['ssl'] booléen
- Pour activer ou pas une connexion SSL vers le serveur MySQL.
- $cfg['Servers'][$i]['connect_type']
chaîne
- Quel type de connexion utiliser avec le serveur MySQL. Vos choix
sont
'socket' et 'tcp'. Par défaut, c'est 'tcp' parce
qu'il est pratiquement sûr qu'il est disponible sur tous les serveurs
MySQL, alors que les sockets ne sont pas gérés sur certaines
plateformes.
Pour utiliser le mode socket, votre serveur MySQL doit être sur
la
même machine que le serveur Web.
- $cfg['Servers'][$i]['extension']
chaîne
- Définit l'extension php MySQL utilisée pour la connexion. Les
options autorisées sont :
mysql : L'extension MySQL classique. C'est
l'option
recommandée et par défaut à ce jour.
mysqli : L'extension MySQL améliorée.
Cette extension devient disponible avec php version 5.0.0, et
recommandée pour se connecter sur un serveur exécutant MySQL
version 4.1.x ou suivantes.
- $cfg['Servers'][$i]['compress']
booléen
- Pour utiliser ou non un protocole compressé pour la connexion au
serveur MySQL (expérimental).
Cette fonctionnalité requiert PHP version 4.3.0 ou ultérieure.
-
$cfg['Servers'][$i]['controluser']
chaîne
$cfg['Servers'][$i]['controlpass']
chaîne
- Ce compte spécial est utilisé pour deux propos
distincts : rendre possible toutes les fonctionnalités
relationnelles (voir $cfg['Servers'][$i]['pmadb'])
et, pour un serveur
MySQL de version inférieure à 4.1.2 ou exécuté
avec l'option --skip-show-database, permettre une installation
multi-utilisateurs (mode d'authentification HTTP ou par cookie).
Si vous utilisez les modes d'authentification HTTP ou par cookie (ou le mode
d'authentification
'config' depuis phpMyAdmin 2.2.1), vous devez fournir des informations
sur
un compte MySQL qui a un privilège SELECT sur les
tables mysql.user (toutes les colonnes sauf
« Password »), mysql.db (toutes les
colonnes) et mysql.tables_priv (toutes les colonnes sauf
« Grantor » et
« Timestamp »). Ce compte est utilisé pour
vérifier quelles bases de données l'utilisateur pourra voir
à la connexion.
Veuillez consulter la section Installation
sur
« Utiliser les modes d'authentification » pour plus de
renseignements.
Dans les versions de phpMyAdmin antérieures à la version
2.2.5, ils étaient appelés
« stduser/stdpass ».
- $cfg['Servers'][$i]['auth_type']
chaîne ['HTTP'|'http'|'cookie'|'config'|'signon']
- Définit le mode d'authentification config, cookie, signon ou HTTP qui sera utilisé sur
le serveur.
- 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.
- le mode d'authentification 'cookie'
($auth_type = 'cookie') tel qu'introduit dans la
version
2.2.3 vous permet de vous connecter comme n'importe quel utilisateur
MySQL
valide à l'aide de cookies. Les nom et mot de passe de connexion sont
stockés dans des cookies pendant la session et le mot de passe est
effacé à la fin de la session. Ceci vous permet
également de vous connecter à un serveur arbitraire si $cfg['AllowArbitraryServer']
est activé.
- le mode authentification 'HTTP' ( appelé
« avancé » dans les précédentes
versions et peut aussi être écrit 'http')
($auth_type = 'HTTP') tel qu'introduit dans la version 1.3.0
vous
permet de vous connecter comme n'importe utilisateur MySQL valide via
HTTP-Auth.
- le mode d'authentification 'signon'
($auth_type = 'signon') qui a été
introduit dans la version 2.10.0 vous permet de vous connecter à
partir de données de session préparée PHP. Ceci est
utile pour la mise en œuvre d'une connexion unique (single signon)
à partir d'une autre application. Un exemple pour alimenter une
session se trouve dans :
scripts/signon.php. Vous
aurez
besoin de configurer session name et signon URL pour utiliser ce mode
d'authentification.
Veuillez consulter la section Installation
sur
« Utiliser les modes d'authentification » pour plus de
renseignements.
-
$cfg['Servers'][$i]['auth_http_realm']
string
-
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]['auth_swekey_config']
chaîne
-
Le nom du fichier contenant les identifiants et noms de connexion Swekey pour l'authentification matérielle. Laisser
vide
pour désactiver cette fonctionnalité.
-
$cfg['Servers'][$i]['user']
chaîne
$cfg['Servers'][$i]['password']
chaîne
-
En utilisant auth_type = 'config', c'est la paire
utilisateur/mot de passe
qu'utilisera phpMyAdmin pour se connecter au serveur MySQL. Cette
paire utilisateur/mot de passe n'est pas nécessaire quand
les modes d'authentification HTTP ou cookie sont utilisés, et doit rester vide.
-
$cfg['Servers'][$i]['nopassword']
boolean
-
Permet d'essayer de se connecter sans mot de passe quand la
connexion avec
mot de passe a échoué. Ceci peut être utilisé en
conjonction avec l'authentification HTTP, quand l'authentification est faite par d'autres
moyens et que phpMyAdmin obtient le nom d'utilisateur à partir de
auth et utilise un mot de passe « vide » pour se
connecter à MySQL. La connexion par mot de passe est d'abord
essayée, mais ensuite, en moyen de secours, aucune méthode par
mot de passe n'est essayée.
-
$cfg['Servers'][$i]['only_db']
chaîne ou tableau
-
S'il est indiqué un nom de base de données (ou un tableau de
noms de bases de données) , seule(s) cette (ces) base(s) sera
(seront) affichée(s) à l'utilisateur. Depuis la version 2.2.1
de phpMyAdmin, ce(s) nom(s) de base(s) de données peuvent contenir
des méta-caractères MySQL (« _ » et
« % ») : si vous voulez utiliser des instances
littérales de ces caractères, utilisez des séquences
d'échappement (c'est-à-dire écrivez 'ma\_bdd'
et pas 'ma_bdd').
Ce paramétrage est un moyen efficace de diminuer la charge du
serveur
puisque ce dernier n'a pas besoin d'envoyer des requêtes MySQL pour
construire la liste des bases de données disponibles. Mais cela ne
remplacera pas les règles de privilèges sur le serveur de base
de données MySQL.
S'il est utilisé, cela signifie
seulement que seules ces bases de données seront affichées,
mais pas que toutes les autres bases de données ne pourront pas
être utilisées.
Un exemple d'utilisation de plus d'une base de données :
$cfg['Servers'][$i]['only_db'] = array('bdd1', 'bdd2');
Comme dans phpMyAdmin 2.5.5, l'ordre à l'intérieur du tableau
est utilisé pour trier les bases de données dans le cadre de
gauche, de la sorte, vous pouvez ordonner vos bases de données comme
bon vous semble.
Si vous voulez avoir certaines bases de données en haut de page,
et
que peu importe l'ordre des autres bases, vous n'avez pas besoin de
spécifier toutes les autres bases. Utilisez :
$cfg['Servers'][$i]['only_db'] = array('bdd3', 'bdd4', '*');
plutôt que de dire à phpMyAdmin qu'il doit afficher bdd3 et
bdd4 en haut, et le reste en ordre alphabétique.
- $cfg['Servers'][$i]['hide_db']
chaîne
- Expression régulière pour masquer certaines bases. Ceci ne les
masque que pour le listage, l'utilisateur est toujours capable d'y
accéder (en utilisant par exemple la zone de requête SQL). Pour
limiter l'accès, utiliser le système de privilège de
MySQL.
Par exemple, pour masquer toutes les bases de données
commençant par la lettre « a », utilisez
$cfg['Servers'][$i]['hide_db'] = '^a';
et pour masquer les bases de données « db1 » et
« db2 », utilisez
$cfg['Servers'][$i]['hide_db'] = '(db1|db2)';
Vous pourrez trouver plus d'informations sur les expressions
régulières dans la section
syntaxe
de motif PCRE dans le manuel de référence de PHP.
- $cfg['Servers'][$i]['verbose'] chaîne
- Seulement utile si vous utilisez phpMyAdmin avec plusieurs
entrées de
serveurs. Si elle est définie, cette chaîne sera
affichée à la place du nom d'hôte dans le menu
déroulant de la page principale. Cela peut être utile si vous
ne voulez montrer que certaines bases de données sur votre
système,par exemple. Pour le mode d'authentification HTTP, tous les
caractères non-US-ASCII seront enlevés.
-
$cfg['Servers'][$i]['pmadb']
chaîne
- Définit le nom de la base de données contenant
l'infrastructure des tables liées.
Voir la section Infrastructure des
tables
liées dans ce document pour voir les avantages de cette
infrastructure, ainsi qu'une manière rapide de créer cette
base de données et les tables nécessaires.
Si vous êtes le seul utilisateur de cette installation
phpMyAdmin,
vous pouvez utiliser votre base de données courante pour stocker ces
tables spéciales; dans ce cas, mettez juste le nom de votre base de
données dans $cfg['Servers'][$i]['pmadb']. Pour une
installation multi-utilisateurs, renseigner ce paramètre avec le nom
de votre base de données centrale contenant l'infrastructure des
tables liées.
-
$cfg['Servers'][$i]['bookmarktable']
chaîne
- Depuis la version 2.2.0, phpMyAdmin permet aux utilisateurs la
mise en
signets (favoris) des requêtes. Cela peut être utile pour les
requêtes que vous utilisez souvent.
Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- saisir le nom de la table dans $cfg['Servers'][$i]['bookmarktable']
-
$cfg['Servers'][$i]['relation']
chaîne
- Since release 2.2.4 you can describe, in a special 'relation'
table, which
column is a key in another table (a foreign key). phpMyAdmin currently
uses
this to
- rendre cliquable, quand vous affichez la table maître,
les valeurs des
données qui pointent vers une table étrangère ;
- display in an optional tool-tip the "display column"
when browsing
the master table, if you move the mouse to a column containing a foreign
key
(use also the 'table_info' table);
(voir la section FAQ 6.7)
- in edit/insert mode, display a drop-down list of
possible foreign keys (key
value and "display column" are shown)
(voir la section FAQ 6.21)
- afficher les liens dans la page de propriétés de la
table,
pour vérifier l'intégrité référentielle
(affiche les clés étrangères manquantes) pour chaque
clé décrite;
- dans Query-by-example, créer des jointures automatiques
(voir la
section FAQ
6.6)
- vous permettre d'obtenir un schéma PDF de votre base de
données (utilise également la table table_coords).
Les clés peuvent être numériques ou
alphanumériques.
Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- mettre le nom de la table de relation dans
$cfg['Servers'][$i]['relation']
- now as normal user open phpMyAdmin and for each one of
your tables where you
want to use this feature, click "Structure/Relation view/" and
choose foreign columns.
Please note that in the current version, master_db must
be the same
as foreign_db. Those columns have been put in future
development of
the cross-db relations.
-
$cfg['Servers'][$i]['table_info']
chaîne
-
Since release 2.3.0 you can describe, in a special 'table_info'
table, which
column is to be displayed as a tool-tip when moving the cursor over the
corresponding key.
Cette variable de configuration détient le nom de cette table
spéciale. Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- mettre le nom de la table dans $cfg['Servers'][$i]['table_info']
- then for each table where you want to use this feature,
click
"Structure/Relation view/Choose column to display" to choose the
column.
Usage tip: Display column.
-
$cfg['Servers'][$i]['table_coords']
chaîne
$cfg['Servers'][$i]['pdf_pages']
chaîne
- Depuis la version 2.3.0, phpMyAdmin peut créer des pages PDF
montrant
les relations entre vos tables. Pour ce faire, il a besoin de deux
tables
« pdf_pages » (qui stocke les informations sur les
pages PDF disponibles) et « table_coords » (qui
stocke les coordonnées où chaque table sera placée sur
le schéma PDF
réalisé).
Vous devez utiliser la fonctionnalité
« relation ».
Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- mettre les noms corrects de tables dans
$cfg['Servers'][$i]['table_coords'] et
$cfg['Servers'][$i]['pdf_pages']
Astuce d'utilisation : Réalisation de PDF.
-
$cfg['Servers'][$i]['column_info']
chaîne
-
Depuis la version 2.3.0, vous pouvez stocker des commentaires pour
décrire chaque colonne de chaque table. Ils seront alors visibles
dans « Version imprimable ».
À partir de la version 2.5.0, les commentaires sont par
conséquent utilisés dans les pages de propriété
de table et dans la vue afficher la table, apparaissant sous forme
d'info-bulle au-dessus du nom de colonne (page propriétés) ou
intégrés dans l'en-tête de la vue parcours de table. Ils
peuvent aussi être vus dans un fichier d'exportation de
table. Veuillez consulter les directives de configuration adéquates
plus loin.
Also new in release 2.5.0 is a MIME-transformation system which
is also
based on the following table structure. See
Transformations for further information. To use the
MIME-transformation
system, your column_info table has to have the three new columns
'mimetype',
'transformation', 'transformation_options'.
Pour pouvoir utiliser cette fonctionnalité :
-
$cfg['Servers'][$i]['history']
chaîne
- Depuis la version 2.5.0, vous pouvez stocker votre historique SQL, ce qui signifie toutes
les
requêtes que vous saisissez manuellement dans l'interface de
phpMyAdmin. Si vous ne voulez pas utiliser un historique stocké dans
une table, vous pouvez choisir un historique utilisant JavaScript. En
utilisant JavaScript, toutes les entrées de votre historique seront
perdues en fermant la fenêtre.
En utilisant $cfg['QueryHistoryMax'],
vous pouvez spécifier
le nombre d'entrées de l'historique que vous voulez
conserver. À chaque connexion, cette liste est réduite au
nombre maximum d'entrées.
La requête historique n'est disponible que si JavaScript est
activé dans votre navigateur.
Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- mettre le nom de la table dans
$cfg['Servers'][$i]['history']
-
$cfg['Servers'][$i]['tracking']
chaîne
-
Depuis la version 3.3.x, un mécnisme de suivi est disponible. Il
vous aide à
suivretoutes 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é :
- pmadb et l'infrastructure des
tables liées
- mettre le nom de la table dans $cfg['Servers'][$i]['tracking']
-
$cfg['Servers'][$i]['tracking_version_auto_create']
boolean
-
Définit si le mécanisme de suivi crée des versions pour les
tables et les
vues automatiquement. La valeur par défaut est « false ».
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
une version pour vous automatiquement.
-
$cfg['Servers'][$i]['tracking_default_statements']
chaîne
-
Définit la liste des déclarations que le mécanisme
d'auto-création utilise
pour les nouvelles versions. La valeur par défaut est
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
-
$cfg['Servers'][$i]['tracking_add_drop_view']
boolean
-
Whether a DROP VIEW IF EXISTS statement will be added as first
line to the
log when creating a view. Default value is true.
-
$cfg['Servers'][$i]['tracking_add_drop_table']
boolean
-
Whether a DROP TABLE IF EXISTS statement will be added as first
line to the
log when creating a table. Default value is true.
-
$cfg['Servers'][$i]['tracking_add_drop_database']
boolean
-
Whether a DROP DATABASE IF EXISTS statement will be added as
first line to
the log when creating a database. Default value is true.
-
$cfg['Servers'][$i]['designer_coords']
chaîne
- Depuis la version 2.10.0, une interface Designer est
disponible ; elle
permet de gérer visuellement les relations.
Pour pouvoir utiliser cette fonctionnalité :
- pmadb et l'infrastructure des
tables liées
- ajoutez le nom de la table dans
$cfg['Servers'][$i]['designer_coords']
- $cfg['Servers'][$i]['verbose_check']
booléen
- Because release 2.5.0 introduced the new MIME-transformation
support, the
column_info table got enhanced with three new columns. If the above
variable
is set to TRUE (default) phpMyAdmin will check if you have the
latest table structure available. If not, it will emit a warning to the
superuser.
Vous pouvez désactiver cette fonctionalité en positionnant la
variable à FALSE, ce qui devrait améliorer les
performances.
Il est recommandé de la positionner à FALSE, quand
vous êtes sûr que votre structure est à jour.
- $cfg['Servers'][$i]['AllowRoot']
booléen
- Autoriser ou non un accès à la racine. Il s'agit seulement
d'un raccourci pour les règles AllowDeny ci-dessous.
- $cfg['Servers'][$i]['AllowNoPassword']
booléen
- 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']
chaîne
- Si votre règle « order » est vide, alors
l'authentification IP est
désactivée.
Si votre règle « order » est définie
à 'deny,allow' alors le système applique toutes les
règles « deny » puis les règles
« allow ». L'accès est autorisé par
défaut. Tout client qui ne répondrait pas à une
commande « deny » ou « allow »
sera autorisé à accéder au serveur.
Si votre règle « order » est définie
à 'allow,deny' alors le système applique toutes les
règles « allow » puis les règles
« deny ». L'accès est refusé par
défaut. Tout client qui ne répondrait pas à une
directive « allow » ou « deny »
se verra refuser l'accès au serveur.
Si votre règle « order » est définie
à 'explicit', l'authentification est réalisée de
manière similaire à la règle 'deny,allow', avec en plus
la restriction que la combinaison de votre hôte/nom d'utilisateur
doit être présente dans les règles
« allow », et pas dans les règles
« deny ». C'est le moyen le plus sûr
d'utiliser les règles allow/deny, et qui est employé pour
Apache pour spécifier les règles allow et deny sans
définir d'ordre.
Veuillez également consulter $cfg['TrustedProxies']
pout la
détection d'adresse IP derrière des proxies.
-
$cfg['Servers'][$i]['AllowDeny']['rules']
tableau de chaînes
- Le format général des règles est le suivant :
<'allow' | 'deny'><username> ['from'] <ipmask>
Si vous voulez que cela concerne tous les utilisateurs, il est
possible
d'utiliser un symbole '%' comme méta-caractère dans
le champ username.
Il y a quelques raccourcis que vous pouvez utiliser pour le
champ
ipmask (veuillez noter que les adressages ADDRESSE_SERVER
pourraient
ne pas être disponibles sur tous les serveurs Web) :
'Tout' -> 0.0.0.0/0
'Hôte local' -> 127.0.0.1/8
'Réseau local de classe A' -> ADDRESSE_SERVER/8
'Réseau local de classe B' -> ADDRESSE_SERVER/16
'Réseau local de classe C' -> ADDRESSE_SERVER/24
Avoir une liste de règles vide est équivalent à
l'utilisation de 'allow % from all' si l'ordre de votre
règle est définie à 'deny,allow' ou 'deny
% from all' si l'ordre de votre règle est définie
à 'allow,deny' ou 'explicit'.
Pour le système de concordance IP, ce qui suit fonctionne :
xxx.xxx.xxx.xxx (une adresse IP exacte)
xxx.xxx.xxx.[yyy-zzz] (une plage d'adresses IP)
xxx.xxx.xxx.xxx/nn (CIDR, adresses IP de type Classless Inter-Domain Routing -- routage
inter-domaine sans classe)
Mais ce qui suit ne fonctionne pas :
xxx.xxx.xxx.xx[yyy-zzz] (plage partielle d'adresses IP)
Les adresses IPv6 ne sont pas gérées non plus.
- $cfg['Servers'][$i]['DisableIS']
booléen
- 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. Actuellement utilisé dans certaines parties du code, more to
come.
- $cfg['Servers'][$i]['ShowDatabasesCommand']
chaîne
- Sur un serveur avec un très grand nombre de bases de données, la
commande
par défaut SHOW DATABASES utilisée pour récupérer le nom des
bases
de données sera probablement très lente, elle peut donc être remplacée
par
des commandes plus rapides (voir libraries/config.default.php
pour
des exemples).
- $cfg['Servers'][$i]['CountTables']
booléen
- Définit s'il faut compter le nombre de tables pour chaque base
de données
lors de la préparation de la liste des bases de données pour la
navigation
dans le cadre.
- $cfg['Servers'][$i]['SignonSession']
chaîne
- Nom de la session qui sera utilisée pour le mode
d'authentification
'signon'.
- $cfg['Servers'][$i]['SignonURL']
chaîne
- URL où sera redirigé l'utilisateur pour se connecter avec le
mode d'authentification 'signon'. Doit être absolue et inclure le
protocole.
- $cfg['Servers'][$i]['LogoutURL']
chaîne
- URL où sera redirigé l'utilisateur après la
déconnexion (ceci n'affecte pas la mode d'authentification
'config'). Doit être absolue et inclure le protocole.
- $cfg['ServerDefault'] entier
- Si vous avez plus d'un serveur, vous pouvez définir
$cfg['ServerDefault'] sur n'importe lequel d'entre eux pour
s'auto-connecter sur celui-ci quand phpMyAdmin est démarré, ou
le définir à 0 sur tous les serveurs pour avoir une liste de
serveurs auxquels se connecter.
Si vous n'avez qu'un seul serveur, $cfg['ServerDefault']
DOIT
être défini sur ce serveur.
- $cfg['MaxDbList'] entier
- Le nombre maximum de noms de bases de données à afficher dans
le cadre de navigation et dans la liste des bases de données.
- $cfg['MaxTableList'] entier
- Le nombre maximum de noms de tables à afficher dans la liste du
panneau principal. Cette limite est aussi appliquée dans le panneau
de navigation en mode allégé.
- $cfg['MaxCharactersInDisplayedSQL']
entier
- Le nombre maximum de caractères d'une requête SQL à
afficher. La limite par défaut de 1000 devrait être correcte
pour éviter l'affichage de tonnes de code hexadécimal
représentant des BLOB, mais certains utilisateurs ont de vraies
requêtes SQL qui dépassent 1000 caractères. Également,
si la longueur d'une requête excède cette limite, la requête n'est pas
conservée dans l'historique.
- $cfg['OBGzip'] chaîne/booléen
- Définit si l'on utilise la mise en cache des sorties (output
buffering) GZip pour accroître la vitesse des transferts HTTP.
Mettre à true/false pour activer/désactiver. Quand
défini sur 'auto' (chaîne), phpMyAdmin essaie d'activer la mise
en cache des sorties et la désactivera automatiquement si votre
navigateur a des problèmes avec la mise en cache. IE6, avec un
certain correctif, est connu pour provoquer une corruption de données
en ayant la mise en cache activée.
- $cfg['PersistentConnections']
booléen
- Définit si les connexions persistantes doivent être
utilisées (mysql_connect ou mysql_pconnect).
- $cfg['ForceSSL'] booléen
- Pour forcer ou pas l'utilisation de https lors de l'accès à
phpMyAdmin.
- $cfg['ExecTimeLimit'] entier ['nombre de
secondes']
- Définit le nombre de secondes allouées à un script pour
s'exécuter. Si le nombre de secondes est défini à
zéro, aucune limite de temps n'est imposée.
Ce paramètre est utilisé lors de l'importation/exportation de
fichiers dump et dans la fonctionnalité de synchronisation mais n'a
aucun
effet lorsque PHP est exécuté en mode sécurisé.
- $cfg['SessionSavePath'] chaîne
- Chemin de stockage des données de session (paramètre PHP
session_save_path).
- $cfg['MemoryLimit'] entier ['nombre
d'octets']
- Définit le nombre d'octets qu'un script est autorisé à
allouer. Si ce nombre est défini à zéro, aucune limite
n'est imposée.
Ce paramètre est utilisé lors de l'importation/exportation de
fichiers dump et dans d'autres fonctions de phpMyAdmin, 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'] booléen
- Marque les tables utilisées et permet de montrer les bases de
données avec des tables verrouillées (depuis la version MySQL
3.23.30).
- $cfg['ShowSQL'] booléen
- Définit si les requêtes SQL générées par phpMyAdmin doivent
être affichées.
- $cfg['AllowUserDropDatabase']
booléen
- Définit si les utilisateurs lamda (non administrateur) sont
autorisés à supprimer leur propre base de données. S'il
est défini à FALSE, le lien « Supprimer la
base ... » ne sera pas visible, et même la commande
« DROP DATABASE ma_base_de_donnees » sera
rejetée. Très pratique pour un FAI avec beaucoup de clients.
Veuillez noter que cette limitation des requêtes SQL n'est pas aussi stricte en
utilisant les privilèges MySQL. Cela est dû à la nature
des requêtes SQL qui
peuvent être très compliquées. Aussi, ce choix doit
être vu comme une aide pour éviter une suppression accidentelle
plutôt qu'une limitation de privilèges stricte.
- $cfg['Confirm'] booléen
- Définit si un avertissement (« Êtes-vous vraiment
sûr... ») doit être affiché quand vous
êtes sur le point de perdre des données.
- $cfg['LoginCookieRecall'] booléen
- Définit si le compte de connexion précédent doit
être rappelé en mode d'authentification par cookie.
Ceci est automatiquement désactivé si vous n'avez pas configuré $cfg['blowfish_secret'].
- $cfg['LoginCookieValidity'] entier
['nombre de secondes']
- Définit la durée de validité d'un cookie de
connexion. Veuillez notez que l'option de configuration php session.gc_maxlifetime
pourrait limiter la validité de session, et si la session est perdue, le
cookie de connexion est aussi invalidé. Il est donc conseillé de définir
session.gc_maxlifetime au moins aussi haut que la valeur de
$cfg['LoginCookieValidity'].
- $cfg['LoginCookieStore'] entier
['nombre de secondes']
- Définit la durée de stockage d'un cookie de connexion dans
votre navigateur. Par défaut, 0 signifie qu'il sera conservé
pour la session en cours. Ceci est recommandé pour les environnements
non sécurisés.
- $cfg['LoginCookieDeleteAll']
booléen
- Si activé (par défaut), la déconnexion supprime les
cookies pour tous les serveurs, sinon seulement pour le serveur en
cours. Définir ce paramètre à false permet
d'oublier plus facilement de se déconnecter des autres des autres
serveurs quand vous en utilisez plusieurs.
- $cfg['UseDbSearch'] booléen
- Définit si « rechercher une chaîne dans la base de
données » est activé.
- $cfg['IgnoreMultiSubmitErrors']
booléen
- Définit si phpMyAdmin continuera à exécuter une
requête multiple si l'une d'elles échoue. Par défaut,
l'exécution de la requête multiple sera arrêtée.
- $cfg['VerboseMultiSubmit'] booléen
- Définit si phpMyAdmin affichera les résultats de chaque
requête d'une requête multiple intégrés dans le
fichier journal SQL en tant que commentaires
insérés. Défini par défaut à
TRUE.
-
$cfg['AllowArbitraryServer']
booléen
- Si ce paramètre est activé, il vous permet de vous connecter
à des serveurs arbitraires en utilisant l'authentification par
cookie.
REMARQUE : Veuillez utiliser ce paramètre avec
précaution, car il peut permettre aux utilisateurs d'accéder
aux serveurs MySQL placés derrière votre pare-feu où
votre serveur HTTP est
situé.
- $cfg['Error_Handler']['display']
boolean
- Whether to display errors from PHP or not.
- $cfg['Error_Handler']['gather']
boolean
- Whether to gather errors from PHP or not.
- $cfg['LeftFrameLight'] booléen
- Définit si on utilise un menu construit par sélection et si on
affiche seulement les tables en cours dans le cadre de gauche (page plus
réduite). Vous ne pouvez utiliser la fonctionnalité
d'affichage des dossiers imbriqués en utilisant $cfg['LeftFrameTableSeparator']
qu'en mode non
allégé.
- $cfg['LeftFrameDBTree'] booléen
- En mode allégé, définit si l'affichage des noms de
bases de données (dans le sélecteur) se fait en utilisant un
arbre, voir également $cfg['LeftFrameDBSeparator'].
- $cfg['LeftFrameDBSeparator']
chaîne ou tableau
- La chaîne est utilisée pour séparer les parties du nom
de la base de données lors de leur affichage dans un
arbre. Alternativement, vous pouvez spécifier plus de chaînes dans un
tableau, et toutes seront utilisées comme séparateur.
- $cfg['LeftFrameTableSeparator']
chaîne
- Définit une chaîne à utiliser pour les espaces de table
imbriquée. Défini par défaut à '__'. Ceci
signifie que si vous avez des tables telles que
'première__seconde__troisième' elles seront affichées
comme une hiérarchie à trois niveaux telle que : premier
> seconde > troisième. Si défini à FALSE
ou vide, la fonctionnalité est
désactivée. REMARQUE : vous ne devez pas utiliser ce
séparateur dans un nom de table comme préfixe ou suffixe, ou
plusieurs fois consécutivement à l'intérieur du nom de
la table.
- $cfg['LeftFrameTableLevel'] chaîne
- Définit le nombre de sous-niveaux qui doivent être
affichés quand les tables sont subdivisées par le
séparateur ci-dessus.
- $cfg['ShowTooltip'] booléen
- Définit si un commentaire de table est affiché comme
info-bulle dans le cadre de gauche.
- $cfg['ShowTooltipAliasDB'] booléen
- Si les info-bulles sont activées et qu'un commentaire de base de
données est défini, cela affichera le commentaire et le nom
réel de la table. Cela signifie que si vous avez une table
appelée 'user0001' et que vous y ajoutiez le commentaire 'MonNom',
vous verrez donc le nom 'MonNom' utilisé dans le cadre de gauche et
l'info-bulle affichera le vrai nom de la base de données.
- $cfg['ShowTooltipAliasTB'] booléen
- Identique à $cfg['ShowTooltipAliasDB'],
sauf qu'il fonctionne
pour les noms de tables. Quand il est défini à 'nested',
l'alias du nom de table est seulement utilisé pour diviser/imbriquer
les tables selon la directive $cfg['LeftFrameTableSeparator']. Donc, seul le
dossier est appelé comme l'alias, le nom de la table elle-même
demeure le vrai nom de la table.
- $cfg['LeftDisplayLogo'] booléen
- Définit si le logo de phpMyAdmin est affiché en haut, dans le
cadre de gauche. Défini par défaut à TRUE.
- $cfg['LeftLogoLink'] chaîne
- Saisissez l'URL vers laquelle le logo du panneau de gauche
pointera. À utiliser notamment pour les thèmes
personnalisés qui changent cela. La valeur par défaut pour
cela est main.php.
- $cfg['LeftLogoLinkWindow'] chaêne
- Définit si la page liée doit s'ouvrir dans la fenêtre
principale (main) ou dans une nouvelle fenêtre
(new). Note : utilisez new si vous êtes
lié à phpmyadmin.net.
- $cfg['LeftDisplayServers'] booléen
- Définit si un choix de serveur est proposé en haut, dans le
cadre de gauche. Défini par défaut à FALSE.
- $cfg['LeftDefaultTabTable'] chaîne
- Définit l'onglet affiché par défaut en cliquant sur la
petite icône à côté de chaque nom de table dans le
panneau de navigation. Les valeurs possibles sont :
« tbl_structure.php »,
« tbl_sql.php »,
« tbl_select.php »,
« tbl_change.php » ou
« sql.php ».
- $cfg['DisplayServersList'] booléen
- Définit si ce choix de serveur est affiché sous forme de liens
ou de liste déroulante. Défini par défaut à
FALSE (liste déroulante).
- $cfg['DisplayDatabasesList']
booléen ou texte
- Définit si le choix de base de données dans le cadre de
navigation allégée doit être affiché sous forme
de liens plutôt que sous forme de liste déroulante. Par
défaut à 'auto' - sur la page principale où est
affichée la liste, quand la base de données est
sélectionnée, seule la liste déroulante est
affichée.
- $cfg['ShowStats'] booléen
- Définit si on affiche l'espace disque utilisé et les
statistiques sur les bases de données et les tables.
Les statistiques nécessitent au moins la version 3.23.3 de MySQL
3.23.3 et, à ce jour, MySQL ne fournit pas de telles informations
pour les tables de base de données Berkeley.
- $cfg['ShowServerInfo'] booléen
- Définit si l'affichage des informations détaillées sur
le serveur doit se faire sur la page principale. Vous pouvez aussi
masquer
plus d'informations en utilisant $cfg['Servers'][$i]['verbose'].
- $cfg['ShowPhpInfo'] booléen
$cfg['ShowChgPassword']
booléen
$cfg['ShowCreateDb'] booléen
- Définit si on affiche les liens « Afficher les
informations relatives à PHP » et « Modifier le
mot de passe » ou le formulaire de crétion de base de
données dans le cadre principal (de droite) de démarrage. Ce
paramètre ne vérifie pas les commandes MySQL entrées
directement.
Veuillez noter que pour empêcher l'utilisation de phpinfo() dans
les
scripts, vous devez mettre ceci dans votre fichier php.ini :
disable_functions = phpinfo()
Veuillez également noter qu'activer le lien « Modifier le
mot de passe » n'a pas d'effet utilisé avec le mode
d'authentification « config »: parce que le mot de
passe est codé dans le fichier de configuration, les utilisateurs
finaux ne sont pas autorisés à changer leur mot de passe.
- $cfg['SuggestDBName'] booléen
- Définit si un nom de base de données doit être
suggéré dans le formulaire « Créer une base
de données » ou si le champ est laissé vide.
- $cfg['NavigationBarIconic'] chaîne
- Définit si les boutons de la barre de navigation et le menu
supérieur du panneau de droite affichent le texte ou les icônes
seulement. La valeur TRUE affiche les icônes, FALSE affiche seulement
le texte et 'both' affiche le texte et les icônes.
- $cfg['ShowAll'] booléen
- Définit si un utilisateur peut avoir un bouton « Tout
afficher » en mode « Afficher ».
- $cfg['MaxRows'] entier
- Nombre de colonnes affichées lors de la navigation sur un
ensemble de
résultats. Si le nombre des colonnes est supérieur, des liens
« Suivant » et
« Précédent » seront affichés.
- $cfg['Order'] chaîne ['DESC|ASC|SMART']
- Defines whether columns are displayed in ascending (ASC)
order, in
descending (DESC) order or in a "smart" (SMART)
order - I.E. descending order for columns of type TIME, DATE, DATETIME
and
TIMESTAMP, ascending order else- by default.
- $cfg['DisplayBinaryAsHex'] booléen
- Définit si l'option de navigation « Montrer le contenu
binaire en
hexadécimal » est coché par défaut.
- $cfg['ProtectBinary'] booléen ou chaîne
- Defines whether BLOB or BINARY columns are
protected from
editing when browsing a table's content. Valid values are:
- FALSE to allow editing of all columns ;
- 'blob' to allow editing of all columns except BLOBS ;
- 'all' to disallow editing of all BINARY
or BLOB
columns.
- $cfg['ShowFunctionFields'] booléen
- Définit si les champs des fonctions MySQL doivent être
affichés en mode modification/insertion. Depuis la version 2.10,
l'utilisateur peut changer ce paramètre à partir de
l'interface.
- $cfg['ShowFieldTypesInDataEditView']
boolean
- Defines whether or not type fields should be initially displayed
in
edit/insert mode. The user can toggle this setting from the interface.
- $cfg['CharEditing'] chaîne
- Defines which type of editing controls should be used for CHAR
and VARCHAR
columns. Possible values are:
- input - this allows to limit size of text to size of
columns in MySQL, but
has problems with newlines in columns
- textarea - no problems with newlines in columns, but
also no length
limitations
Par défaut, l'ancien comportement est utilisé,
c'est-à-dire input.
- $cfg['InsertRows'] entier
- Définit le nombre maximum d'entrées simultanées pour la
page Insertion.
- $cfg['ForeignKeyMaxLimit'] entier
- S'il y a moins d'éléments que ce nombre dans le jeu de
clés étrangères, alors un menu déroulant des
clés étrangères est proposé, avec le style
décrit dans le paramètre $cfg['ForeignKeyDropdownOrder'].
- $cfg['ForeignKeyDropdownOrder']
tableau
- Il y a plusieurs méthodes d'affichage pour les champs du menu
déroulant des clés étrangères, proposant la
clé et sa valeur. Le tableau doit contenir une ou les deux valeurs
suivantes : 'content-id', 'id-content'.
- $cfg['ZipDump'] booléen
$cfg['GZipDump'] booléen
$cfg['BZipDump'] booléen
- Définit si on utilise la compression zip/GZip/BZip2 lors de la
création de fichiers d'exportation.
- $cfg['CompressOnFly']
booléen
- Définit si on autorise la compression à la volée pour
des exportations au formats GZip/BZip2. Ceci n'affecte pas les plus
petites
exportations et permet aux utilisateurs d'en créer de plus grandes,
qui sans cela, ne tiendraient pas en mémoire, à cause de la
limitation mémoire de php. Produit des fichiers contenant plus
d'en-têtes GZip/BZip2, mais tous les programmes courants les
manipulent correctement.
- $cfg['LightTabs'] chaîne
- Si défini à TRUE, utilise des onglets graphiquement
moins consommateurs pour l'unité centrale.
- $cfg['PropertiesIconic'] chaîne
- Si défini à TRUE, affichera des icônes au lieu
d'un texte pour les liens de propriétés des bases de
données et des tables (comme 'Afficher', 'Sélectionner',
'Insérer', ...).
Peut être paramétré à 'both' si vous
voulez les icônes et le texte.
Quand il est défini à FALSE, n'affiche que le texte.
- $cfg['PropertiesNumColumns']
entier
- Définit le nombre de colonnes qui seront utilisées pour
afficher les tables dans la vue propriété de la base de
données. Par défaut, une colonne. En définissant cette
variable à une valeur supérieure à un, le type de la
base de données sera omis pour offrir plus de place pour l'affichage.
- $cfg['DefaultTabServer'] chaîne
- Définit l'onglet affiché par défaut dans la vue
serveur. Les valeurs autorisées sont :
« main.php » (recommandé pour les
configurations multi-utilisateurs),
« server_databases.php »,
« server_status.php »,
« server_variables.php »,
« server_privileges.php » ou
« server_processlist.php ».
- $cfg['DefaultTabDatabase'] chaîne
- Définit l'onglet affiché par défaut pour la vue base de
données. Les valeurs autorisées sont :
« db_structure.php »,
« db_sql.php » ou
« db_search.php ».
- $cfg['DefaultTabTable'] chaîne
- Définit l'onglet affiché par défaut dans la vue
table. Les valeurs autorisées sont :
« tbl_structure.php »,
« tbl_sql.php »,
« tbl_select.php »,
« tbl_change.php » ou
« sql.php ».
- $cfg['MySQLManualBase'] chaîne
- Si défini sur une URL
qui pointe vers la documentation de MySQL (le type dépend de $cfg['MySQLManualType']),
les
liens d'aide appropriés sont générés.
Voir la Page de
documentation MySQL
pour plus de renseignements sur les manuels de MySQL et leurs types.
- $cfg['MySQLManualType'] chaîne
- Type de documentation MySQL :
- viewable - « consultable en ligne », utilisé
actuellement sur le site Web de MySQL
- searchable - « Recherche, avec commentaires des
utilisateurs »
- chapters - « HTML, une page par chapitre »
- big - « HTML, tout dans une seule page »
- none - ne montre pas les liens de documentation
- $cfg['DefaultLang'] chaîne
- Définit la langue par défaut à utiliser, si ce n'est
pas le cas, la configuration du navigateur ou celle de l'utilisateur
sera
utilisée.
The corresponding language file needs to be in
locale/code/LC_MESSAGES/phpmyadmin.mo.
- $cfg['DefaultConnectionCollation']
chaîne
- Définit la connexion par défaut à utiliser si elle
n'est pas définie par l'utilisateur.
Consultez la documentation
MySQL pour obtenir une liste des valeurs possibles.
- $cfg['Lang'] chaîne
- Force language to use.
The corresponding language file needs to be in
locale/code/LC_MESSAGES/phpmyadmin.mo.
- $cfg['FilterLanguages'] chaîne
- Limite la liste des langues disponibles à celle concordant à
une expression régulière donnée. Par exemple, si vous
ne voulez que le tchèque et l'anglais, vous devrez définir le
filtre suivant :
'^(cs|en)'.
- $cfg['DefaultCharset'] chaîne
- Page de code utilisée pour le recodage des requêtes MySQL. Ceci
doit être activé et est décrit par l'option $cfg['AllowAnywhereRecoding'].
Vous pouvez donner ici n'importe quelle page de code se trouvant
dans le
tableau $cfg['AvailableCharsets']
et il s'agit seulement du
choix par défaut, l'utilisateur peut choisir n'importe laquelle
d'entre elles.
- $cfg['AllowAnywhereRecoding']
booléen
- Permet le recodage de la page de code des requêtes MySQL. Vous
avez
besoin de la prise en charge de recode ou iconv (compilés ou en tant
que modules) dans PHP pour permettre le recodage des requêtes MySQL et
le fichier de langue utilisée doit avoir cette option activée
(par défaut, seulement celles qui sont en Unicode, pour éviter
de perdre des caractères).
En définissant cette valeur à TRUE, cela active
également un menu déroulant dans la page
« Export », pour choisir le jeu de caractères
utilisé pour l'export d'un fichier. La valeur par défaut dans ce menu
provient de $cfg['Export']['charset'] et
$cfg['Import']['charset'].
- $cfg['RecodingEngine'] chaîne
- Pour pouvez choisir ici quelles fonctions seront utilisées pour
la
conversion de page de code. Les valeurs autorisées sont :
- 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.
Par défaut à auto.
- Spécifie des paramètres pour iconv utilisés dans la
conversion de page de code. Voir la documentation
iconv pour plus de renseignements. Par défaut
//TRANSLIT est utilisé de sorte que les
caractères invalides soient substitués.
- $cfg['AvailableCharsets'] tableau
- Pages de code disponibles pour la conversion MySQL. Vous pouvez
ajouter la
vôtre (n'importe laquelle prise en charge par recode/iconv) ou
supprimer celle dont vous ne vous servez pas. Les pages de code seront
affichées dans le même ordre que celui défini ici;
aussi, si vous en utilisez fréquemment quelques-unes, faites les
figurer en début de tableau.
- $cfg['TrustedProxies'] tableau
- Liste les proxies et les en-têtes HTTP qui sont sûrs pour IP Allow/Deny. Cette liste est vide
par
défaut. Vous devez renseigner des serveurs proxy de confiance si vous
voulez utiliser des règles pour les adresses IP derrière un
proxy.
L'exemple suivant spécifie que phpMyAdmin doit faire confiance
à un en-tête HTTP_X_FORWARDED_FOR (X-Forwarded-For)
provenant du proxy 1.2.3.4 :
$cfg['TrustedProxies'] =
array('1.2.3.4' => 'HTTP_X_FORWARDED_FOR');
La directive $cfg['Servers'][$i]['AllowDeny']['rules'] utilise
l'adresse IP
du client comme d'habitude.
- $cfg['GD2Available'] chaîne
- Spécifie si GD est disponible en version 2 ou ultérieure. Si
c'est le cas, il peut être utilisé pour les transformations
MIME.
Les valeurs autorisées sont :
- auto - détection automatique, qui est une opération
consommatrice pour les versions de php antérieures à la 4.3.0;
aussi, il est préférable de changer ce paramètre en
fonction des possibilités réelles de votre serveur,
- yes - les fonctions GD 2 peuvent être utilisées,
- no - les fonctions GD 2 ne peuvent pas être utilisées.
Par défaut à auto.
- $cfg['CheckConfigurationPermissions']
booléen
-
Nous vérifions normalement les permissions sur le fichier de
configuration
pour nous assurer qu'il n'est pas accessible en écriture pour tout le
monde. Cependant, phpMyAdmin pourrait être installé sur un système de
fichiers NTFS monté sur un serveur non-Windows, auquel cas les
permissions
semblent erronées mais elles ne peuvent en fait pas être détectées. Dans
ce
cas, un administrateur système voudrait définir ce paramètre à
FALSE. Par dafut, il est défini à TRUE.
- $cfg['LinkLengthLimit'] entier
-
Limite de la longueur 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
problemes avec les URL longues. La valeur par défaut est
1000.
- $cfg['NaviWidth'] entier
- Largeur du cadre de navigation en pixels. Voir
themes/themename/layout.inc.php.
- $cfg['NaviBackground']
chaîne
['code css valide pour l'arrière-plan']
$cfg['MainBackground']
chaîne
['code css valide pour l'arrière-plan']
- Les styles d'arrière-plan utilisés pour les deux cadres. Voir
themes/themename/layout.inc.php.
- $cfg['NaviPointerBackground']
chaîne ['code css valide pour
l'arrière-plan']
$cfg['NaviPointerColor']
string
['couleur css valide']
- Le style utilisé pour le pointeur dans le cadre de navigation.
Voir
themes/themename/layout.inc.php.
- $cfg['NaviDatabaseNameColor']
chaîne [code css valide]
- La couleur utilisée pour le nom de la base de données dans le
cadre de navigation. Voir themes/themename/layout.inc.php.
- $cfg['LeftPointerEnable'] booléen
- Une valeur à TRUE active le pointeur de navigation
(quand
LeftFrameLight est à FALSE).
- $cfg['Border'] entier
- Taille de la bordure d'une table. Voir
themes/themename/layout.inc.php.
- $cfg['ThBackground'] chaîne ['code css
valide pour
l'arrière-plan']
$cfg['ThColor'] chaîne ['couleur
css
valide']
- Le style utilisé pour les en-têtes de table. Voir
themes/themename/layout.inc.php.
- $cfg['BgOne'] chaîne ['couleur HTML']
- La couleur (HTML) numéro 1 pour les premiers enregistrements de
table. Voir themes/themename/layout.inc.php.
- $cfg['BgTwo'] chaîne ['couleur HTML']
- La couleur (HTML) numéro 2 pour les seconds enregistrements de
table. Voir themes/themename/layout.inc.php.
- $cfg['BrowsePointerBackground']
chaîne ['couleur HTML']
$cfg['BrowsePointerColor']
chaîne ['couleur HTML']
$cfg['BrowseMarkerBackground']
chaîne ['couleur HTML']
$cfg['BrowseMarkerColor']
chaîne ['couleur HTML']
- Les couleurs (HTML) utilisées pour le pointeur et le marqueur en
mode
affichage.
La première met en surbrillance l'enregistrement sur lequel
passe
votre souris et la dernière vous permet de marquer/démarquer
les enregistrements en cliquant dessus.
Voir themes/themename/layout.inc.php.
- $cfg['FontFamily'] chaîne
- Mettre ici la valeur pour une famille de polices valide CSS, par
exemple
arial, sans-serif.
Voir themes/themename/layout.inc.php.
- $cfg['FontFamilyFixed'] chaîne
- Mettre ici la valeur pour une famille de polices valide CSS, par
exemple
monospace. Celle-ci est utilisée pour les zone de texte
(textarea).
Voir themes/themename/layout.inc.php.
- $cfg['BrowsePointerEnable'] booléen
- Activation ou désactivation du pointeur de navigation.
- $cfg['BrowseMarkerEnable'] booléen
- Activation ou désactivation du marqueur de navigation.
- $cfg['TextareaCols'] entier
$cfg['TextareaRows'] entier
$cfg['CharTextareaCols']
entier
$cfg['CharTextareaRows']
entier
- Nombre de colonnes et d'enregsitrements pour les zones de texte.
Cette valeur sera multipliée par 2 pour les zones de texte de
requête SQL et par 1,25
pour les zones de texte SQL
à l'intérieur de la fenêtre de requête.
Les valeurs Char* sont utilisées pour l'édition de CHAR et
VARCHAR (si configurées dans $cfg['CharEditing']).
- $cfg['LongtextDoubleTextarea']
booléen
- Defines whether textarea for LONGTEXT columns should have double
size.
- $cfg['TextareaAutoSelect']
booléen
- Définit si toute la surface de la zone de texte de la boîte de
requête sera sélectionnée en cliquant dessus.
-
$cfg['CtrlArrowsMoving']
booléen
- Permet le déplacement entre les champs à l'aide de Ctrl +
flèches de direction (Option + flèches de direction dans
Safari) lors de l'édition.
- $cfg['LimitChars'] entier
- Maximum number of characters showen in any non-numeric column on
browse
view. Can be turned off by a toggle button on the browse page.
- $cfg['ModifyDeleteAtLeft']
booléen $cfg['ModifyDeleteAtRight']
booléen
- Définit l'endroit où les liens modifier et supprimer seront
affichés quand le contenu des tables est affichée (vous pouvez
les voir affichés à la fois à gauche et à
droite). « Gauche » et
« droite » sont traduits par
« haut » et « bas » en mode
d'affichage vertical.
- $cfg['DefaultDisplay'] string
- There are 3 display modes: horizontal, horizontalflipped and
vertical.
Define which one is displayed by default. The first mode displays each
row
on a horizontal line, the second rotates the headers by 90 degrees, so
you
can use descriptive headers even though columns only contain small
values
and still print them out. The vertical mode sorts each row on a vertical
lineup.
-
The HeaderFlipType can be set to 'auto', 'css' or 'fake'. When
using 'css'
the rotation of the header for horizontalflipped is done via CSS. The
CSS
transformation currently works only in Internet Explorer.If set to
'fake'
PHP does the transformation for you, but of course this does not look as
good as CSS. The 'auto' option enables CSS transformation when browser
supports it and use PHP based one otherwise.
-
$cfg['DefaultPropDisplay']
chaîne ou entier
- When editing/creating new columns in a table all fields normally
get lined
up one field a line. (default: 'horizontal'). If you set this to
'vertical'
you can have each field lined up vertically beneath each other. You can
save
up a lot of place on the horizontal direction and no longer have to
scroll. If you set this to integer, editing of fewer columns will appear
in
'vertical' mode, while editing of more columns still in 'horizontal'
mode. This way you can still effectively edit large number of columns,
while
having full view on few of them.
- By setting the corresponding variable to TRUE you can
enable the
display of column comments in Browse or Property display. In browse
mode,
the comments are shown inside the header. In property mode, comments are
displayed using a CSS-formatted dashed-line below the name of the
column. The comment is shown as a tool-tip for that column.
- $cfg['SQLQuery']['Edit'] booléen
- Définit l'affichage d'un lien pour modifier une requête dans
toute boîte SQL Query.
- $cfg['SQLQuery']['Explain'] booléen
- Définit l'affichage d'un lien pour expliquer une requête SELECT
dans toute boîte SQL Query.
- $cfg['SQLQuery']['ShowAsPHP']
booléen
- Définit l'affichage d'un lien pour incorporer une requête dans
du code PHP dans toute boîte SQL Query.
- $cfg['SQLQuery']['Validate'] booléen
- Définit l'affichage d'un lien pour valider une requête dans
toute boîte SQL Query. Voir également $cfg_SQLValidator.
- $cfg['SQLQuery']['Refresh'] booléen
- Définit l'affichage d'un lien pour actualiser une requête dans
toute boîte SQL Query.
- $cfg['UploadDir'] chaîne
-
Le nom du répertoire où les fichiers SQL ont été transférés
autrement qu'avec phpMyAdmin (ftp, par exemple). Ces fichiers sont
disponibles sous forme d'une liste déroulante quand vous cliquez sur
le nom d'une base de données ou d'une table, puis l'onglet Import.
Si vous voulez un répertoire différent pour chaque
utilisateur, %u sera remplacé par le nom d'utilisateur.
Veuillez noter que le nom des fichiers doit avoir le suffixe
« .sql » (ou « .sql.bz2 » ou
« .sql.gz » si la gestion des formats
compressés est activée).
Cette fonctionnalité est utile quand votre fichier est trop gros
pour
être transféré en HTTP, ou quand les transferts de fichiers sont
désactivés dans PHP.
Veuillez noter également que si PHP est exécuté en mode
sécurisé, ce répertoire doit appartenir au même
utilisateur que le propriétaire des scripts.
Voir aussi la section FAQ 1.16 pour des alternatives.
- $cfg['SaveDir'] chaîne
-
Le nom du répertoire où les fichiers d'exportation peuvent
être sauvegardés.
Si vous voulez un répertoire différent pour chaque
utilisateur, %u sera remplacé par le nom d'utilisateur.
Veuillez noter que le répertoire doit être accessible en
écriture à l'utilisateur du serveur Web.
Veuillez noter également que si PHP est exécuté en mode
sécurisé, ce répertoire doit appartenir au même
utilisateur que le propriétaire des scripts.
- $cfg['TempDir'] chaîne
-
Le nom du répertoire où les fichiers temporaires peuvent
être stockés.
Ceci est nécessaire pour l'exportation au format natif MS Excel,
voir
la section FAQ
6.23 et pour contourner les limitations de open_basedir
pour
les fichiers téléchargés, consulter la FAQ1.11.
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 le serveur Web. Cependant, pour des raisons de
sécurité, ce répertoire doit se situer en dehors de l'arbre publié par
le
serveur Web. Si vous ne pouvez pas éviter que ce répertoire soit publié
par
le serveur Web, placez-y au moins un fichier index.html vide,
de
sorte d'empêcher le listage du répertoire.
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 uen configuration similaire en utilisant une LCA :
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 rendre le répertoire chmod 777, mais cela
pourraient
imposer des risques de sécurité aux autres utilisateurs du système qui
lisent et écrivent des données dans ce répertoire.
- $cfg['Export'] tableau
-
Dans ce tableau sont définis les paramètres par défaut
pour les fichiers d'exportation; les noms des items sont similaires aux
textes vus dans la page d'exportation, de la sorte vous pouvez
facilement
identifier ce qu'ils signifient.
- $cfg['Import'] tableau
-
Dans ce tableau sont définis les paramètres par défaut
pour l'importation. Les noms des éléments sont similaires aux
textes affichés dans la page d'importation, de sorte que vous pouvez
facilement identifier ce qu'ils signifient.
- $cfg['RepeatCells'] entier
-
Répète les en-têtes toutes les X cellules, ou 0 pour
désactiver.
- $cfg['EditInWindows'] booléen
$cfg['QueryWindowWidth']
entier
$cfg['QueryWindowHeight']
entier
$cfg['QueryHistoryDB']
booléen
$cfg['QueryWindowDefTab']
chaîne
$cfg['QueryHistoryMax']
entier
-
Toutes ces variables affectent la nouvelle fenêtre/cadre de
requête. Quand Un lien ou une icône SQL est toujours affiché dans le panneau
de gauche. Si JavaScript est activé dans votre navigateur, cliquer
dessus provoque l'ouverture de la boîte de requête, une
interface directe pour saisir les requêtes SQL.
La taille de la fenêtre de requête peut être personnalisée avec
$cfg['QueryWindowWidth'] et $cfg['QueryWindowHeight'] - les deux
paramètres
sont des entiers exprimant la taille en pixels. Veuillez noter que
normalement, ces paramètres seront modifiés dans layout.inc.php
pour le thème que vous utilisez.
Si $cfg['EditInWindows'] est défini à TRUE,
cliquer sur ['Modifier'] à partir de la page des résultats
(dans la section « Affichage des enregistrements »)
ouvre la fenêtre de requête et y met la requête en
cours. S'il est défini à FALSE, cliquer sur le lien
met la requête SQL dans
la boîte de requête du panneau droit.
L'utilisation, de la fenêtre de requête JavaScript est
recommandée si vous avez un navigateur gérant le
JavaScript. Les fonctions de bases sont utilisées pour
échanger quelques variables, aussi, la plupart des navigateurs de
4ème génération doivent être capables d'utiliser
cette fonctionnalité. Actuellement, cela a été
seulement testé avec Internet Explorer 6 et Mozilla 1.x.
Si $cfg['QueryHistoryDB'] est défini à TRUE,
toutes vos requêtes sont journalisées dans une table, que vous
devez créer (voir $cfg['Servers'][$i]['history']).
Si il est
défini à FALSE, toutes vos requêtes seront
ajoutées au formulaire, mais elles seront sauvegardées
seulement tant que votre fenêtre est ouverte.
En utilisant la fenêtre de requête basée sur JavaScript,
elle sera toujours mise à jour quand vous cliquez sur une nouvelle
table/base de données à afficher et se réduira si vous
cliquez sur « Modifier SQL » après avoir utilisé une
requête. Vous pouvez supprimer la mise à jour de la
fenêtre de requête en cochant la case « Ne pas
écraser cette requête depuis une autre
fenêtre » sous la zone de texte de requête. Alors
vous pouvez afficher des tables/bases de données en
arrière-plan sans perdre le contenu de la zone de texte, ce qui est
particulièrement pratique quand vous faites des requêtes sur
des tables dont vous devez d'abord regarder le contenu. La case sera
automatiquement cochée chaque fois que vous changez le contenu de la
zone de texte. Décochez cette case si jamais vous vouliez que la
fenêtre de requêtes soit toujours mise à jour, même
si vous avez fait des modifications.
Si $cfg['QueryHistoryDB'] est défini à TRUE,
vous pouvez spécifier le nombre d'entrées dans l'historique en
utilisant $cfg['QueryHistoryMax'].
La fenêtre de requêtes a également des onglets pour
regrouper les fonctionnalités. En utilisant la variable
$cfg['QueryWindowDefTab'] vous pouvez spécifier l'onglet par
défaut à utiliser à l'ouverture de la fenêtre de
requêtes. Elle peut être définie à 'sql', 'files',
'history' ou 'full'.
- $cfg['BrowseMIME'] booléen
- Active les Transformations MIME.
- $cfg['MaxExactCount'] entier
- Pour les tables InnoDB, détermine pour quelle taille de tables
phpMyAdmin doit obtenir le nombre de lignes exact avec
SELECT
COUNT. Si le compte approximatif de lignes renvoyé par
SHOW TABLE STATUS est inférieur à cette valeur,
SELECT COUNT sera utilisé, sinon, la valeur
approximative sera utilisée.
- $cfg['MaxExactCountViews'] entier
- Pour VIEW, puisqu'obtenir le compte exact pourrait avoir un
impact sur les
performances, cette valeur est la valeur maximum à afficher, en
utilisant un
SELECT COUNT ... LIMIT. La valeur par
défaut de 0 passe outre tout comptage de lignes.
-
$cfg['WYSIWYG-PDF'] booléen
- Utilise un contrôle d'édition WYSIWYG pour placer facilement
les éléments d'une page PDF. En cliquant sur le bouton 'Éditeur visuel' dans
la page sur laquelle vous éditez les coordonnées x/y de ces
éléments, vous pouvez activer un éditeur visuel
où tous vos éléments sont placés. En cliquant
sur un élément, vous pouvez le déplacer dans la zone
prédéfinie et les coordonnées x/y seront mises à
jour dynamiquement. De même, si vous entrez directement une nouvelle
position dans le champ de saisie, la nouvelle position dans l'éditeur
visuel change après que vos curseurs aient quitté le champ de
saisie.
Vous devez cliquer sur le bouton 'OK' en-dessous des tables pour
sauvegarder
les nouvelles positions. Si vous voulez placer un nouvel
élément, ajoutez-le d'abord à la table des
éléments et alors vous pourrez déplacer ce nouvel
élément.
En changeant la taille du papier et l'orientation, vous changez
également la taille de l'éditeur visuel. Vous pouvez le faire
en changeant seulement le champ déroulant au-dessous, et
l'éditeur visuel se réajustera automatiquement, sans
interférer avec les positions des éléments en cours.
Si un élément sortait du champ, vous pouvez soit agrandir la
taille du papier, soit cliquer sur le bouton 'Réinitialiser les
valeurs' pour placer tous les éléments les uns en-dessous des
autres.
REMARQUE : Vous devez utiliser un navigateur récent
comme
IE6 ou Mozilla pour que ce contrôle puisse fonctionner. La
fonctionnalité de script Drag&Drop a été
empruntée à www.youngpup.net et sa licence sous-jacente si
spécifique.
- $cfg['NaturalOrder'] booléen
- Trie les noms des bases de données en ordre naturel (par
exemple, t1,
t2, t10). Actuellement mis en oeuvre dans le panneau de gauche (Mode
allégé) et dans la vue Base de données, pour la liste
des tables.
- Si défini à 'closed', les cases de défilement visuel
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['TitleTable'] chaîne
- $cfg['TitleDatabase'] chaîne
- $cfg['TitleServer'] chaîne
- $cfg['TitleDefault'] chaîne
- Vous permet d'indiquer le titre de la fenêtre. Les chaînes
suivantes peuvent être utilisées pour obtenir des valeurs
spéciales :
@HTTP_HOST@
- Hôte HTTP
exécutant phpMyAdmin
@SERVER@
- Nom du serveur MySQL
@VERBOSE@
- Nom complet du serveur MySQL tel qu'indiqué dans la configuration serveur
@VSERVER@
- Nom complet du serveur MySQL si défini, sinon normal
@DATABASE@
- Base de données actuellement ouverte
@TABLE@
- Table actuellement ouverte
@PHPMYADMIN@
- Version de phpMyAdmin
- $cfg['ErrorIconic'] booléen
- Utilise des icônes pour les avertissements, les erreurs et les
informations.
- $cfg['MainPageIconic'] booléen
- Utilise des icônes pour les listes de la page principale et les
onglets de menus.
- $cfg['ReplaceHelpImg'] booléen
- Affiche un bouton d'aide plutôt que le message
« Documentation ».
- $cfg['ThemePath'] chaîne
- Si le gestionnaire de thèmes est actif, utilise ceci comme le
chemin
du sous-répertoire contenant les tous les thèmes.
- $cfg['ThemeManager'] booléen
- Active la sélection par l'utilisateur des thèmes. Voir FAQ 2.7.
- $cfg['ThemeDefault'] string
- Le thème par défaut (un sous-répertoire de
cfg['ThemePath']).
- $cfg['ThemePerServer'] booléen
- Autorise ou non un thème différent pour chaque serveur.
- $cfg['DefaultQueryTable'] chaîne
$cfg['DefaultQueryDatabase']
chaîne
- Default queries that will be displayed in query boxes when user
didn't
specify any. Use %d for database name, %t for table name and %f for a
comma
separated list of column names. Note that %t and %f are only applicable
to
$cfg['DefaultQueryTable'].
- $cfg['SQP']['fmtType'] chaîne ['html|none']
-
L'utilisation principale du nouvel analyseur syntaxique SQL est
de permettre
un affichage de requêtes SQL plus clair. Par défaut, nous utilisons HTML pour
mettre en page la requête, mais vous pouvez désactiver ce
paramètre en définissant cette variable à
'none'.
- $cfg['SQP']['fmtInd'] flottant
$cfg['SQP']['fmtIndUnit']
chaîne
[em|px|pt|ex]
- Pour un affichage plus clair des requêtes SQL, dans certains
cas, la
partie d'une requête à l'intérieur de parenthèses
est indentée. En changeant $cfg['SQP']['fmtInd'] vous pouvez
modifier l'importance de cette indentation.
Dans le même ordre d'idée, $cfg['SQP']['fmtIndUnit']
spécifie les unités de la valeur de l'indentation que vous
avez spécifié. Ceci est utilisé pour les feuilles de
style.
- $cfg['SQP']['fmtColor'] tableau de tuples
chaîne
- Ce tableau est utilisé pour définir les couleurs pour chaque
type d'élément de requêtes SQL afin de les lire plus facilement. Le format du
tuple
est :
classe => ['code couleur HTML | chaîne vide']
Si vous spécifiez une chaîne vide pour la couleur d'une classe,
elle est ignorée lors de la création de la feuille de
style. Vous ne devez pas modifier les noms de classes, seulement les
chaînes couleur.
Clé pour le nom de classe :
- comment s'applique à toutes les sous-classes de
commentaires
- comment_mysql commentaires tels que
« #...\n »
- comment_ansi commentaires tels que
« --...\n" »
- comment_c commentaires tels que
« /*...*/ »
- digit s'applique à toutes les sous-classes nombre
- digit_hex nombres hexadécimaux
- digit_integer nombres entiers
- digit_float nombres à virgule flottante
- punct s'applique à toutes les sous classes
ponctuation
- punct_bracket_open_round parenthèses ouvrantes
« ( »
- punct_bracket_close_round parenthèses fermantes
« ) »
- punct_listsep séparateur de liste
« , »
- punct_qualifier qualificateur de table/colonne
« . »
- punct_queryend marqueur de fin de requête
« ; »
- alpha s'applique à toutes les sous-classes
alphabétiques
- alpha_columnType identifiants correspondant à un
type de
colonne
- alpha_columnAttrib identifiants correspondant à
un attribut de
base de données/table/colonne
- alpha_functionName identifiants correspondant à
un nom de
fonction MySQL
- alpha_reservedWord identifiants correspondant à
tout autre mot
réservé
- alpha_variable identifiants correspondant à une
variable SQL
« @foo »
- alpha_identifier tout autre identifiant
- quote s'applique à toutes les sous-classes de
marques de
citation
- quote_double guillemets anglais "
- quote_single apostrophes '
- quote_backtick apostrophes inversées `
- $cfg['SQLValidator'] booléean
- $cfg['SQLValidator']['use']
booléean
- phpMyAdmin gère maintenant l'utilisation du service Mimer SQL Validator, tel qu'il a
été publié sur Slashdot.
Pour trouver de l'aide sur le paramétrage de votre
système
pour utiliser ce service, voir la section FAQ 6.14.
- $cfg['SQLValidator']['username']
chaîne
$cfg['SQLValidator']['password']
chaîne
- Le service SOAP vous permet de vous connecter avec anonymous
et
n'importe quel mot de passe, aussi nous les utilisons par défaut. Par
contre, si vous avez un compte de connexion, vous pouvez mettre ici vos
détails de connexion, et ils seront utilisés à la place
de la connexion anonyme.
- $cfg['DBG']['enable'] booléen
- DÉVELOPPEURS SEULEMENT !
- $cfg['DBG']['sql'] boolean
- DÉVELOPPEURS SEULEMENT !
Active la journalisation des requêtes et des temps d'exécution
qui sont
alors affichés au bas de la page principale (panneau de droite).
- $cfg['DBG']['php'] boolean
- DÉVELOPPEURS SEULEMENT !
Active l'extension DBG pour le débogage phpMyAdmin.
Nécessaire pour analyser le code.
Pour l'aide dans le paramétrage de votre système avec cette
fonctionnalité, voir la section Développeurs.
- $cfg['DBG']['profile']['enable']
booléen
- DÉVELOPPEURS SEULEMENT !
Active la gestion de l'analyse pour phpMyAdmin. Ceci ajoutera un
gros paquet
de données à la fin de chaque page affichée dans la
fenêtre principale avec les statistiques d'analyse pour cette page.
Vous aurez peut-être besoin d'augmenter le temps maximum
d'exécution pour que cela fonctionne correctement.Le profilage a
été supprimé du code de la version 2.9.0 pour des
problèmes de licence.
- $cfg['DBG']['profile']['threshold']
flottant (unités en
millisecondes)
- DÉVELOPPEURS SEULEMENT !
Quand un audit de données est affiché, cette variable
contrôle le seuil d'affichage pour chaque audit de données,
fondé sur le temps moyen que chacun a pris. S'il est supérieur
au seuil, il est affiché, sinon il n'est pas affiché. Ceci
prend une valeur en millisecondes. Dans la plupart des cas, vous n'avez
pas
besoin de modifier ce paramètre.
- $cfg['ColumnTypes'] tableau
- Tous les types possibles de colonnes MySQL. Dans la plupart des
cas, vous
n'avez pas besoin de modifier ce paramètre.
- $cfg['AttributeTypes'] tableau
- Possible attributes for columns. In most cases you don't need to
edit this.
- $cfg['Functions'] tableau
- Une liste de fonctions que gère MySQL. Dans la plupart des cas,
vous
n'avez pas besoin de modifier ce paramètre.
- $cfg['RestrictColumnTypes'] tableau
- Mappage de types de colonnes utilisées pour l'affichage des
fonctions
favorites. Dans la plupart des cas, vous n'avez pas besoin de modifier
ce
paramètre.
- $cfg['RestrictFunctions'] tableau
- Les fonctions favorites pour la colonne méta-types comme
définies dans $cfg['RestrictColumnTypes'].
Dans la plupart des
cas, vous n'avez pas besoin de modifier ce paramètre.
- $cfg['DefaultFunctions'] tableau
- Fonctions sélectionnées par défaut pour
insérer/modifier un enregistrement. Les fonctions sont
définies pour les méta-types de $cfg['RestrictColumnTypes'] et pour
first_timestamp, qui est utilisé pour la première
colonne d'horodatage dans une table.
- $cfg['NumOperators'] tableau
- Operators available for search operations on numeric and date
columns.
- $cfg['TextOperators'] tableau
- Operators available for search operations on character columns.
Note that
we put
LIKE by default instead of LIKE %...%,
to
avoid unintended performance problems in case of huge tables.
- $cfg['EnumOperators'] tableau
- Operators available for search operations on ENUM columns.
- $cfg['NullOperators'] tableau
- Additional operators available for search operations when the
column can be
null.
- Introduction
- Utilisation
- Structure de fichier
Pour permettre les transformations, vous devez paramétrer la table
column_info et les directives appropriées. Veuillez
consulter la section Configuration sur la
manière de faire.
You can apply different transformations to the contents of each
column. The
transformation will take the content of each column and transform it
with
certain rules defined in the selected transformation.
Say you have a column 'filename' which contains a filename. Normally
you
would see in phpMyAdmin only this filename. Using transformations you
can
transform that filename into a HTML link, so you can click inside of the
phpMyAdmin structure on the column's link and will see the file
displayed in
a new browser window. Using transformation options you can also specify
strings to append/prepend to a string or the format you want the output
stored in.
Pour un aperçu général sur les transformations et leurs
options, vous pouvez consulter la page
<www.votre-hote.com>/<votre-repertoire-installation>/transformations/overview.php
de votre installation.
Pour un tutoriel sur la façon d'utiliser efficacement les
transformations, voir notre section Links
sur la
page d'accueil officielle de phpMyAdmin.
Consultez votre page tbl_structure.inc.php
(c'est-à-dire, atteindre la
page en cliquant le lien 'Structure' d'une table). Cliquez alors sur
« Modifier » (ou l'icône Modifier) et alors vous
verrez trois nouveaux champs à la fin de la ligne qui sont :
'Type MIME', 'Transformation' et 'Options de transformation'.
- Le champ 'Type MIME' est un champ déroulant. Sélectionnez le
type MIME qui correspond au contenu de la colonne. Veuillez noter que
les
transformations sont inactives tant qu'aucun type MIME n'est
sélectionné.
- Le champ 'Transformation' est un champ déroulant. Vous pouvez
choisir
parmi un choix grandissant de transformations
prédéfinies. Voir ci-dessous la façon de construire
votre propre transformation.
Il y a des transformations globales et des transformations de
type mime
lié. Les transformations globales peuvent être
utilisées pour tout type mime. Elles prendront en
considération, si nécessaire , le type mime. Les
transformations de type mime lié fonctionnent habituellement avec
certain type mime. Il y a des transformations qui opèrent sur le type
mime principal (comme 'image'), qui prendront vraisemblablement en
compte le
sous-type, et celles qui n'opèrent que sur un sous-type
spécifique (comme 'image/jpeg').
Vous pouvez utiliser des transformations sur les types mime pour
lesquels la
fonction n'a pas été définie. Il n'y a pas de
contrôle pour vérifier que vous avez choisi la bonne
transformation, aussi, faites attention au format de votre résultat.
- Le champ 'Options de transformation' est un champ texte libre.
Vous devez
entrer ici des options spécifiques de fonction de
transformation. Généralement, les transformations fonctionnent
avec les options par défaut, mais il est conseillé de regarder
l'aperçu pour voir quelles options sont nécessaires.
Tout comme les champs ENUM/SET, vous devrez séparer plusieurs
options
en utilisant le format 'a','b','c',...(REMARQUEZ QU'IL N'Y A PAS
D'ESPACE). Car en interne, les options seront analysées comme un
tableau, en prenant la première valeur comme le premier
élément du tableau, et ainsi de suite.
Si vous voulez spécifier un jeu de caractères MIME, vous
pouvez le définir dans transformation_options. Vous devez mettre
cela hors des options prédéfinies d'une transformation mime
spécifique, comme dernière valeur du jeu. Utilisez le format
« '; charset=XXX' ». Si vous utilisez une
transformation, pour laquelle vous pouvez spécifier deux options et
que vous voulez ajouter un jeu de caractères, entrez
« 'premier paramètre','second
paramètre','charset=us-ascii' ». Vous pouvez cependant,
utiliser les paramètres par défaut :
« '','','charset=us-ascii' ».
Tous les types mime et leurs transformations sont définis dans des
fichiers dans le répertoire 'libraries/transformations/'.
Ils sont emmagasinés dans des fichiers pour faciliter la
personnalisation et l'ajout aisé de nouvelles transformations.
Parce que l'utilisateur ne peut pas mettre ses propres types mime,
on garde
l'assurance que les transformations fonctionnent toujours. Cela n'a pas
de
sens d'appliquer une transformation à un type mime, que la fonction
de transformation ne sait pas manipuler.
One can, however, use empty mime-types and global transformations
which
should work for many mimetypes. You can also use transforms on a
different
mimetype they where built for, but pay attention to option usage as well
as
what the transformation does to your column.
Il y a un fichier de base appelé 'global.inc.php'. Cette
fonction peut être incluse dans n'importe quelle autre transformation
et fournit des fonctions de base.
Il y a cinq noms de fichiers possibles :
- Une transformation typemime+soustype :
['typemime']_['soustype']__['transformation'].inc.php
Veuillez noter que typemime et soustype sont séparés par '_',
qui ne doit pas être contenu dans leurs noms. La transformation
fonction/nomfichier ne doit contenir que des caractères qui ne posent
pas de problème pour le système de fichier et pour la
convention de nommage de fonction de PHP.
La fonction de transformation sera appelée
'transformation_PMA_['typemime']_['soustype']__['transformation']()'.
Exemple :
text_html__formatted.inc.php
PMA_transform_text_html__formatted()
- Une transformation de type mime (sans sous-type) :
['typemime']__['transformation'].inc.php
Veuillez noter qu'il n'y a pas de caractère '_' isolé. La
transformation fonction/nomfichier doit contenir seulement des
caractères qui ne posent pas de problème pour le
système de fichier et pour la convention de nommage de PHP.
La fonction de transformation sera appelée
'transformation_PMA_['typemime']__['transformation']()'.
Exemple :
text__formatted.inc.php
transformation_PMA_text__formatted()
- Une transformation typemime+soustype sans fonction de
transformation
spécifique
['typemime']_['soustype'].inc.php
Veuillez noter qu'il n'y a pas de caractère '_' dans le fichier.
N'utilisez pas de caractères spéciaux dans le nom de fichier
posant des problèmes avec le système de fichiers.
Aucune fonction de transformation n'est définie dans le fichier
lui-même.
Exemple :
text_plain.inc.php
(Pas de fonction)
- Une transformation de type mime (sans sous-type) sans fonction
de
transformation spécifique
['typemime'].inc.php
Veuillez noter qu'il n'y a pas de caractère '_' dans le nom de
fichier. N'utilisez pas de caractères spéciaux dans le nom de
fichier posant des problèmes avec le système de fichiers.
Aucune fonction de transformation n'est définie dans le fichier
lui-même.
Exemple :
text.inc.php
(Pas de fonction)
- Une fonction de transformation globale sans type mime spécifique
global__['transform'].inc.php
La fonction de transformation sera appelée
'transformation_PMA_global__['transform']()'.
Exemple :
global__formatted
transformation_PMA_global__formatted()
Utilisez donc généralement '_' pour séparer le
type mime du sous-type, et '__' pour annoncer la fonction de
transformation.
Tous les fichiers ne contenant pas '__' ne sont pas affichés en tant
que fonctions de transformation valides dans la liste déroulante.
Please see the libraries/transformations/TEMPLATE file for adding
your own
transform function. See the libraries/transformations/TEMPLATE_MIMETYPE
for
adding a mimetype without a transform function.
Pour créer une nouvelle fonction de transformation, veuillez
consulter libraries/transformations/template_generator.sh.
Pour
créer un nouveau type mime vide, veuillez consulter
libraries/transformations/template_generator_mimetype.sh.
Une fonction de transformation a toujours besoin de trois
variables :
- $buffer - contient le texte de la colonne. C'est le texte
que vous
voulez transformer.
- $options - contient toutes les options passées par
l'utilisateur à la fonction de transformation sous forme de tableau.
- $meta - Contains an object with information about your
column. The
data is drawn from the output of the mysql_fetch_field()
function. This means, all object properties described on the manual page are
available in
this variable and can be used to transform a column accordingly to
unsigned/zerofill/not_null/... properties.
The $meta->mimetype variable contains the original MIME-type
of the
column (i.e. 'text/plain', 'image/jpeg' etc.)
Additionally you should also provide additional function to provide
information about the transformation to the user. This function should
have
same name as transformation function just with appended _info
suffix. This function accepts no parameters and returns array with
information about the transformation. Currently following keys can be
used:
info
- Long description of the transformation.
FAQ - Foire Aux
Questions
- Serveur
- Configuration
- Limitations
- Multi-utilisateur
- Navigateurs
- Astuces d'utilisation
- Projet
- Sécurité
- Synchronisation
Veuillez jeter un œil à notre section Links
sur la
page d'accueil officielle de phpMyAdmin pour une revue
détaillée des fonctionnalités de phpMyAdmin et/ou de
son interface.
1. Serveur
Il y a quelques bogues PHP recensés pour le cache des
résultats (ouput buffering) et la compression.
Essayez de paramétrer la directive $cfg['OBGzip'] à FALSE dans votre
fichier config.inc.php et la directive
zlib.output_compression à OFF dans votre fichier de
configuration php.
De plus, nous connaissons de tels problèmes en relation avec les
« release candidates » (RC) de PHP 4.2.0 (testé
avec PHP 4.2.0 RC1 à RC4) avec MS Internet Explorer. Veuillez mettre
à jour votre version de PHP à 4.2.0.
Vous devez tout d'abord essayer les dernières versions de Apache (et
si possible de MySQL).
Veuillez également consulter la section FAQ 1.1 sur les bogues de PHP
avec le
cache de résultats (output buffering).
Si votre serveur continue à planter, veuillez demander de l'aide
dans
les divers groupes d'entraide de Apache.
C'est un bogue connu de PHP (voir ce rapport de bogue)
recensé dans la base de données officielle de bogues de
PHP. Cela signifie qu'il n'y a pas et qu'il n'y aura pas de correctif
phpMyAdmin pour corriger cela parce qu'il n'y a pas de moyen pour coder
ce
correctif.
Vous avez juste oublié de lire le fichier install.txt de la
distribution php. Consultez le dernier message dans ce rapport de bogue de la
base
de données officielle de bogues de PHP.
Ceci est un problème connu du filtre ISAPI de PHP : il n'est
pas
très stable. Veuillez utiliser plutôt le mode
d'authentification par cookie.
Cela semble être un bogue de PWS. Filippo Simoncini a trouvé
une solution de rechange (pour le moment, il n'y a pas de meilleur
moyen) : supprimez ou mettez en commentaire les déclarations
DOCTYPE (deux lignes) des scripts libraries/header.inc.php,
libraries/header_printview.inc.php, index.php,
navigation.php et libraries/libraries/common.lib.php.
Ces fonctionnalités sont basées sur les fonctions PHP
gzencode() et bzcompress() pour être plus
indépendantes de la plateforme (Unix/Windows, Mode
sécurisé ou non, et ainsi de suite). Aussi, vous devez avoir
PHP4 >= 4.0.4 et la gestion Zlib/Bzip2 (--with-zlib
and --with-bz2).
Nous avons été confrontés à des plantages de PHP
en essayant de télécharger un fichier d'exportation avec MS
Internet Explorer en utilisant phpMyAdmin avec une release candidate de
PHP
4.2.0. Dans ce cas, vous devrez changer pour la version PHP 4.2.0
finale.
Votre fichier transféré est sauvegardé dans votre
« répertoire de transfert », tel que
défini dans le fichier php.ini par la variable
upload_tmp_dir (habituellement, le répertoire système
par défaut est /tmp).
Nous vous recommandons le paramétrage suivant pour les serveurs
Apache exécutés en mode sécurisé, pour activer
les transferts de fichiers tout en étant raisonnablement
sécurisés :
- créer un répertoire séparé pour les
transferts : mkdir /tmp/php
- rendez propriétaire du répertoire le groupe et l'utilisateur
du serveur Apache : chown apache:apache /tmp/php
- donnez les permissions appropriées : chmod 600 /tmp/php
- mettez upload_tmp_dir = /tmp/php dans le fichier php.ini
- redémarrez Apache
Ce n'est pas vraiment phpMyAdmin qui est en cause mais plutôt RedHat
7.0. Vous utilisez RedHat 7.0 et vous avez mis à jour votre paquetage
RPM PHP vers php-4.0.4pl1-3.i386.rpm, n'est-ce pas ?
Donc le problème est que ce paquetage a un sérieux bogue qui a
été corrigé il y a pas mal de temps dans PHP
(28-01-2001 : voir le système
Bug Tracker de
PHP pour plus de détails). Le problème est que ce
paquetage bogué est toujours disponible bien qu'il soit
corrigé (voir RedHat's
BugZilla pour plus de détails).
Aussi, veuillez télécharger le
paquetage
corrigé (4.0.4pl1-9) et le problème devrait
disparaître.
Et cela corrige le problème \r\n avec les transferts de
fichiers !
Comme l'a suggéré « Rob M » dans le
forum phpWizard, ajoutez cette ligne dans votre fichier
httpd.conf :
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
Il semble que cela supprime beaucoup de problèmes entre Internet
Explorer et SSL.
Depuis la version 2.2.4, phpMyAdmin gère les serveurs avec les
restrictions open_basedir. Cependant, vous devez créer un répertoire
temporaire et le configurer comme $cfg['TempDir']. Les fichiers transmis seront
déplacés ici, at après l'exécution de vos commandes SQL, ils seront supprimés.
Le manuel MySQL explique comment réinitialiser
les
permissions.
Si PHP n'a pas d'accès en lecture/écriture à son
répertoire upload_tmp_dir, il ne peut pas accéder
à la requête transférée.
Vérifiez la directive post_max_size dans votre fichier de
configuration PHP et essayez de l'augmenter.
In previous MySQL versions, the User and Passwordcolumns
were
named user and password. Please modify your column
names to align with current standards.
À partir de la version 2.7.0, le moteur d'importation a
été ré-écrit et ces problèmes ne
devraient plus arriver. Si possible, mettez à jour votre phpMyAdmin
avec la dernière version pour tirer parti des nouvelles
fonctionnalités d'importation.
Les premières choses à vérifier (ou à demander
à votre fournisseur d'accès de vérifier) sont les
valeurs upload_max_filesize, memory_limit et
post_max_size dans le fichier de configuration php.ini.
L'ensemble de ces trois paramètres limitent la taille maximale des
données qui peuvent être soumises par PHP. Un utilisateur a
également dit que post_max_size et memory_limit doivent être
plus grandes que upload_max_filesize.
Il existe plusieurs moyens de contournement si votre upload est trop
gros ou
si votre hébergeur ne souhaite pas modifier les
paramètres :
- Regardez la fonctionnalité $cfg['UploadDir']. Ceci permet d'uploader un
fichier
vers un serveur via scp, ftp ou votre méthode de transfert de fichier
préférée. PhpMyAdmin est alors capable d'importer les
fichiers à partir du répertoire temporaire. Plus
d'onformations sont disponibles dans la section Configuration
- En utilisant un utilitaire (tel que BigDump) pour découper
le fichier avant de l'uploader. Nous ne gérons pas ceci ni aucune
application tierce, mais nous savons que des utilisateurs ont réussi
à le faire.
- Si vous avez un accès au shell (ligne de commande), utilisez
MySQL
pour importer les fichiers directement. Vous pouvez faire ceci en
utilisant
la commande « source » dans MySQL : source
nomfichier.sql.
Depuis phpMyAdmin 3.0.x, seules les versions 5.0.1 et supérieures de
MySQL
5.0.1 sont gérées. Pour les versions plus anciennes de MySQL, vous
devez
utiliser la branche 2.8.x. phpMyAdmin peut se connecter à votre serveur
MySQL en utilisant l'extension PHP classique MySQL ou l'extension
MySQL améliorée (MySQLi)
disponible dans php 5.0. Cette dernière doit être utilisée à moins que
vous
n'ayez de bonnes raisons de ne pas le faire.
En compilant PHP, nous recommandons fortement de lier manuellement
l'extension MySQL de votre choix à une bibliothèque client
MySQL d'au moins la même version mineure, puisque celle qui est
fournie avec les distributions de PHP actuelles est plutôt ancienne et
pourrait causer des problèmes (voir également FAQ 1.17a). Si votre serveur Web
fonctionne sous un système Windows, vous devriez essayer le connecteur PHP
de
MySQL plutôt que les extensions MySQL / MySQLi
livrées avec les versions Win32 PHP officielles. MySQL 5.1
n'est pas encore géré.
Vous avez essayé d'accéder à MySQL avec une ancienne
bibliothèque client MySQL. La version de votre bibliothèque
client MySQL peut être vérifiée dans le résultat
de votre fonction phpinfo(). En général, elle devrait avoir
au moins la même version mineure que votre serveur - comme cela est
précisé dans la section FAQ 1.17.
Ce problème est généralement observé en
utilisant MySQL version 4.1 ou ultérieure. MySQL a changé
l'empreinte numérique (« hash »)
d'authentification et votre PHP essaie d'utiliser l'ancienne
méthode. La solution adéquate est d'utiliser l'extension mysqli avec la bonne
bibliothèque client pour correspondre à votre installation
MySQL. L'extension que vous avez choisie est indiquée dans $cfg['Servers'][$i]['extension'].
Vous trouverez
plus d'informations (et de moyens de contournement) dans la documentation
MySQL.
C'est un bogue de MySQL <= 4.0.1. Veuillez mettre à
jour
au moins à la version MySQL 4.0.2 ou désactivez votre
directive lower_case_table_names.
La bibliothèque « FPDF » que nous utilisons
pour cette fonctionnalité nécessite des fichiers
spéciaux pour utiliser les polices.
Veuillez vous référer au
manuel FPDF pour construire ces fichiers.
Pour se connecter à un serveur MySQL, PHP a besoin d'un jeu de
fonctions MySQL appelées « extension
MySQL ». Cette extension peut faire partie de la distribution PHP
(intégrée), sinon elle doit être chargée
dynamiquement. Son nom est vraisemblablement mysql.so ou
php_mysql.dll. phpMyAdmin a essayé de charger l'extension
mais a échoué.
D'habitude le problème est résolu en installant un paquetage
nommé « PHP-MySQL » ou quelque chose de
similaire.
Dans le fichier php.ini, définissez mysql.max_links
à une valeur supérieure à 1.
Ceci est dû très probablement au fait que dans votre fichier
php.ini, votre paramètre file_uploads n'est pas
défini à « on ».
Ceci arrive parce que la directive MySQL lower_case_table_names
est
définie par défaut à 1 (ON) dans la version
Win32 de MySQL. vous pouvez changer ce comportement en changeant
simplement
la directive à 0 (OFF) :
Éditez votre fichier my.ini qui doit se trouver dans votre
répertoire Windows et ajouter la ligne suivante au groupe
['mysqld'] :
set-variable = lower_case_table_names=0
Ensuite, sauvegardez le fichier et redémarrez le service MySQL.
Vous
pouvez toujours vérifier la valeur de cette directive en utilisant la
requête suivante
SHOW VARIABLES LIKE 'lower_case_table_names';
C'est un bogue de PHP
4.2.3.
Une astuce de Jose Fandos : mettez en commentaire les deux
lignes
suivantes dans votre fichier httpd.conf, comme ceci :
# mod_gzip_item_include file \.php$
# mod_gzip_item_include mime "application/x-httpd-php.*"
car cette version de mod_gzip sur Apache (Windows) a des problèmes
pour manipuler les scripts PHP. Bien sûr, vous devrez
redémarrer Apache.
C'est un problème de permission. Faites un clic droit sur le dossier
phpmyadmin et sélectionner Propriétés. Dans l'onglet
Sécurité, cliquez sur « Ajouter » et
sélectionner l'utilisateur « IUSR_machine »
à partir de la liste. Définissez maintenant ses permissions et
cela devrait fonctionner.
C'est un bogue PHP qui
survient
quand le cache de résultats GZIP (output buffering) est
activé. Si vous le désactivez (en définissant $cfg['OBGzip'] = false dans votre
fichier config.inc.php), cela devrait fonctionner. Ce bogue sera
corrigé dans PHP version 5.0.0.
Cela peut arriver à cause d'un bogue de MySQL quand vous avez des
noms de base de données/tables avec des caractères en
majuscules bien que lower_case_table_names soit défini
à 1. Pour corriger ceci, désactivez cette directive,
convertissez tous les noms de vos tables et base de données en
minuscules et réactivez-la. Il y a également un correctif
disponible à partir de MySQL 3.23.56 / 4.0.11-gamma.
Il est possible de configurer Apache de telle façon que PHP a des
problèmes en interprétant les fichiers .php.
Les problèmes surviennent quand deux jeux de directives
différents (et en conflit) sont utilisés :
SetOutputFilter PHP
SetInputFilter PHP
et
AddType application/x-httpd-php .php
Dans le cas que nous avons constaté, un jeu de directives
était dans le fichier /etc/httpd/conf/httpd.conf, alors que
l'autre était dans le fichier
/etc/httpd/conf/addon-modules/php.conf.
La manière recommandée est AddType, mettez seulement
en commentaire le premier jeu de lignes et redémarrez Apache :
#SetOutputFilter PHP
#SetInputFilter PHP
Ce problème est connu pour survenir quand le serveur exécute
Turck MMCache, mais la mise à jour de MMCache en version 2.3.21
résoud le problème.
Oui.
Depuis la version 3.0 seul PHP 5.2 et versions plus récentes. Pour
les
anciennes versions PHP la branche 2.9 est toujours maintenue.
Oui. Cette procédure a été testée avec
phpMyAdmin 2.6.1, PHP 4.3.9 en mode ISAPI sous IIS 5.1.
- Dans votre fichier php.ini, paramétrez
cgi.rfc2616_headers = 0
- Dans la boîte de dialogue Propriétés de site ->
Sécurité de fichier/répertoire -> Accès
anonyme, cochez la case Accès anonyme et
décochez toutes les autres cases (c-à-d décochez
Authentification de base, Authenfication intégrée
Windows, et Digest si ces cases sont cochées). Cliquez
sur OK.
- Dans Erreurs personnalisées, sélectionnez de
401;1 à 401;5 et cliquez sur le bouton
Définir par défaut.
Oui. Ce problème affecte phpMyAdmin (« Appel à la
fonction indéfinie pma_reloadnavigation »), aussi,
veuillez mettre à jour votre version de PHP.
Oui. Sans autre configuration, vous pouvez utiliser des URL de type
http://server/phpMyAdmin/index.php?db=database&table=table&target=script.
Pour
server, vous utilisez le numéro du serveur qui réfère à
l'ordre dans le paragraphe « server » dans le fichier
config.inc.php. Les parties « table » et
« script » sont optionnelles. Si vous voulez utiliser
des URL du type
http://server/phpMyAdmin/database['/table']['/script'], vous devrez
faire
quelques ajustements. Les lignes suivantes ne s'appliquent que pour un
serveur Web Apache. D'abord,
assurez-vous que vous avez activé certaines fonctionnalités
dans la configuration globale. Vous avez besoin que Options
FollowSymLinks et AllowOverride FileInfo soient
activés pour le répertoire où est installé
phpMyAdmin et que « mod_rewrite » soit
activé. Alors, vous aurez seulement besoin de créer le fichier
.htaccess suivant dans le dossier racine de l'installation
de
phpMyAdmin (n'oubliez pas de changer le nom du répertoire) :
RewriteEngine On
RewriteBase /path_de_phpMyAdmin
RewriteRule ^(['a-zA-Z0-9_']+)/(['a-zA-Z0-9_']+)/(['a-z_']+\.php)$ index.php?db=$1&table=$2&target=$3 ['R']
RewriteRule ^(['a-zA-Z0-9_']+)/(['a-z_']+\.php)$ index.php?db=$1&target=$2 ['R']
RewriteRule ^(['a-zA-Z0-9_']+)/(['a-zA-Z0-9_']+)$ index.php?db=$1&table=$2 ['R']
RewriteRule ^(['a-zA-Z0-9_']+)$ index.php?db=$1 ['R']
Oui. Cependant vous aurez besoin de passer la variable
d'authentification
à CGI en utilisant la règle rewrite
suivante :
RewriteEngine On
RewriteRule .* - ['E=REMOTE_USER:%{HTTP:Authorization},L']
Il peut y avoir plusieurs explications à cela et consulter le
journal
des erreurs de votre serveur devrait vous donner une piste.
Si votre cluster est composé de machines d'architectures
différentes, le code PHP utilisé pour le
chiffrement/déchiffrement ne fonctionnera pas correctement. Ceci est
dû à l'utilisation des focntions pack/unpack dans le code. La
seule solution est d'utiliser l'extension mcrypt qui fonctionne bien
dans ce
cas.
Yes but the default configuration values of Suhosin are known to
cause
problems with some operations, for example editing a table with many
columns
and no primary key or with textual primary key.
Suhosin configuration might lead to malfunction in some cases and it
can not
be fully avoided as phpMyAdmin is kind of application which needs to
transfer big amounts of columns in single HTTP request, what is
something
what Suhosin tries to prevent. Generally all suhosin.request.*,
suhosin.post.* and suhosin.get.* directives
can
have negative effect on phpMyAdmin usability. You can always find in
your
error logs which limit did cause dropping of variable, so you can
diagnose
the problem and adjust matching configuration variable.
The default values for most Suhosin configuration options will work
in most
scenarios, however you might want to adjust at least following
parameters:
You can also disable the warning using the SuhosinDisableWarning
directive.
Assurez-vous d'avoir activé SSLOptions et StdEnvVars
dans
votre configuration Apache. Consulter http://httpd.apache.org/docs/2.0/mod/mod_ssl.html#ssloptions.
Pour pouvoir utiliser l'authetification par cookie, Apache doit
savoir qu'il
doit ré-écrire les en-têtes set-cookie.
Exemple pris dans la documentation de Apache 2.2 :
ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/
Note : si l'URL de backend ressemble à
http://host/~user/phpmyadmin, le
tilde « ~ » doit être encodé en « %7E » dans les
lignes
ProxyPassReverse. Ce n'est pas spécifique à phpmyadmin, c'est juste le
comportement d'Apache.
ProxyPass /mirror/foo/ http://backend.example.com/~user/phpmyadmin
ProxyPassReverse /mirror/foo/
http://backend.example.com/%7Euser/phpmyadmin
ProxyPassReverseCookiePath /%7Euser/phpmyadmin /mirror/foo
Consulter http://httpd.apache.org/docs/2.2/mod/mod_proxy.html
pour plus de détails.
Les tables de privilèges du serveur MySQL ne sont pas à jour, vous
devez
exécuter la commande mysql_upgrade sur le serveur.
Configuration
Éditez votre fichier config.inc.php et assurez-vous qu'il n'y
a rien (c'est-à-dire pas de ligne blanche, pas d'espace, pas de
caractère...) ni devant la balise <?php au
début du fichier, ni après la balise ?> à
la fin du fichier. Nous avons aussi eu un rapport d'un utilisateur sous
IIS,
qui utilisait un kit de distribution zippé : le fichier
libraries/Config.class.php contenait un caractère de fin de
ligne (hex 0A) en fin de fichier ; en supprimant ce caractère,
les erreurs disparaissaient.
Il y a soit une erreur dans votre configuration PHP, soit votre
utilisateur/mot de passe. Essayez de faire un petit script qui utilise
mysql_connect et voyez s'il fonctionne. Si ce n'est pas le cas, il se
peut
que vous n'ayez pas compilé la gestion de MySQL dans PHP.
Pour les utilisateurs RedHat, Harald Legner suggère ceci sur la
liste
de diffusion :
Sur mon système RedHat le socket de MySQL est
/var/lib/mysql/mysql.sock. Dans votre fichier php.ini
vous
trouverez une ligne
mysql.default_socket = /tmp/mysql.sock
changez-la pour :
mysql.default_socket = /var/lib/mysql/mysql.sock
Redémarrez alors Apache et cela fonctionnera.
Voici un correctif proposé par Brad Ummer :
- D'abord, vous devez déterminer quel socket est utilisé par
MySQL.
Pour cela, faites un telnet sur votre serveur et allez dans le
répertoire bin de MySQL. Dans ce répertoire il devrait
y avoir un fichier appelé mysqladmin. Tapez alors
./mysqladmin variables, et cela devrait vous donner un paquet
d'infos sur votre serveur MySQL, y compris le socket
(/tmp/mysql.sock, par exemple).
- Ensuite, vous devez dire à PHP d'utiliser ce socket.
Pour
faire cela dans phpMyAdmin, vous devez compléter l'information
sur le socket dans votre fichier config.inc.php.
Par exemple : $cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
Veuillez également vous assurer que les permissions de ce
fichier
permettent à votre serveur web de lire le fichier
(c'est-à-dire '0755').
Consultez également la
section
correspondante dans la documentation MySQL.
Essayez de définir la directive $cfg['OBGZip'] à FALSE dans le
fichier de configuration de phpMyAdmin. Cela aide parfois.
Veuillez également regarder le numéro de version de PHP :
s'il contient « 4.0b... » cela signifie que vous
exécutez une version beta de PHP. Ce n'est pas une très bonne
idée, veuillez mettre à jour dans une version stable.
Vérifier la valeur que vous avez définie dans votre directive
$cfg['PmaAbsoluteUri']
dans votre fichier de configuration phpMyAdmin.
Quand vous utilisez un port sur votre ordinateur local, que vous
redirigez
à l'aide d'une redirection de port vers un autre hôte, MySQL ne
résoud pas le nom d'hôte local comme il le devrait.
Erik Wasser explains: The solution is: if your host is "localhost"
MySQL (the command line tool mysql as well) always tries to
use
the socket connection for speeding up things. And that doesn't work in
this
configuration with port forwarding.
Si vous mettez « 127.0.0.1 » comme nom d'hôte,
tout est correct et MySQL utilise la connexion TCP.
Les thèmes sont configurés avec $cfg['ThemePath'], $cfg['ThemeManager'] et $cfg['ThemeDefault'].
Sous $cfg['ThemePath'],
vous
ne devez pas supprimer le répertoire
« original » ou ses sous-répertoires, car c'est
le thème système utilisé par
phpMyAdmin. « original » contient tous les styles et
images, pour des raisons de compatibilité descendante et pour tous
les thèmes qui qui ne comportent pas d'images ou de fichiers css.
Si $cfg['ThemeManager']
est activé, vous pouvez sélectionner votre thème
préféré à partir de la page principale. Le
thème sélectionné sera alors stocké dans un
cookie.
Pour créer un thème :
- créez un nouveau sous-répertoire (par exemple
« votre_nom_de_theme ») dans $cfg['ThemePath'] (par défaut themes)
- copiez les fichiers et les répertoires de
« original » vers
« votre_nom_de_theme »
- éditez vos fichiers css dans
« votre_nom_de_theme/css »
- mettez vos nouvelles images dans
« votre_nom_de_theme/img »
- éditez layout.inc.php dans
« votre_nom_de_theme »
- éditez info.inc.php dans
« votre_nom_de_theme » pour qu'il contienne votre nom
de thème, qui sera visible dans l'interface utilisateur
- faites un nouveau cliché de votre thème et enregistrez-le sous
« votre_nom_de_theme/screen.png »
Dans le répertoire « theme » il y a
info.inc.php qui contient le nom long, la génération
et la version du thème. Ces versions et générations
sont énumérées à partir de 1 et n'ont aucune
dépendances directes avec la version de phpMyAdmin. Les thèmes
d'une même génération doivent être
rétro-compatibles - un thème de version 2 devrait fonctionner
avec phpMyAdmin nécessitant une version 1. Les thèmes de
générations différentes sont incompatibles.
Si vous ne voulez pas utiliser vos propres symboles et boutons,
supprimez le
répertoire « img » dans
« votre_nom_de_theme ». phpMyAdmin utilisera les
icônes et boutons par défaut (du thème système
« original »).
Vérifiez les points suivants :
- Dans le fichier config.inc.php, essayez de laisser la
directive $cfg['PmaAbsoluteUri']
vide. Voir également la section FAQ 4.7.
- Votre installation de PHP est peut-être corrompue ou vous avez
besoin
de mettre à jour votre Zend Optimizer. Voir
http://bugs.php.net/bug.php?id=31134.
- Si vous utilisez Hardened PHP avec la directive ini
varfilter.max_request_variables et la définissez à sa
valeur par défaut (200) ou une autre valeur plus basse, vous pouvez
obtenir cette erreur si votre table a un grand nombre de colonnes.
Ajustez
ce paramètre en conséquence. (Merci à Klaus Dorninger
pour l'astuce).
- Dans la directive arg_separator.input dans php.ini,
une
valeur « ; » provoque cette erreur. Remplacez-la par
« &; ».
- Si vous utilisez Hardened-PHP,
vous devriez augmenter les limites de
requête.
- Le répertoire spécifié dans la directive
session.save_path du fichier php.ini n'existe pas ou
est
en lecture seule.
Pour pouvoir voir une barre de progression pendant vos uploads,
votre
serveur doit avoir soit l'extension APC soit l'extension uploadprogress. De
plus, l'extension JSON doit être activée dans votre installation PHP.
Si vous utilisez APC, vous devez définir le paramètre apc.rfc1867
à
on dans votre fichier php.ini.
Limitations connues
Cela est dû au mécanisme du protocole d'authentification
utilisé par phpMyAdmin. Pour contourner ce problème :
fermez toutes les fenêtres de navigateur ouvertes et retournez dans
phpMyAdmin. Vous devriez être en mesure de vous reconnecter.
Les fichiers d'exportations compressés sont construits en
mémoire et à cause de cela sont limités par la limite
mémoire de php. Pour les exportations GZip/BZip2, ceci peut
être outrepassé depuis la version 2.5.4 en utilisant $cfg['CompressOnFly']
(activé par défaut). Les exportations Zip ne peuvent pas
être traitées de cette façon, donc si vous avez besoin
de fichiers Zip pour des exportations plus importantes, vous devrez
utiliser
un autre moyen.
C'est un bogue de InnoDB, consulter http://bugs.mysql.com/bug.php?id=21704.
The problem is that older versions of mysqldump created
invalid
comments like this:
-- MySQL dump 8.22
--
-- Host: localhost Database: database
---------------------------------------------------------
-- Server version 3.23.54
La partie invalide du code est la ligne horizontale de tirets qui
apparaît une fois dans chaque fichier d'exportation créé
avec mysqldump. Si vous voulez utiliser votre fichier d'exportation,
vous
devrez le transformer en code valide MySQL. Cela signifie que vous
devrez
ajouter une espace après les deux premiers tirets de la ligne ou
ajouter un # devant :
-- -------------------------------------------------------
ou
#---------------------------------------------------------
Veuillez noter que vous ne devez pas utiliser la chaîne de
séparation plusieurs fois sans insérer de caractère
entre ces chaînes, ou au début/fin de votre nom de table. Si
vous devez le faire, cherchez un autre séparateur de table ou
désactivez la fonctionnalité.
In Relation view, being able to choose a table in another database,
or
having more than one index column in the foreign key.
Dans Query-by-example (Query), la génération automatique de la
requête LEFT JOIN à partir d'une table étrangère.
Votre table n'a pas de clé primaire ou de clé unique, ce qui
oblige à utiliser une expression longue pour identifier cette
ligne. Cela pose des problèmes à la fonction parse_url. La
solution de rechange est de créer une clé primaire ou une
clé unique.
À cause d'un container de formulaires (utilisé pour les cases
à cocher de suppression de plusieurs lignes), les formulaires
imbriqués ne peuvent pas être mis à l'intérieur
de la table ou phpMyAdmin affiche les résultats. Vous pouvez
cependant utiliser tout formulaire à l'intérieur d'une table
si vous gardez le container de formulaires parent avec la cible
tbl_row_delete.php et mettez vos éléments de saisie
à l'intérieur. Si vous utilisez un champ de soumission de
saisie personnalisé, le formulaire sera soumis lui-même vers la
page d'affichage à nouveau, où vous pouvez valider les
$HTTP_POST_VARS dans une transformation. Pour un tutoriel sur la
façon d'utiliser efficacement les transformations, voir notre section Links
sur la
page d'accueil officielle de phpMyAdmin.
Quand MySQL est exécuté en mode de compatibilité ANSI,
il y a des différences majeures dans la façon dont SQL est
structuré (voir http://dev.mysql.com/doc/mysql/en/ANSI_mode.html).
Le
plus important, le caractère guillemet (") est
interprété en tant que caractère guillemet identifiant
et non comme le caractère guillemet annonçant une
chaîne, ce qui provoque des requêtes SQL invalides dans beaucoup
d'opérations internes de phpMyAdmin. Il n'y a pas de solution de
rechange à ce comportement. Des nouvelles sur ce sujet seront
postées dans le rapport de bogue #816858
Veuillez vous assurer que votre table a une clé primaire, ainsi
phpMyAdmin peut l'utiliser pour les liens Modifier et Effacer.
phpMyAdmin utilise une méthode rapide pour obtenir le nombre de
lignes, et cette méthode ne renvoie qu'un nombre approximatif pour
les tables InnoDB. Voir $cfg['MaxExactCount']
pour le moyen de modifier ces
résultats, mais cela peut avoir un sérieux impact sur les
performances.
Le nombre d'enregistrements dans les requêtes contenant COUNT et
GROUP
BY n'est pas calculé correctement. Également, le tri des
résultats d'une requête telle que « SELECT * from
table GROUP BY » ... est problématique.
Les tests que j'ai effectués avec l'API actuelle de MySQL 4.1.11,
montre que cette API n'accepte pas cette syntaxe pour la commande USE.
En
encadrant le nom de la base de données avec des apostrophes
inversées (« ` »), cela fonctionne. Pour
ajouter encore à la confusion, aucune apostrophe inversée
n'est nécessaire en ligne de commande mysql.
C'est une limitation connue de phpMyAdmin depuis le début et ce ne
sera probablement pas résolu à l'avenir.
phpMyAdmin utilise la bibliothèque PHPExcel
pour
analyser les feuilles de tableur Excel XLS et XLSX. Par conséquent,
toutes
les limitations qui sont listées sur leur page concernant les calculs
Excel
s'appliquent aussi ici.
PHPExcel sera maintenu à jour pour rendre disponible toutes les
améliorations aux utilisateurs de phpMyAdmin.
Puisque les classeurs Excel XLSX sont déjà compressés, il y a
souvent très
peu de gain à les compresser à nouveau. La gestion pour les classeurs
Excel
XLSX et XLS compressés sera peut-être ajoutée prochainement.
La représentation interne des types personnalisés de cellules dans
Excel est
plutôt confuse (particulièrement dans les fichiers binaires XLS Excel
97-2003). Si possible, songez à utiliser un type intégré. Ils
garantissent
presque toujours un import correct.
Il n'existe pas de moyen fiable de différencier les tables en format
CSV. Pour le moment, vous devrez fractionner les fichiers CSV contenant
plusieurs tables.
Pour le moment, le système de détection de type ne peut affecter que
ces
types pour les colonnes. Prochainement, d'autres types seront
certainement
ajoutés, mais pour l'instant, vous devrez éditer la structure après
l'import.
Vous devez également noter que phpMyAdmin utilisera la taille de
l'élément
le plus gros pour toute colonne donnée comme taille de colonne pour le
type
approprié. Si vous savez que vous importerez des éléments plus gros pour
cette colonne, vous devez alors ajuster la taille de la colonne. Ceci
est
fait dans un but d'efficacité.
FAI,
installation multi-utilisateurs
Depuis la version 2.0.3, vous pouvez configurer une copie
centralisée
de phpMyAdmin pour tous vos utilisateurs. Le développement de cette
fonctionnalité a été aimablement sponsorisé par
NetCologne GmbH. Ceci requiert une configuration correcte de la gestion
des
utilisateurs MySQL et l'utilisation de l'authentification HTTP ou par cookie pour
phpMyAdmin. Voir la section Installation sur
« Utiliser les modes d'authentification ».
Cela dépend de votre système.
Si vous utilisez un serveur qui ne peut pas être accédé
par d'autres personnes, il est suffisant d'utiliser la protection de
répertoire fournie avec votre serveur Web (avec Apache vous pouvez
utiliser les fichiers .htaccess, par exemple).
Si d'autres personnes ont un accès telnet à votre serveur,
vous devriez utiliser la fonctionnalité d'authentification HTTP ou par cookie de
phpMyAdmin.
Suggestions :
-
Votre fichier config.inc.php devrait être chmod 660.
-
Tous les fichiers phpMyAdmin devraient être chown -R
phpmy:apache, où phpmy est un utilisateur dont le mot
de passe est connu de vous seul, et apache est le groupe avec
lequel Apache est exécuté.
-
Vous devriez utiliser le mode sécurisé de PHP, pour vous
protéger des autres utilisateurs qui pourraient inclure votre fichier
config.inc.php dans leurs scripts.
Vérifier votre fichier php.ini, ou demander à votre
administrateur système de le faire. include_path doit
contenir « . » dans ses chemins et
open_basedir, s'il est utilisé, doit contenir
« . » et « ./lang » pour
permettre un fonctionnement normal de phpMyAdmin.
Cela peut arriver pour différentes raisons :
- $cfg['Servers'][$i]['controluser']
et/ou $cfg['Servers'][$i]['controlpass']
sont
erronés.
- L'utilisateur/mot de passe que vous spécifiez dans le dialogue
de
connexion sont invalides.
- Vous avez déjà configuré un mécanisme de
sécurité pour le répertoire phpMyAdmin, par exemple un
fichier .htaccess. Cela doit interférer avec
l'authentification phpMyAdmin, aussi, supprimez-le.
À partir de la version 2.2.5, dans la page de gestion des
utilisateurs, vous pouvez mettre un méta-caractère dans le nom
de la base de données pour un utilisateur (par exemple
« joe% »), et mettre les privilèges que vous
voulez. Par exemple, en ajoutant SELECT, INSERT, UPDATE, DELETE,
CREATE, DROP, INDEX, ALTER permettra à un utilisateur de
créer/administrer sa(ses) base(s) de données.
Si vous avez des règles existantes d'un ancien fichier .htaccess,
vous pouvez le prendre et ajouter le nom d'utilisateur entre les
chaînes 'deny'/'allow' et 'from'. Utiliser
le méta-caractère '%' pour le nom d'utilisateur est
un grand avantage si votre installation est adaptée pour
l'utiliser. Ensuite, vous pouvez ajouter ces lignes mises à jour dans
le tableau $cfg['Servers'][$i]['AllowDeny']['rules'].
Si vous voulez un exemple préfabriqué, vous pouvez essayer
celui-ci. Il empêche l'utilisateur 'root' de se connecter à
partir de n'importe quels réseaux autres que les réseaux IP privés.
//empêche root de se connecter sauf à partir des réseaux privés
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array(
'deny root from all',
'allow root from localhost',
'allow root from 10.0.0.0/8',
'allow root from 192.168.0.0/16',
'allow root from 172.16.0.0/12',
);
Ceci arrive si vous utilisez une URL pour démarrer phpMyAdmin qui est
différente de celle définie dans votre $cfg['PmaAbsoluteUri'].
Par exemple, s'il manque « www », ou si vous entrez
une adresse IP alors qu'un nom de
domaine est défini dans le fichier de configuration.
Au démarrage de phpMyAdmin, vous pouvez utiliser les
paramètres db, pma_username, pma_password
et server. Ce dernier peut contenir soit l'index numérique
de l'hôte (à partir de $i du fichier de
configuration), soit un des noms d'hôtes présents dans le
fichier de configuration. L'utilisation de pma_username et
pma_password a été testée avec
l'authentification 'cookie' auth_type.
Navigateurs et système d'exploitation client
We could reproduce this problem only under Win98/98SE. Testing under
WinNT4
or Win2K, we could easily create more than 60 columns.
A workaround is to create a smaller number of columns, then come
back to
your table properties and add the other columns.
Ce n'est pas un problème de phpMyAdmin mais un bogue connu de
Xitami : vous rencontrerez ce problème chaque fois qu'un
script/site Web utilise des formulaires.
Mettez à jour ou descendez d'une version votre serveur Xitami.
Avec Konqueror 2.1.1 : les fichiers d'exportation simples, zip
et GZip
fonctionnent bien, sauf que le nom de fichier proposé pour le fichier
d'exportation est toujours 'tbl_dump.php'. Les fichiers
d'exportation
Bzip2 ne semblent pas fonctionner.
Avec Konqueror 2.2.1 : les fichiers d'exportation simples
fonctionnent;
les fichiers d'exportation zip sont placés dans le répertoire
temporaire de l'utilisateur, aussi, ils doivent être
déplacés avant de fermer Konqueror, sinon ils
disparaissent. Les fichiers d'exportation GZip donnent un message
d'erreur.
Des tests ont besoin d'être réalisés pour Konqueror
2.2.2.
MS Internet Explorer semble être très bogué à
propos des cookies, au moins jusqu'à la version 6. Et grâce
à Andrew Zivolup, nous avons également repéré un
bogue PHP 4.1.1 dans ce domaine!
Donc, si vous exécutez PHP 4.1.1, essayez de mettre à jour ou
de descendre de version... ça peut marcher !
Mettez à jour au moins en version Internet Explorer 5.5 SP2.
Votre table n'a pas de clé primaire ni de clé unique, aussi
nous devons utiliser une URL
longue pour identifier cette ligne. Il y a une limite de longueur dans
ces
navigateurs, et cela ne se produit pas avec Netscape, par exemple. La
solution de rechange est de créer une clé primaire ou une
clé unique, ou d'utiliser un autre navigateur.
Certains navigateurs gèrent le clic-droit dans le cadre que vous
voulez rafraîchir, faites cela dans le cadre approprié.
Cela ressemble à un bogue de Mozilla : la version 0.9.6
était OK. Nous garderons ce bogue à l'esprit pour les futures
versions de Mozilla.
Ceci est un bogue Mozilla (voir bogue #26882 sur BugZilla).
C'est un bogue connu de Netscape 4.75 : il ajoute des lignes en
exportant des données en mode flux d'octets (octet-stream). Comme
nous ne pouvons pas détecter la version spécifique de Netscape
incriminée, nous ne pouvons pas contourner ce bogue.
Veuillez vous assurer que vous avez paramétré le jeu de
caractères de votre navigateur sur l'un des fichiers de langue que
vous avez choisi dans la page de démarrage de phpMyAdmin. Vous
pouvez également essayer le mode auto detection, mode qui est
géré par les versions récentes de la plupart des
navigateurs.
Ce problème a été rapporté par un utilisateur de
OS X, qui ajoute que Chimera,
Netscape
et Mozilla n'ont pas ce problème.
C'est un bogue de Internet Explorer, les autres navigateurs ne se
comportent
pas de cette manière.
Veuillez mettre à jour vers Opera7 au moins.
Veuillez mettre à jour au moins à la version 1.2.3.
Vérifiez les points suivants :
- Vous avez peut-être défini votre paramètre
PmaAbsoluteUri du fichier config.inc.php avec une
adresse
IP et vous démarrez phpMyAdmin
avec une URL contenant un nom de domaine, ou inversement.
- Les paramètres de sécurité de Internet Explorer et/ou
du Centre de sécurité Microsoft sont trop elevés et
empêchent par conséquent l'exécution des scripts.
- Le pare-feu de Windows bloque Apache et MySQL. Vous devez
autoriser les
ports http (80 ou 443) et le port MySQL (normalement 3306) en entrée
et en sortie.
Plusieurs utilisateurs ont confirmé que l'extension
« Tabbrowser » qu'ils avaient installé sur leur
Firefox est la cause de ce problème.
Ceci survient seulement quand les deux conditions suivantes sont
rencontrées : en utilisant le mode d'authentification http
et
le paramètre register_globals défini à On sur le
serveur. Il semble que ce soit un problème spécifique à ce
navigateur ;
en attendant, utilisez le mode d'authentification par cookie.
Utiliser phpMyAdmin
Examine the SQL error
with
care. Often the problem is caused by specifying a wrong column-type.
Les erreurs usuelles sont :
- l'utilisation de VARCHAR sans l'argument de taille
- l'utilisation de TEXT ou BLOB avec un argument
de taille
Regardez également le chapitre syntaxe dans le manuel MySQL pour
confirmer que votre syntaxe est correcte.
This is the way to create a multi-columns index. If you want two
indexes,
create the first one when creating the table, save, then display the
table
properties and click the Index link to create the other index.
Since version 2.2.3, you have a checkbox for each column that can be
null.
Before 2.2.3, you had to enter "null", without the quotes, as the
column's value. Since version 2.5.5, you have to use the checkbox to get
a
real NULL value, so if you enter "NULL" this means you want a
literal NULL in the column, and not a NULL value (this works in PHP4).
Cliquer sur le nom d'une base de données ou d'une table dans le
cadre
de gauche, les propriétés seront affichées. Ensuite,
dans le menu, cliquer sur « Exporter », vous pouvez
exporter la structure, les données ou les deux. Cela
générera des requêtes SQL qui pourront être utilisées pour
recréer votre base de données ou votre table.
Vous aurez besoin de choisir « Transmettre », de sorte
que phpMyAdmin puisse transmettre le fichier d'exportation résultant
à votre station. En fonction de votre configuration PHP, vous verrez
les options de compression de votre fichier d'exportation. Voir
également la variable de configuration $cfg['ExecTimeLimit'].
Pour une aide supplémentaire sur ce sujet, chercher le mot
« export » dans ce document.
Cliquer sur le nom d'une base de données dans le cadre de gauche,
les
propriétés seront affichées. Sélectionnez
« Importer » dans la liste des onglets dans le cadre
de droite (ou « SQL » si votre version de phpMyAdmin
est antérieure à la version 2.7.0). Dans la section
« Emplacement du fichier texte », saisissez votre nom
de fichier d'exportation, ou cliquez sur le bouton Afficher. Puis
cliquez
sur Exécuter.
À partir de la version 2.7.0, le moteur d'importation a
été ré-écrit; si possible, il est
suggéré de mettre à jour votre version pour tirer parti
des nouvelles fonctionnalités.
Pour de l'aide supplémentaire sur ce sujet, cherchez le mot
« transm » dans ce document.
Voici un exemple avec les tables personnes, villes et pays, toutes
situées dans la base de données mabdd. Si vous n'avez pas de
table pma_relation, créez-la comme cela est décrit
dans la section Configuration. Ensuite, créez
les tables d'exemple :
CREATE TABLE REL_pays (
code_pays char(1) NOT NULL default '',
description varchar(10) NOT NULL default '',
PRIMARY KEY (code_pays)
) TYPE=MyISAM;
INSERT INTO REL_pays VALUES ('C','Canada');
CREATE TABLE REL_personnes (
id tinyint(4) NOT NULL auto_increment,
nom_personne varchar(32) NOT NULL default '',
code_ville varchar(5) default '0',
code_pays char(1) NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM;
INSERT INTO REL_personnes VALUES (11,'Marc', 'S', '');
INSERT INTO REL_personnes VALUES (15,'Paul', 'S', 'C');
CREATE TABLE REL_villes (
code_ville varchar(5) NOT NULL default '0',
description varchar(30) NOT NULL default '',
PRIMARY KEY (code_ville)
) TYPE=MyISAM;
INSERT INTO REL_villes VALUES ('S','Sherbrooke');
INSERT INTO REL_villes VALUES ('M','Montréal');
Pour configurer les liens appropriés et afficher
l'information :
- sur la table « REL_personnes » cliquer sur Structure,
puis sur Gestion des relations
- dans Relié à, pour « code_ville »
choisir « REL_villes->code_ville »
- dans relié à, pour « code_pays » choisir
« REL_pays->code_pays »
- sur la table « REL_villes » cliquer sur Structure,
puis Gestion des relations
- in "Choose column to display", choose "description"
- répétez les deux précedentes étapes pour la
table « REL_pays »
Puis tester comme suit :
- cliquer sur votre nom de base de données dans le cadre de gauche
- choisir « Requête »
- utilisez les tables : personnes, villes, pays
- cliquer sur « Mise-à-jour de la requête »
- In the columns row, choose persons.person_name and click the
"Show" tickbox
- faites la même chose pour villes.description et pays.description
dans
les deux autres colonnes
- cliquer sur « Mise-à-jour de la requête »
et vous verrez dans la boîte de requête que la jointure correcte
a été générée
- cliquer sur « Exécuter la requête »
À partir de l'exemple précédent, créez la table
pma_table_info comme expliqué dans la section Configuration,
puis parcourez votre table personnes, et
déplacez votre souris au-dessus du code ville ou du code pays.
See also FAQ 6.21 for an additional feature that "display
column" enables: drop-down list of possible values.
D'abord vous devez renseigner les variables de configuration
« relation », « table_coords »
et « pdf_pages ».
Ensuite, réfléchissez à la mise en page de votre
schéma : quelles tables iront sur quelles pages.
- Sélectionnez votre base de données dans le cadre de gauche.
- Choisissez « Opérations » dans la barre de
navigation en haut.
- Choisissez « Préparer le schéma en PDF »
vers le bas de la page.
- Entrez le nom de la première page pdf et cliquez sur
« Exécutez » Vous pouvez également
utiliser la « Mise en page automatique », qui placera
sur votre page toutes les tables qui sont liées).
- Sélectionnez le nom de la nouvelle page (en vous assurant que le
bouton radio « Modifier » est
sélectionné) et cliquez sur
« Exécuter ».
- Sélectionnez une table dans la liste, entrez ses coordonnées
et cliquez sur « Enregistrer ».
Les coordonnées sont relatives; votre diagramme s'ajustera
automatiquement à l'échelle de la page. Lors du placement
initial des tables, choisissez juste des coordonnées -- disons
50x50. Après avoir cliqué sur
« Enregistrer », vous pouvez utiliser l'éditeur
graphique pour placer correctement
l'élément.
- Quand vous voudrez regarder votre PDF, assurez-vous d'abord de
cliquer sur
le bouton « Enregistrer » sous la liste des tables et
des coordonnées pour enregistrer les changements que vous y avez
fait. Puis faites défiler vers le bas, sélectionnez les
options PDF que vous voulez et cliquer sur
« Exécuter ».
- Internet Explorer pour Windows peut proposer un nom de fichier
incorrect
quand vous essayez d'enregistrer le fichier PDF
généré. Quand vous enregistrez un fichier PDF
généré, assurez-vous que son nom se termine par
« .pdf », par exemple
« schema.pdf ». Les navigateurs sur les autres
systèmes d'exploitation et les autres navigateurs sous Windows n'ont
pas ce problème.
Non, c'est MySQL qui fait des changements
silencieux
de type de colonne.
Si vous ne mettez pas de barre oblique inverse (backslash) avant le
trait de
soulignement, c'est un méta-caractère pour les autorisations,
et le trait de soulignement signifie « tout
caractère ». Aussi, si le nom de base de données
est « john_db », l'utilisateur aura des droits sur
john1db, john2db...
Si vous mettez une barre oblique inverse devant le trait de
soulignement,
cela signifie que le nom de la base de données aura un vrai trait de
soulignement.
Il signifie « moyenne ».
Structure :
- 'ADD DROP TABLE' ajoutera une ligne disant à MySQL de supprimer la
table si elle existe déjà pendant l'importation. Cela ne
supprime PAS la table après votre export, cela n'affecte que le
fichier d'importation.
- « Ajouter "IF NOT EXISTS" » créera seulement la
table si elle n'existe pas. Sinon, vous pouvez obtenir une erreur si le
nom
de table existe mais qu'elle a une structure différente.
- « Inclure la valeur courante de l'AUTO_INCREMENT »
assure que la valeur AUTO_INCREMENT (s'il y en a une) sera incluse dans
la
sauvegarde.
- "Enclose table and column names with backquotes" ensures that
column and table names formed with special characters are protected.
- "Inclure sous forme de commentaires" inclut les commentaires des
colonnes, les relations et les types MIME définis dans la base de
données PMA-DB dans le fichier d'exportation en tant que commentaires
SQL (/* xxx */).
Données :
- « Insertions complètes » ajoutes les noms de
colonne sur chaque commande INSERT, pour une meilleure documentation
(mais
le fichier résultant est plus gros).
- « Insertions étendues » fournit une fichier
d'exportation plus petit en utilisant seulement une fois INSERT et le
nom de
la table.
- « Insertions avec délais (DELAYED) » sont
très bien expliqués dans le Manuel
MySQL.
- « Ignorer les erreurs de doublons (INSERT IGNORE) »
traite les erreurs comme des avertissements. À nouveau, vous pourrez
trouver plus de détails dans le Manuel MySQL,
mais
en gros, avec cette option, les valeurs invalides sont ajustées et
insérées plutôt que de provoquer l'échec de la
déclaration tout entière.
C'est une mauvaise idée, car dans MySQL la syntaxe
« database.table » est la manière normale de
référencer une base de données et un nom de table.
Pire, MySQL vous laissera normalement créer cette base de
données avec un point, mais alors vous ne pourrez pas travailler
avec, ni la supprimer.
Pour l'utiliser, vous avez besoin d'une version très récente
de PHP, la version 4.3.0 est recommandée, avec la gestion de XML, PCRE et PEAR. Sur votre système, en mode
ligne de commande, exécuter « pear install Net_Socket
Net_URL HTTP_Request Mail_Mime Net_DIME SOAP » pour obtenir
les modules PEAR nécessaires à son utilisation.
Sur une version pear plus récente, j'ai eu des problèmes car
Net_DIME était en version beta, aussi, cette simple commande
« pear -d preferred_state=beta install -a
SOAP » a installé tous les modules
nécessaires.
Si vous utilisez le Validateur, soyez conscient que toute requête
SQL que vous exécutez
sera stockée de manière anonyme (noms de base de
données/table/colonne, chaînes, nombres sont remplacés
avec des valeurs génériques). Le Mimer SQL Validator, est sous copyright © 2001 Upright
Database Technology. Nous l'utilisons en tant que service SOAP gratuit.
The right way to do this, is to create the column without any
indexes, then
display the table structure and use the "Create an index"
dialog. On this page, you will be able to choose your BLOB column, and
set a
size to the index, which is the condition to create an index on a BLOB
column.
Vous pouvez utiliser Ctrl + flèches de direction (Option +
flèches de direction dans Safari) sur la plupart des pages remplies
de champs modifiables (structure de table, ligne modifiable, etc.) (ceci
doit être activé dans la configuration - voir $cfg['CtrlArrowsMoving'])).
Vous pouvez
également consulter la directive $cfg['DefaultPropDisplay'] ('vertical') et voir
si
cela vous aide pour les modifications.
Slow down :). Defining mimetypes is of no use, if you can't put
transformations on them. Otherwise you could just put a comment on the
column. Because entering your own mimetype will cause serious syntax
checking issues and validation, this introduces a high-risk
false-user-input
situation. Instead you have to initialize mimetypes using functions or
empty
mimetype definitions.
De plus, vous avez une vue d'ensemble de tous les types mime
disponibles. Qui connaît tous ces types mime par coeur de sorte qu'il
puisse les entrer à volonté ?
Toute requête que vous exécutez peut être stockée
en tant que signet sur la page où sont affichés les
résultats. Vous trouverez un bouton intitulé 'Conserver cette
requête dans les signets' juste à la fin de la page.
Dès que vous avez stocké un signet, il est relié
à la base de données dans laquelle vous avez
exécuté la requête. Vous pouvez maintenant avoir
accès à une liste déroulante de signets sur chacune des
pages sur lesquelles la boîte de requête apparaît sur
cette base de données.
Depuis phpMyAdmin 2.5.0, vous pouvez également stocker des variables
pour les signets. Utilisez juste la chaîne /*['VARIABLE']*/
n'importe où dans votre requête. Tout ce qui est mis dans la
boîte de saisie valeur sur la page de la boîte de
requête remplacera la chaîne
« /*['VARIABLE']*/ » dans votre requête
stockée. Notez que vous DEVEZ créer une requête valide,
sinon elle ne sera même pas stockée dans votre base de
données.
Rappelez-vous également que tout ce qui se trouve à
l'intérieur de la chaîne /*['VARIABLE']*/ pour votre
requête restera en l'état, mais sera débarassé
des caractères /**/ . Donc vous pouvez utiliser :
/*, ['VARIABLE'] AS myname */
qui sera reproduit en
, VARIABLE as myname
dans votre requête, où VARIABLE est la chaîne que vous
avez saisie dans la boîte de saisie. Si une chaîne vide est
fournie, aucun remplacement ne sera effectué.
Un exemple plus complexe. Disons que vous avez stocké cette
requête :
SELECT Name, Address FROM addresses WHERE 1 /* AND Name LIKE
'%['VARIABLE']%' */
Imaginons que vous saisissiez « phpMyAdmin » comme
variable pour votre requête stockée, la requête
complète sera :
SELECT Name, Address FROM addresses WHERE 1 AND Name LIKE
'%phpMyAdmin%'
Vous pouvez utiliser de multiples occurrences de /*['VARIABLE']*/
dans une seule requête.
REMARQUEZ L'ABSENCE D'ESPACES à l'intérieur de la
construction « /**/ ». Tout espace
inséré sera plus tard également inséré en
tant qu'espace dans votre requête et peut conduire à des
résultats inattendus, particulièrement en utilisant
l'expansion de variable dans une expression « LIKE
'' ».
Votre requête initiale que vous voulez stocker comme signet doit
produire au moins une ligne de résultat pour pouvoir être
stockée. Vous aurez peut-être besoin de tâtonner pour
bien positionner les commentaires « /**/ ».
Vous pouvez inclure simplement une table dans vos documents
LATEX , un exemple de document
minimaliste
devrait ressembler à celui qui suit (en supposant que vous avez une
table exportée dans le fichier table.tex) :
\documentclass{article} % ou toute classe que vous désirez
\usepackage{longtable} % pour afficher la table
\begin{document} % début du document
\include{table} % inclure la table exportée
\end{document} % fin du document
Faire la mise à jour vers MySQL 4 donne habituellement aux
utilisateurs les privilèges globaux suivants : CREATE TEMPORARY
TABLES, SHOW DATABASES, LOCK TABLES. Ces privilèges permettent
également aux utilisateurs de voir tous les noms de bases de
données. Voir ce rapport de
bogue.
Donc si vos utilisateurs n'ont pas besoin de ces privilèges, vous
pouvez les supprimer et la liste de leurs bases de données sera
raccourcie.
You have to setup appropriate links between the tables, and also
setup the
"display column" in the foreign table. See FAQ 6.6 for an example.
Then,
if there are 100 values or less in the foreign table, a drop-down list
of
values will be available. You will see two lists of values, the first
list
containing the key and the display column, the second list containing
the
display column and the key. The reason for this is to be able to type
the
first letter of either the key or the display column.
Pour 100 valeurs et plus, une fenêtre distincte apparaîtra, pour
naviguer dans les valeurs des clés étrangères et en
choisir une. Pour changer la limite de 100, consulter $cfg['ForeignKeyMaxLimit'].
Oui. Si un signet a le même label qu'un nom de table, il sera
exécuté.
You can use CSV for
Microsoft
Excel, which works out of the box, but phpMyAdmin supports direct export
to
Microsoft Excel version 97 and newer. For this to work, you need to set
$cfg['TempDir'] to a
place where
the web server user can write (for example './tmp').
Pour créer un répertoire temporaire sur un système
basé sur UNIX, vous pouvez faire ceci :
cd phpMyAdmin
mkdir tmp
chmod o+rwx tmp
La migration automatique des commentaires de colonne de style pmadb
d'une
table vers le format natif est effectuée chaque fois que vous entrez
dans la page Structure pour cette table.
D'abord, pour des informations sur le streaming de BLOB, visiter la
page blobstreaming.org. Nous
gérons
actuellement le streaming si vous utilisez MySQL 5.1 avec les moteurs de
stockage PBXT et PBMS.
- Dans le fichier config.inc.php, votre nom d'hête doit être
défini
avec un nom de domaine totalement qualifié (FQDN) plutôt que quelquee
chose
comme « localhost ».
- Une limitation actuelle est que pour votre première connexion via
phpMyAdmin
sur un serveur tout juste démarré doit être faite avec un compte ayant
le
privilège SUPER.
- Sur votre base de données cible, allez dans Opérations et dans la
section
« Répertoire BLOB », cliquez sur « Activer ». Ceci
crée
les tables système PBMSdans votre base de données.
- Assurez-vous que votre table cible est sous le moteur de stockage
PBXT et a
une colonne LONGBLOB.
- Quand vous insérez ou mettez à jour une ligne dans cette table,
cochez
l'option « Télécharger vers le dépôt BLOB » ; sinon, le
téléchargement se fera directement dans votre colonne au lieu du
répertoire.
- Enfin, quand vous parcourrez votre table, vous verrez un lien dans
votre
colonne poru voir les données, par exemple « Afficher
l'image ». Un en-tête contenant le type MIME correct sera envoyé à
votre navigateur ; ce type MIME a été stocké lors du
téléchargement,
mais s'il est incorrect, il est possible de le modifier en cliquant sur
le
type MIME affiché.
Projet phpMyAdmin
Notre Bug Tracker est situé sur http://sourceforge.net/projects/phpmyadmin/
sous la section Bugs.
Mais s'il vous plaît, veuillez d'abord en discuter avec d'autres
utilisateurs :
http://sourceforge.net/projects/phpmyadmin/ (puis choisir Forums).
Always use latest Git version of po file to translate. You can
optionally
translate online at our translation
server where you can also get latest po files and merge them with
your
translations. For creating new translation simply use
po/phpmyadmin.pot and generate po/LANG_CODE.po
for
your language (you can use msginit -i po/phpmyadmin.pot -l
LANG_CODE
--no-translator -o po/LANG_CODE.po to do this) or ask on mailing
list
to add the translation to the web interface. More details are available
on
our
wiki.
Veuillez noter que nous essayons de ne pas utiliser d'entités HTML
comme é dans les traductions, puisque nous utilisons le bon
jeu
de caractères dans le fichier. Avec les entités HTML, le
texte dans les messages JavaScript pourrait ne pas être affiché
correctement. Cependant, il y a certaines entités qui ont besoin d'y
figurer, pour les guillemets anglais « " » , les
espaces non sécables, le « et » commercial
« & » , inférieur à
« < » , supérieur à
« > ».
Vous pouvez donc joindre votre traduction, en tant que fichier zip
pour
éviter de perdre les caractères spéciaux, sur le
traqueur de traduction sur sourceforge.net.
Ce serait une bonne idée de vous abonner à la liste de
diffusion phpmyadmin-translators, parce que c'est là que nous
demandons la traduction de nouveaux messages.
La méthode suivante est préférable pour les nouveaux
développeurs :
- fetch the current git repository over anonymous git:
git clone
git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin
- ajouter votre travail
- generate patch with your changes: git diff > xxx.diff
- submit your patch via the patch
tracker
of the phpMyAdmin project.
More details on git are available on our wiki.
Write access to the repository is granted only to experienced
developers who
have already contributed something useful to phpMyAdmin.
Veuillez également consulter la section
Développeurs.
Sécurité
Veuillez consulter http://www.phpmyadmin.net/home_page/security.php.
Si vous utilisez un serveur Web Apache, phpMyAdmin exporte les
informations
sur l'authentification vers l'environnement Apache et peut être utilisé
dans
les logs d'Apache. Il y a actuellement deux variables
disponibles :
userID
- Le nom de l'utilsateur actif en cours(il n'a pas besoin d'être
connecté).
userStatus
- L'état de l'utilisateur actif en cours, soit
ok
(l'utilisateur
est connecté), soit mysql-denied (MySQL a refusé la
connexion
de l'utilisateur), soit allow-denied (l'utilisateur a été
rejeté par les règles allow/deny), soit root-denied (root
est
refusé dans la configuration), soit empty-denied (les mots
de
passes vides sont interdits).
La directive LogFormat pour Apache peut ressembler à ce
qui
suit :
LogFormat "%h %l %u %t \"%r\" %>s %b \
\"%{Referer}i\" \"%{User-Agent}i\" %{userID}n %{userStatus}n" pma_combined
Vous pouvez alors utiliser n'importe quel outil d'analyse de logs
pour
détecter des tentatives d'intrusion.
Synchronisation
Vous pouvez maintenant synchroniser des bases de données ou des
tables dans
phpMyAdmin en utilisant la fonctionnalité « Synchroniser ».
Elle
vous permet de vous connecter en local ou sur des serveurs distants.
Ceci
nécessite de saisir le nom du serveur, l'utilisateur, le mot de passe,
le
port et le nom de la base de données. Par conséquent, vous pouvez
maintenant
synchroniser vos bases de données situées sur le même serveur ou sur un
serveur distant.
This feature is helpful for developers who need to replicate their
databases’ structure as well as data. Moreover, this feature not only
helps
replication but also facilitates the user to keep his/her database in
sync
with another database. Other than the full database, certain tables of
the
databases can also be synchronized.
You need to fill in the host name of the server, the username and
password
of an user account already there in MySQL. Port is by default populated
with
3306 (MySQL default port). Then the name of the database should be
mentioned
at the end. All the information other than the port needs to be filled
explicitly for the source as well as target servers.
After successfully passing through the authentication phase, the source
and
target database table names will be displayed. It will be a tabular
representation.
On the left, are listed the source database table names. Some of
the names
have a ‘+’ plus sign preceding them. This shows that these tables are
only
present in source database and they need to be added to the target
database
in order to synchronize the target database. The tables whose names are
not
preceded by a ‘+’ sign are already present in the target database.
On the right, are listed the target database table names. There are few
table names that have "(not present)" appended after their names. This
means
that these tables are to be created in target database in order to
synchronize target database with source database. Some tables’ names
have a
‘-’ minus sign preceding them. This shows that these tables are only
present
in target database and they will remain unchanged in the target
database. The column in the middle shows the difference between the
source
and target corresponding tables.
The difference is depicted by the red and green buttons with S and D
letters, indicating that either Structure or Data are not up to date. By
clicking on them, they will turn grey, what means that they will be
synchronised.
Information pour les développeurs
phpMyAdmin est un logiciel Open Source, aussi vous êtes invités
à y contribuer. Beaucoup de fonctionnalités ont
été écrites par d'autres personnes et vous aussi vous
pouvez aider à faire de phpMyAdmin un outil utile.
Si vous projetez de contribuer aux sources, veuillez lire les
informations
suivantes :
- Tous les fichiers y compris libraries/header.inc.php
(mise en page),
libraries/common.lib.php (fonctions communes) et
config.inc.php.
Seules les données de configuration doivent se trouver dans le
fichier config.inc.php. Veuillez le gardez exempt de tout autre
code.
Les fonctions d'utilisation commune doivent être ajoutées
à libraries/common.lib.php et les plus spécifiques
peuvent être ajoutées dans une bibliothèque
stockée dans le sous-répertoire libraries.
- Évidemment, vous êtes libres d'utiliser le style de codage que
vous voulez. Mais s'il vous plaît, veuillez garder votre code aussi
simple que possible : les débutants utilisent phpMyAdmin comme
application d'exemple.
Autant que possible, nous voulons que les scripts soient
conformes aux
règles XHTML1.0 et CSS2 d'une part, et aux normes de codage PEAR d'autre part. Veuillez y
prêter attention.
- Please enable showing PHP errors and warnings by the
$cfg['Error_Handler']['display']
configuration directive.
- Veuillez respecter les conventions de nommage de fichiers. Ce
qui est
relatif aux tables s'écrit tbl_*.php, le code relatif aux
bases de données s'écrit db_*.php, les outils relatifs
aux serveurs s'écrivent server_*.php et ainsi de suite.
- Please use gettext wrappers around all messages (
__('Some
text') or _ngettext() function). To translate them,
you
need to call scripts/update-po script. To use translated
messages, call scripts/generate-mo, which generates binary
files read by Gettext.
- Si vous voulez être vraiment utile, ajoutez une entrée dans le
fichier ChangeLog.
-
L'extension DBG (PHP Debugger
DBG) est
maintenant gérée par phpMyAdmin pour permettre aux
développeurs de mieux déboguer et analyser leur code.
Veuillez consulter les options de configuration de $cfg['DBG']* pour plus
d'informations.
Ceci est dédié à la mémoire de la navette
spatiale Columbia (STS-107) qui fut détruite lors de sa
rentrée dans l'atmosphère de la Terre et à la
mémoire des hommes et des femmes courageux qui ont donné leur
vie pour les habitants de la Terre.
Copyright
Copyright (C) 1998-2000 Tobias Ratschiller <tobias_at_ratschiller.com>
Copyright (C) 2001-2010 Marc Delisle <marc_at_infomarc.info>
Olivier Müller <om_at_omnis.ch>
Robin Johnson <robbat2_at_users.sourceforge.net>
Alexander M. Turek <me_at_derrabus.de>
Michal Cihar <michal_at_cihar.com>
Garvin Hicking <me_at_supergarv.de>
Michael Keck <mkkeck_at_users.sourceforge.net>
Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
[check credits for more details]
Ce programme est un logiciel libre; vous pouvez le redistribuer et/ou le
modifier en respectant les termes de la GNU General Public License
version 2
(Licence publique générale GNU) telle qu'elle est publiée par la Free
Software Foundation (Fondation pour le logiciel libre).
Ce programme est distribué en espérant être utile, mais SANS AUCUNE
GARANTIE; sans même la garantie implicite COMMERCIALE ou D'ADÉQUATION
POUR
UNE UTILISATION PARTICULIÈRE. Voir la GNU General Public License pour
plus
de renseignements.
Vous devriez avoir reçu une copie de la GNU General Public License avec
ce
programme ; si ce n'est pas le cas, écrivez à Free Software
Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Crédits
Crédits, par ordre chonologique
- Tobias Ratschiller <tobias_at_ratschiller.com>
- créateur du projet phpMyAdmin
- mainteneur de 1998 à l'été 2000
- Marc Delisle <marc_at_infomarc.info>
- version multilingue
- diverses corrections et améliorations
- analyseur SQL(la
plupart)
- mainteneur actuel du projet
- Olivier Müller <om_at_omnis.ch>
- a démarré le projet sur Sourceforge en mars 2001
- a synchronisé différents dépôts CVS avec de nouvelles
fonctionnalités et
corrections de bogues
- améliorations du système multilingue, sélection par langage
dynamique
- mainteneur actuel du projet
- beaucoup de corrections de bogues et d'améliorations
- Loïc Chapeaux <lolo_at_phpheaven.net>
- ré-écriture et optimisation JavaScript, DHTML et DOM
- ré-écriture des scripts PEAR pour s'adapter aux standards de codage et
génération
de codes conformes XHTML1.0 et CSS2
- amélioration du système de détection de langue
- beaucoup de corrections de bogues et d'améliorations
- Robin Johnson <robbat2_at_users.sourceforge.net>
- contrôles de maintenance de la base de données
- code pour le type de table
- authentification hôte IP
Allow/Deny
- configuration en base de données (non-terminée)
- analyseur SQL et
impression
élégante
- validateur SQL
- beaucoup de corrections de bogues et d'améliorations
- Armel Fauveau <armel.fauveau_at_globalis-ms.com>
- fonctionnalité des signets
- fonctionnalité d'export multiple
- fonctionnalité d'export gzip
- fonctionnalité d'export zip
- Geert Lund <glund_at_silversoft.dk>
- diverses corrections
- modérateur du précédent forum utilisateurs de phpMyAdmin sur
phpwizard.net
- Korakot Chaovavanich <korakot_at_iname.com>
- fonctionnalité « insérer comme une nouvelle ligne »
- Pete Kelly <webmaster_at_trafficg.com>
- ré-écriture et correction du code d'export
- corrections de bogue
- Steve Alberty <alberty_at_neptunlabs.de>
- ré-écriture du code d'export pour PHP4
- statistiques sur les tables MySQL
- corrections de bogue
- Benjamin Gandon <gandon_at_isia.cma.fr>
- auteur principal de la version 2.1.0.1
- corrections de bogue
- Alexander M. Turek <me_at_derrabus.de>
- compatibilité MySQL 4.0 / 4.1 / 5.0
- interface d'abstraction de base de données (PMA_DBI) avec support
MySQLi
- administration des privilèges
- exports XML
- diverses fonctionnalités et corrections
- mises à jour du fichier de langue allemand
- Mike Beck <mike.beck_at_web.de>
- jointures automatiques dans QBE
- mise en lien des colonnes dans printview
- vue relationnelle
- Michal Cihar <michal_at_cihar.com>
- fonctionnalité de création et d'affichage améliorés d'index
- fonctionnalité pour utiliser un jeu de caractères différent de
celui de
MySQL pour l'HTML
- améliorations de la fonctionnalité d'export
- diverses fonctionnalités et corrections
- mises à jour du fichier de langue tchèque
- Christophe Gesché pour « MySQL Form Generator for PHPMyAdmin »
(http://sf.net/projects/phpmysqlformgen/)
- a suggéré le correctif pour l'affichage de table multiple
- Garvin Hicking <me_at_supergarv.de>
- correctif pour l'affichage vertical des lignes de table
- fenêtre de requête JavaScript + hitorique SQL
- améliorations des commentaires de colonnes et de bases de données
- transformations MIME pour les colonnes
- utilisation d'alias personnalisés pour les bases de données dans
le cadre de
gauche
- affichage des tables hiérarchiques/imbriquées
- panneau PDF pour la
distribution WYSIWYG des relations PDF
- nouveau jeu d'icônes
- affichage vertical de la colonne propriétés de la page
- corrections de bogues, fonctionnalités, assistance, ajout pour
l'allemand
- Yukihiro Kawada <kawada_at_den.fujifilm.co.jp>
- fonctionnalité de conversion d'encodage kanji japonais
- Piotr Roszatycki <d3xter_at_users.sourceforge.net> and Dan
Wilson
- Mode d'authentification « cookie »
- Axel Sander <n8falke_at_users.sourceforge.net>
- fonctionnalité relations-liens de table
- Maxime Delorme <delorme.maxime_at_free.fr>
- Olof Edlund <olof.edlund_at_upright.se>
- serveur de validation SQL
- Ivan R. Lanin <ivanlanin_at_users.sourceforge.net>
- logo phpMyAdmin (jusqu'à juin 2004)
- Mike Cochrane <mike_at_graftonhall.co.nz>
- bibliothèque Blowfish du projet Horde
- Marcel Tschopp <ne0x_at_users.sourceforge.net>
- support MySQLi
- beaucoup de corrections de bogues et d'améliorations
- Michael Keck <mkkeck_at_users.sourceforge.net>
- re-conception pour la version 2.6.0
- logo bateau à voile de phpMyAdmin (juin 2004)
- Mathias Landhäußer
- représentation à des conférences
- Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
- améliorations de l'interface
- diverses corrections de bogues
- Ivan A Kirillov
- nouveau Designer de relations
- Raj Kissu Rajandran (Google Summer of Code 2008)
- Piotr Przybylski (Google Summer of Code 2008)
- amélioration du script d'installation
- Derek Schaefer (Google Summer of Code 2009)
- amélioration du système d'import
- Alexander Rutkowski (Google Summer of Code 2009)
- Zahra Naeem (Google Summer of Code 2009)
- Fonctionnalité de synchronisation
- Tomas Srnka (Google Summer of Code 2009)
- Gestion de la réplication
et aussi les personnes qui ont contribué à des changements,
améliorations,
corrections de bogues ou support d'une nouvelles langues, mineurs,
depuis la
version 2.1.0 :
Bora Alioglu, Ricardo ?, Sven-Erik Andersen, Alessandro Astarita,
Péter Bakondy, Borges Botelho, Olivier Bussier, Neil Darlow, Mats
Engstrom, Ian Davidson, Laurent Dhima, Kristof Hamann, Thomas Kläger,
Lubos Klokner, Martin Marconcini, Girish Nair, David Nordenberg, Andreas
Pauley, Bernard M. Piller, Laurent Haas, "Sakamoto", Yuval Sarna,
www.securereality.com.au, Alexis Soulard, Alvar Soome, Siu Sun, Peter
Svec,
Michael Tacelosky, Rachim Tamsjadi, Kositer Uros, Luis V., Martijn
W. van der Lee, Algis Vainauskas, Daniel Villanueva, Vinay, Ignacio
Vazquez-Abrams, Chee Wai, Jakub Wilk, Thomas Michael Winningham, Vilius
Zigmantas, "Manuzhai".
Crédits originaux de la version 2.1.0
Ce travail est basé sur MySQL-Webadmin de Peter Kuppelwieser.
C'était son
idée de créerune interface Web pour utiliser MySQL en utilisant PHP3.
Bien
que je n'ai pas utilisé son code source, je lui ai emprunté des
concepts. phpMyAdmin a été créé car Peter m'avait dit qu'il aller
arrêter le
développement de son (super) outil.
Remerciements à
- Amalesh Kempf <ak-lsml_at_living-source.com> qui a contribué
au code
pour la vérification lors de la suppression d'une table ou d'une base de
données. Il a aussi suggéré de pouvoir être capable de spécifier la clé
primaire sur tbl_create.php3. Dans la version 1.1.1, il a contribué à
ldi_*.php3-set (import de fichiers texte) et au rapport de bogue. Plus
beaucoup d'autres petites améliorations.
- Jan Legenhausen <jan_at_nrw.net>: Il a fait beaucoup des
changements
introduits dans la version 1.3.0 (dont certains très importants comme
l'authentification). Dans la version 1.4.1, il a amélioré la
fonctionnalité
d'export de table. Plus des corrections de bogues et l'aide.
- Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca> a permis
la
localisation de phpMyAdmin en extrayant les chaînes dans un fichier
séparé. Il a aussi contribué à la traduction française.
- Alexandr Bravo <abravo_at_hq.admiral.ru> who contributed
tbl_select.php3, a feature to display only some columns from a table.
- Chris Jackson <chrisj_at_ctel.net> a jouté le support de
fonctions
MySQL dans tbl_change.php3. Il a aussi ajouté la fonctionnalité « Query
by
Example » dans la version 2.0.
- Dave Walton <walton_at_nordicdms.com> a ajouté le support
pour des
serveurs mutliples et est un contributeur régulier pour la correction de
bogues.
- Gabriel Ash <ga244_at_is8.nyu.edu> a contribué aux
fonctionnalités
d'accès aléatoires dans la version 2.0.6.
Les personnes suivantes ont contribué à des changements,
améliorations,
corrections de bogues ou support d'une nouvelle langue, mineurs :
Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas
Kleemann,
Alexander Leidinger, Kiko Albiol, Daniel C. Chao, Pavel Piankov, Sascha
Kettler, Joe Pruett, Renato Lins, Mark Kronsbein, Jannis Hermanns,
G. Wieggers.
Et merci à tous les autres qui m'ont envoyé des suggestions par
courriel,
des rapports de bogue ou juste des retours d'utilisation.
Glossaire
de Wikipedia, l'encyclopédie libre
- .htaccess -
Les fichiers
.htaccess sont des fichiers de configuration des serveurs Web
Apache. Ils peuvent être placés dans n'importe quel
répertoire du site Web (la configuration s'applique au
répertoire et à tous les répertoires qu'il contient) et
peuvent être modifiés alors que le serveur est en cours
d'exécution.
- Blowfish -
Blowfish est un algorithme de chiffrement symétrique
(c-à-d. « à clef
secrète ») par blocs conçu par Bruce Schneier
en 1993. Il tire son nom du poisson-lune japonais (ou fugu), qui
en
est également l'emblème.
- Navigateur
Web -
Un navigateur Web est un logiciel conçu pour consulter le
World Wide Web. Techniquement, c'est un client HTTP.
- bzip2 - bzip2
est un
logiciel libre de compression de données sous UNIX qui utilise
l'algorithme de Burrows-Wheeler avec le codage de Huffman. Le taux de
compression est meilleur que celui de l'outil classique gzip et tend
à le remplacer pour la distribution de logiciels UNIX. Son extension
est
.bz2.
- CGI
(Common
Gateway Interface) - La Common Gateway Interface
(littéralement « Interface passerelle
commune »), généralement abrégée
CGI, est une technologie des serveurs HTTP. Ce dernier, au lieu
de
renvoyer le contenu d'un fichier (image ou HTML), exécute un
programme puis retourne le contenu généré, comme s'il
s'agissait d'un contenu de fichier.
- Changelog -
Un
ChangeLog, littéralement Journal des modifications (en
anglais), désigne souvent un fichier qui contient
l'énumération de ce que les personnes collaborant à un
projet ont effectué comme travail sur ce dernier. Ce fichier est
souvent un simple fichier texte, assez brut, avec éventuellement des
sections correspondant aux différentes sous-parties du projet.
- Client-serveur
-
L'architecture client-serveur désigne un mode de communication
entre des ordinateurs ou des logiciels. Les mots
« serveur » et « client »
peuvent soit désigner les ordinateurs, on parle alors de serveur
informatique et de poste client ; soit désigner les logiciels
fonctionnant sur ces ordinateurs, on parle alors de logiciel serveur ou
de
logiciel client.
- Champ
- Un
champ ou rubrique de base de données est la plus petite
information d'une table de base de données qui représente en
colonne une catégorie d'information, comme un nom ou une adresse.
- Cookie
- En informatique, un cookie est défini par le HTTP
comme étant une suite d'informations envoyée par un serveur
HTTP à un client HTTP, que ce dernier retourne lors de chaque
interrogation du même serveur HTTP.
- CSV - CSV
est un
format informatique ouvert représentant des données
tabulaires. CSV est l'abréviation de l'anglais
« comma-separated values », valeurs
séparées par des virgules.
- DB - Voir base de données.
- base de
données - Une base de données,
généralement appelée BD est un ensemble
structuré et organisé permettant le stockage magnétique
de grandes quantités d'informations afin d'en faciliter
l'exploitation (ajout, mise à jour, recherche de données).
- Engine - look at Storage
Engines.
- Extension -
un module
PHP qui étend PHP avec des fonctionnalités
supplémentaires.
- FAQ (Foire Aux
Questions) -
La Foire Aux Questions, ou FAQ, (acronyme anglais pour
Frequently Asked Questions, Questions
fréquemment posées) tient de la tradition sur Internet. Ce
terme désigne au départ les synthèses
périodiques des messages récurrents postés sur Usenet
dans les news groups afin d'éviter que les mêmes questions
soient toujours reposées.
- Colonne - En
informatique, la colonne dans une base de données est une
forme d'organisation des données ;
- Cléétrangère
- Une clé étrangère est un champ de
base de données de type clé primaire inscrit dans une table
secondaire ou table fille permettant la jointure à la table primaire
ou table parent.
- FPDF (FreePDF) - La
bibliothèque
PDF libre.
- GD
Graphics Libraryen - Une bibliothèque de Thomas
Boutell et d'autres pour la manipulation dynamique d'images.
- GD2 - Voir GD Graphics Library.
- Gzip - Gzip,
pour GNU
zip, est un logiciel libre, standard ouvert, utilitaire de compression,
qui
a été créé pour remplacer le programme
compress d'Unix.
- Hôte -
Toute
machine connectée à un réseau informatique, un
nœud qui a un nom d'hôte.
- Nom
d'hôteen - Le nom unique par lequel est connu un
équipement attaché au réseau sur celui-ci.
- HTTP (HyperText
Transfer
Protocol) - Le Hypertext Transfer Protocol,
abrégé HTTP, littéralement
« protocole de transfert hypertexte », est un
protocole de communication informatique client-serveur
développé pour le World Wide Web.
- HTTPS - HTTPS
(Secured) est la variante du HTTP
sécurisé avec les protocoles SSL ou TLS.
- IIS (Internet
Information
Services) - Internet Information Services, plus connu sous
l'abréviation IIS, est un serveur HTTP et/ou FTP
créé par Microsoft pour ses systèmes d'exploitation
Windows.
- Indexen
- Une
fonctionnalité qui permet un accès rapide aux lignes d'une
table.
- IP (Protocole
Internet) - (en
anglais Internet Protocol ou IP). Le protocole Internet
gère le transport et le routage des paquets sur le réseau
décrit dans la RFC
791.
- IP Address
- a unique
number that devices use in order to identify and communicate with each
other
on a network utilizing the Internet Protocol standard.
- ISAPI (Internet
Server
Application Programming Interface)en - L'API of Internet Information
Services (IIS).
- ISP
(Internet
service provider) - Un fournisseur d'accès à
Internet (FAI), est un organisme (généralement une entreprise)
offrant une connexion au réinformatique Internet. Le terme anglais
déun FAI est Internet Service Provider (ISP).
- JPEG -
JPEG est un
acronyme de Joint Photographic Experts Group, nom d'un comité
créé en 1986 résultant de la fusion de plusieurs
groupes (d'où le joint) de professionnels de l'industrie de
l'image. Ce comité a donné son nom à la norme ouverte
de compression d'images numériques JPEG.
- JPG - Voir JPEG.
- Key - look at index.
- LATEX
- LaTeX (Lamport TEX) est un système logiciel de
composition de documents, ou plus exactement : une collection de
macro-commandes destinées à faciliter l'utilisation du
« processeur de texte » TEX.
- Mac (Apple
Macintosh) -
Les Macintosh, ou Mac, sont des ordinateurs personnels fabriqués et
commercialisés par la société Apple Computer depuis
janvier 1984. Ils cohabitent sur le marché des ordinateurs personnels
avec les PC.
- Mac OS X -
Mac OS X est le système d'exploitation propriétaire fourni
avec l'ordinateur Macintosh d'Apple Computer, depuis 2001 et
distribué également séparément pour des
modèles antérieurs.
- MCrypten
- Une
bibliothèque cryptographique.
- mcrypt - the MCrypt PHP
extension.
- MIME (Multipurpose
Internet Mail
Extensions) - Multipurpose Internet Mail Extensions (MIME) est un
format
de données permettant d'introduire dans les messages SMTP (courriels)
différents types de fichiers multimédias.
- Moduleen
-
Sorte d'extension pour le serveur Web Apache.
- MySQL - MySQL
(SQL est
acronyme de Structured Query Language en anglais) est un serveur de
bases de
données relationnelles SQL très rapide, multi-thread, robuste
et multi-utilisateurs.
- mysqli - L'extension client
PHP de MySQL
améliorée.
- mysql - L'extension client
PHP de MySQL.
- OpenDocument
-
OpenDocument est un format ouvert de données pour les applications
bureautiques : traitements de texte, tableurs, présentations,
diagrammes, dessins et base de données bureautique.
- OS X - Voir Mac OS X.
- PDF
-
Portable Document Format, un format de fichier informatique universel
créé par la société Adobe Systems pour la
diffusion des documents (de types texte, affiche, diapositive, plan,
formulaires interactifs...) ;
- PEAR (PHP Extension
and
Application Repository) - PEAR (« poire ») est
décrit comme étant le « fruit » de
PHP. À savoir, PEAR (pour PHP Extension and Application Repository)
est à PHP ce que CPAN est à Perl et CTAN à TeX :
une archive stockant de la façon la plus exhaustive possible des
programmes, des macros et de la documentation.
- PCRE (Perl Compatible Regular
Expressions) - Expressions rationnelles compatibles Perl pour PHP
- PHP -
PHP (venant de l'acronyme récursif PHP : Hypertext
Preprocessor), est un langage de script libre principalement utilisé
pour être exécuté par un serveur HTTP, mais il peut
fonctionner comme n'importe quel langage interprété en
utilisant les scripts et son interpréteur sur un ordinateur.
- Port
-
Correspondant à la couche session du modèle OSI, la notion de
port logiciel permet, sur un ordinateur donné, de distinguer
différents interlocuteurs. Ces interlocuteurs sont des programmes
informatiques qui, selon les cas, écoutent ou émettent des
informations sur ces ports.
- RFC - Les
« request for comment » (RFC, littéralement
demande de commentaires) sont une série de documents et normes
concernant l'Internet, commencée en 1969. Peu de RFC sont des
standards, mais tous les standards de l'Internet sont enregistrés en
tant que RFC.
- RFC 1952en
-
Spécification du format de fichier GZIP version 4.3
- Lignes
(enregistrement, tuple) - Représente un seul
élément de donnée structuré implicitement dans
une table.
- Serveur - Un
serveur
informatique, appelé serveur lorsque le contexte s'y prête, est
un ordinateur ou un programme informatique qui partage un service.
- Moteurs
de
stockage (Storage Engines)en - Gestionnaires pour
différents type de tables
- socket - Il
s'agit d'une
interface logicielle avec les services du système d'exploitation,
grâce à laquelle un développeur exploitera facilement et
de manière uniforme les services d'un protocole réseau.
- SSL (Secure Sockets
Layer) -
SSL est un protocole de sécurisation des échanges sur
Internet, développé à l'origine par Netscape (SSL
version 2 et SSL version 3).
- SQL - Structured
query
language (SQL), ou langage structuré de requêtes, est un
langage informatique standard et normalisé, destiné à
interroger ou manipuler une base de données relationnelle.
- Tableen
- Un ensemble d'éléments de données (cellules) qui est
organisé, défini et stocké en lignes et en colonnes
où chaque élément est identifié par un
libellé ou une clé unique ou par sa position par rapport aux
autres éléments.
- Table type
- TAR
- TAR
(de l'anglais Tape ARchiver, littéralement « archive sur
bande ») est l'outil d'archivage de fichiers standard de UNIX. On
appelle parfois le fichier d'archivage créé un
« tarball ».
- TCP (Transmission
Control
Protocol) - Le Transmission Control Protocol (TCP,
« protocole de contrôle de transmissions »), est
un protocole de transport fiable, en mode connecté, documenté
dans la RFC 793 de l'IETF.
- UFPDFen -
Extension
Unicode/UTF-8 pour FPDF
- URL (Uniform Resource
Locator) - Une adresse réticulaire (du latin rete qui signifie
« filet » donc par extension réseau) est une
chaîne de caractères utilisée pour identifier les
ressources dans le World Wide Web.
- Serveur Web
- Le
terme serveur Web désigne : un ordinateur tenant le rôle
de serveur informatique sur lequel fonctionne un logiciel serveur HTTP
ou le
logiciel serveur HTTP lui-même.
- XML (Extensible
Markup
Language) - Extensible Markup Language (« langage de balisage
extensible »), généralement abrégé
XML, est un standard du World Wide Web Consortium qui sert de base pour
créer des langages de balisage : c'est un
« méta-langage ».
- ZIP - Le ZIP est,
en
informatique, un format de fichier permettant la compression de
données. Le format a été inventé par Phil Katz
pour le logiciel PKZIP.
- zliben
- Une
bibliothèque de compression de données libre et
multiplateforme de Jean-loup Gailly et Mark Adler.