| 4.3 Spécifier des options aux programmes
 4 Utiliser les programmes MySQL
 Manuel de Référence MySQL 4.1 : Version Française
 
 ->Options de ligne de commande de mysqld
 . Fichier d'options my.cnf
 . Utiliser les variables d'environnement pour spécifier des options
 . Utiliser les options pour configurer des variables de programme
 
 
 | 
  4.3.1 Options de ligne de commande de mysqld 
 
Les options des programmes spécifiées en ligne de commande suivent ces règles : 
 
Les options sont données après la commande.
Une option commence avec un ou deux tirets, suivant que c'est un nom long
ou court. De nombreuses options ont les deux formats. Par exemple, 
 
-?
  et  
--help
  sont les formes courtes et longues de l'option
qui demande à un programme d'afficher le message d'aide.
Les noms des options sont sensibles à la casse.  
-v
  et  
-V
  sont valides
tous les deux, mais ont des significations différentes.
Elles correspondent aux formes courtes des options 
 
--verbose
  et  
--version
 .
Certains options prennent une valeur en argument, après le nom de l'option.
Par exemple,  
-h localhost
  et  
--host=localhost
  indique au
client MySQL le nom d'hôte du serveur à utiliser. La valeur de l'option
est le nom de l'hôte à utiliser.
Pour une option longue qui prend une valeur, séparez l'option de la valeur avec le
signe égal ( 
'='
 ). 
Pour une option longue qui prend une valeur, séparez l'option de la valeur avec le
signe espace. 
( 
-hlocalhost
  et  
-h localhost
  sont équivalents)
Une exception à cette règle est l'option qui permet de spécifier le mot de passe
MySQL. Cette option peut être donnée en format long comme  
--password=pass_val
  
ou bien  
--password
 . Dans le dernier cas (sans mot de passe indiqué), le
programme vous demandera interactivement un mot de passe. 
Le mot de passe peut aussi être configuré avec la forme courte  
-ppass_val
 ,
ou encore  
-p
 . Cependant, en forme courte, si le mot de passe est fourni, 
il doit suivre immédiatement la lettre,  
sans espace
 . La raison à cela est que
le programme ne saura pas si l'argument suivant est le paramètre de l'option
ou un autre argument. Par conséquent, les deux commandes suivantes ont deux
significations très différente :  
La première commande demande à  
mysql
  d'utiliser la valeur  
test
 
comme mot de passe, mais ne spécifie pas de base de données par défaut.
La seconde commande demande à  
mysql
  de demander le mot de passe à l'écran,
et d'utiliser la base  
test
  comme base par défaut.| 
shell> mysql -ptestshell> mysql -p test
 | 
 
MySQL 4.0 a introduit une souplesse supplémentaire dans la manière de saisir des
options. Ces modifications ont été ajoutée en MySQL 4.0.2. Certaines se rapportent
à la façon de spécifier qu'une option est ``activée'' ou ``désactivée'', et 
d'autres se rapportent aux options qui sont disponibles dans une version,
mais pas dans l'autre. Ces fonctionnalités sont décrites ultérieurement dans
cette section.
Un autre changement se rapport à la méthode de spécifications des variables
de programme. La section  Utiliser les options pour configurer les variables de programme  présente en détails ce sujet.
Certaines options qui contrôlent le comportement du serveur peuvent être
activées ou désactivées. Par exemple, le client  
mysql
  supporte
l'option  
--column-names
  qui détermine si il faut afficher ou pas les
noms des colonnes. Par défaut, cette option est activée. Cependant, vous pouvez
la désactiver dans certaines situations, comme lorsque vous voulez envoyer
le résultat de   
mysql
  dans un autre programme qui s'attend à ne recevoir
que des données, et pas les entêtes. 
Pour désactiver les nom des colonnes, vous pouvez spécifier l'option de trois
manières différentes :
 Les préfixes  
--disable
  et  
--skip
  et le suffixe  
=0
  ont tous
le même effet : ils désactivent l'option.| 
--disable-column-names--skip-column-names
 --column-names=0
 | 
 
La forme ``active'' de l'option peut être spécifiée de ces trois manières : 
 Une autre modification au traitement des options, introduit en MySQL 4.0 est
que vous pouvez utiliser le préfixe  
--loose
  pour les options de ligne de 
commande. Si une option est préfixée par  
--loose
 , le programme ne va pas
se terminer avec une erreur, s'il ne reconnaît pas l'option, mais il va juste
émettre une alerte :| 
--column-names--enable-column-names
 --column-names=1
 | 
 Le préfixe  
--loose
  peut être utilise lorsque vous exécutez des programmes
depuis plusieurs installations de MySQL sur la même machine : tout au moins,
des serveurs aussi récents que la version 4.0.2.  Ce préfixe est particulièrement
utilise lorsque vous listes les options dans un fichier d'options. Une option peut
ne pas être reconnue par une version du programme, avec le préfixe  
--loose
 ,
ou le préfixe  
loose
  dans un fichier d'options. Les versions du programme
qui ne reconnaissent pas l'option émettront une alerte, mais ignoreront l'option.
Cette stratégie requiert que les versions sont toutes en 4.0.2 ou plus récent, car
les anciennes versions ne connaissent pas  
--loose
 .| 
shell> mysql --loose-no-such-optionmysql: WARNING: unknown option '--no-such-option'
 | 
 |