mysqlhotcopy , copier les bases et tables MySQL
<<<
mysqlimport , importer des données depuis des fichiers texte Afficher les bases, tables et colonnes
>>>

8 MySQL Scripts clients et utilitaires
 Manuel de Référence MySQL 4.1 : Version Française

Présentation des scripts serveurs et utilitaires
myisampack , le générateur de tables MySQL compressées en lecture seule
mysql , l'outil en ligne de commande
mysqladmin , administration d'un serveur MySQL
mysqlbinlog , Exécuter des requêtes dans le log binaire
mysqlcc , MySQL Control Center
Utiliser mysqlcheck pour l'entretien et la réparation
mysqldump , sauvegarde des structures de tables et les données
mysqlhotcopy , copier les bases et tables MySQL
->mysqlimport , importer des données depuis des fichiers texte
Afficher les bases, tables et colonnes
perror , expliquer les codes d'erreurs
L'utilitaire de remplacement de chaînes replace

8.10 mysqlimport , importer des données depuis des fichiers texte

mysqlimport fournit une interface en ligne de commande à la commande SQL LOAD DATA INFILE . La plupart des options de mysqlimport correspondent directement aux mêmes options de LOAD DATA INFILE . Syntaxe de LOAD DATA INFILE .

mysqlimport est appelé comme ceci :

shell> mysqlimport [options] database textfile1 [textfile2 ...]
Pour chaque fichier texte indiqué dans la ligne de commande, mysqlimport supprime toute extension du nom du fichier, et utilise le résultat pour déterminer le nom de la table qui va recevoir le contenu du fichier. Par exemple, pour des fichiers appelés patient.txt , patient.text et patient seront tous importés dans la table patient . mysqlimport supporte les options suivantes :
    --help , -?
    Affiche le message d'aide et quitte.
    --columns=column_list , -c column_list
    Cette option prend une liste de noms de colonnes, séparés par des virgules. Ce champs est utilisé pour créer une commande LOAD DATA INFILE correcte, qui sera alors passée à MySQL.
    --compress , -C
    Compresse toutes les informations entre le client et le serveur, si c'est possible.
    --debug[=debug_options] , -# [debug_options]
    Active le débogage. la valeur de debug_options est souvent : 'd:t:o,file_name' .
    --delete , -D
    Vide la table avant d'importer le fichier texte.
    --fields-terminated-by=...
    --fields-enclosed-by=...
    --fields-optionally-enclosed-by=...
    --fields-escaped-by=...
    --lines-terminated-by=...
    Ces options ont la même signification que les clauses correspondantes de LOAD DATA INFILE . Syntaxe de LOAD DATA INFILE .
    --force , -f
    Ignore les erreurs. Par exemple, si une table n'existe pas pour un fichier texte, mysqlimport va continuer de traiter les autres fichiers. Sans --force , mysqlimport se termine dès qu'une erreur survient.
    --host=host_name , -h host_name
    Importe les données sur le serveur MySQL, avec l'hôte spécifié. La valeur par défaut est localhost .
    --ignore , -i
    Voir la description de --replace .
    --ignore-lines=n
    Ignore les n premières lignes du fichier de données.
    --local , -L
    Lit le fichier d'entrée dans le client. Par défaut, les fichiers textes sont supposés être lus par le serveur, si vous vous connectez à localhost (qui l'hôte par défaut).
    --lock-tables , -l
    Verrouille toutes les tables en écriture avant de ne traiter les fichiers textes. Cela assure que toutes les tables sont synchronisée sur le serveur.
    --password[=password] , -p[password]
    Le mot de passe à utiliser lors de la connexion au serveur. Notez que si vous utilisez l'option courte ( -p ), vous ne pouvez pas laisser d'espace entre l'option est le mot de passe. Si vous ne spécifiez pas le mot de passe avec l'option, mysqlimport va vous demander le mot de passe en ligne.
    --port=port_num , -P port_num
    Le port TCP/IP utilisé avec l'hôte. Cela sert pour les connexions à des hôtes qui ne sont pas localhost , pour lequel la socket Unix est utilisée.
    --protocol={TCP | SOCKET | PIPE | MEMORY}
    Spécifie le protocole à utiliser pour se connecter. Nouveau en MySQL version 4.1.
    --replace , -r
    Les options --replace et --ignore contrôles la gestion des lignes lues envers les lignes qui existent déjà sur le serveur. Si vous spécifiez l'option --replace , les nouvelles lignes remplaceront les lignes existantes. Si vous spécifiez --ignore , les lignes qui sont en double dans une table qui dispose d'une colonne de type unique. Si vous ne spécifiez pas ces options, une erreur surviendra lorsqu'une clé en double sera trouvée, et la lecture du reste du fichier sera annulé.
    --silent , -s
    Mode silencieux. N'affiche que les erreurs qui surviennent.
    --socket=path , -S path
    Le fichier de socket à utiliser lors de la connexion à localhost (qui est l'hôte par défaut).
    --user=user_name , -u user_name
    Le nom de l'utilisateur MySQL à utiliser lors de la connexion au serveur MySQL. La valeur par défaut est celui de votre utilisateur Unix.
    --verbose , -v
    Mode détaillé. Affiche bien plus d'informations sur les actions du programme.
    --verbose , -v
    Affiche la version et quitte.
Voici un exemple d'utilisation de mysqlimport :

$ mysql --version
mysql  Ver 9.33 Distrib 3.22.25, for pc-linux-gnu (i686)
$ uname -a
Linux xxx.com 2.2.5-15 #1 Mon Apr 19 22:21:09 EDT 1999 i586 unknown
$ mysql -e 'CREATE TABLE imptest(id INT, n VARCHAR(30))' test
$ ed
a
100     Max Sydow
101     Count Dracula
.
w imptest.txt
32
q
$ od -c imptest.txt
0000000   1   0   0  \t   M   a   x       S   y   d   o   w  \n   1   0
0000020   1  \t   C   o   u   n   t       D   r   a   c   u   l   a  \n
0000040
$ mysqlimport --local test imptest.txt
test.imptest: Records: 2  Deleted: 0  Skipped: 0  Warnings: 0
$ mysql -e 'SELECT * FROM imptest' test
+------+---------------+
| id   | n             |
+------+---------------+
|  100 | Max Sydow     |
|  101 | Count Dracula |
+------+---------------+

<< mysqlimport , importer des données depuis des fichiers texte >>
mysqlhotcopy , copier les bases et tables MySQL MySQL Scripts clients et utilitaires Afficher les bases, tables et colonnes