Maison > base de données > tutoriel mysql > [Tutoriel MySQL] Exporter des données MySQL

[Tutoriel MySQL] Exporter des données MySQL

黄舟
Libérer: 2016-12-26 17:22:16
original
1140 Les gens l'ont consulté

Exporter des données MySQL

Dans MySQL, vous pouvez utiliser l'instruction SELECT...INTO OUTFILE pour exporter simplement des données vers un fichier texte.

Utilisez l'instruction SELECT ... INTO OUTFILE pour exporter des données

Dans l'exemple suivant, nous exportons les données de la table de données tutoriels_tbl vers le fichier /tmp/tutorials.txt :

mysql> SELECT * FROM tutorials_tbl 
    -> INTO OUTFILE '/tmp/tutorials.txt';
Copier après la connexion

Vous pouvez définir le format spécifié de sortie des données via les options de commande. L'exemple suivant consiste à exporter le format CSV :

mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt'
    -> FIELDS TERMINATED BY ',' ENCLOSED BY '"'
    -> LINES TERMINATED BY '\r\n';
Copier après la connexion

Dans l'exemple suivant, un fichier est généré et chacun. la valeur est séparée par des virgules. Ce format peut être utilisé par de nombreux programmes.

SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM test_table;
Copier après la connexion

L'instruction SELECT ... INTO OUTFILE a les attributs suivants :

LOAD DATA INFILE est l'opération inverse de SELECT ... INTO OUTFILE, syntaxe SELECT. Pour écrire des données d'une base de données dans un fichier, utilisez SELECT ... INTO OUTFILE, et pour relire le fichier dans la base de données, utilisez LOAD DATA INFILE.

SELECT...INTO OUTFILE La forme 'file_name' de SELECT peut écrire les lignes sélectionnées dans un fichier. Le fichier est créé sur l'hôte du serveur, vous devez donc disposer des autorisations FILE pour utiliser cette syntaxe.

La sortie ne peut pas être un fichier existant. Empêchez la falsification des données des fichiers.

Vous devez avoir un compte connecté au serveur pour récupérer des fichiers. Sinon, SELECT ... INTO OUTFILE n'aura aucun effet.

Sous UNIX, le fichier est créé en lecture et les autorisations appartiennent au serveur MySQL. Cela signifie que même si vous pourrez lire le fichier, vous ne pourrez peut-être pas le supprimer.

Exporter des tables sous forme de données brutes

mysqldump est un utilitaire utilisé par MySQL pour transférer des bases de données de stockage. Il produit principalement un script SQL contenant les commandes CREATE TABLE INSERT etc. nécessaires pour recréer la base de données à partir de zéro.


L'utilisation de mysqldump pour exporter des données nécessite l'utilisation de l'option --tab pour spécifier le répertoire spécifié par le fichier d'exportation. La cible doit être accessible en écriture.


L'exemple suivant exporte la table de données tutoriels_tbl vers le répertoire /tmp :

$ mysqldump -u root -p --no-create-info \
            --tab=/tmp TUTORIALS tutorials_tbl
password ******
Copier après la connexion

Exporter les données au format SQL

Exporter Formatez SQL les données dans le fichier spécifié, comme indiqué ci-dessous :

$ mysqldump -u root -p TUTORIALS tutorials_tbl > dump.txt
password ******
Copier après la connexion

Le contenu du fichier créé par la commande ci-dessus est le suivant :

-- MySQL dump 8.23
--
-- Host: localhost    Database: TUTORIALS
---------------------------------------------------------
-- Server version       3.23.58

--
-- Table structure for table `tutorials_tbl`
--

CREATE TABLE tutorials_tbl (
  tutorial_id int(11) NOT NULL auto_increment,
  tutorial_title varchar(100) NOT NULL default '',
  tutorial_author varchar(40) NOT NULL default '',
  submission_date date default NULL,
  PRIMARY KEY  (tutorial_id),
  UNIQUE KEY AUTHOR_INDEX (tutorial_author)
) TYPE=MyISAM;

--
-- Dumping data for table `tutorials_tbl`
--

INSERT INTO tutorials_tbl 
       VALUES (1,'Learn PHP','John Poul','2007-05-24');
INSERT INTO tutorials_tbl 
       VALUES (2,'Learn MySQL','Abdul S','2007-05-24');
INSERT INTO tutorials_tbl 
       VALUES (3,'JAVA Tutorial','Sanjay','2007-05-06');
Copier après la connexion

Si vous devez exporter les données de l'ensemble de la base de données, vous pouvez utiliser la commande suivante :

$ mysqldump -u root -p TUTORIALS > database_dump.txt
password ******
Copier après la connexion

Si vous devez sauvegarder toutes les bases de données, vous pouvez utiliser la commande suivante :

$ mysqldump -u root -p --all-databases > database_dump.txt
password ******
Copier après la connexion

-- L'option all-databases est ajoutée dans MySQL 3.23.12 et versions ultérieures.

Cette méthode peut être utilisée pour mettre en œuvre une stratégie de sauvegarde de base de données.

Copier les tables de données et les bases de données vers d'autres hôtes
Si vous devez copier des données sur d'autres serveurs MySQL, vous pouvez spécifier le nom de la base de données et les tables de données dans la commande mysqldump.
Exécutez la commande suivante sur l'hôte source pour sauvegarder les données dans le fichier dump.txt :

$ mysqldump -u root -p database_name table_name > dump.txt
password *****
Copier après la connexion

Si vous sauvegardez complètement la base de données, il n'est pas nécessaire d'utiliser un nom de table spécifique .

Si vous devez importer la base de données sauvegardée dans le serveur MySQL, vous pouvez utiliser la commande suivante. Vous devez confirmer que la base de données a été créée à l'aide de la commande suivante :

$ mysql -u root -p database_name < dump.txt
password *****
Copier après la connexion
<🎜. >
你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:</p>
$ mysqldump -u root -p database_name \
       | mysql -h other-host.com database_name
Copier après la connexion
Utilisé dans la commande ci-dessus Un pipeline est utilisé pour importer les données exportées vers l'hôte distant spécifié.

Ce qui précède est le contenu du [tutoriel mysql] Données d'exportation MySQL Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (m.sbmmt.com) !


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal