Maison  >  Article  >  base de données  >  La machine distante Mysql importe et exporte des données, verrouille la table ou ne verrouille pas certaines données ou la totalité de la table

La machine distante Mysql importe et exporte des données, verrouille la table ou ne verrouille pas certaines données ou la totalité de la table

黄舟
黄舟original
2017-03-02 16:39:382874parcourir

Lorsque j'utilise MySQL récemment, je rencontre souvent la situation d'exporter ou d'importer des données. Pour certaines simples, vous pouvez directement utiliser Navicate pour exporter directement les résultats. Cependant, plusieurs fois, car la machine est distante et est une machine en ligne. . Dans ce cas, lorsque mysql ne peut pas être lié à mysql après un saut, navicate ne peut pas utiliser cette méthode pour exporter. J'ai recherché quelques articles sur Internet et j'ai résumé l'importation et l'exportation de mysql comme suit :

<.>1. Exportez la base de données

mysqldump -h 127.0.0.1  -u name -p  dbname >name.sql
Exportez le nom de base de données de 127.0.0.1 dans le fichier name.sql



2. Exportez une certaine table de la base de données

mysqldump -h 127.0.0.1  -u username -ppassword  dbname tablename >name.sql
Exportez la table tablename dans la base de données dbname sur l'ip 127.0.0.1 vers le fichier name.sql



3. Exporter les données d'une table de la base de données qui remplit certaines conditions

mysqldump -h 127.0.0.1  -u username -ppassword  dbname tablename  --where="id>10 limit 10000" >name.sql
Ci-dessus 1. Les deux cas impliquent l'exportation de toutes les tables. ou des bibliothèques, mais parfois nous ne voulons qu'une partie des données. Cette partie des données remplit certaines conditions. Pour la structure ci-dessus,


extraira 100 éléments de données avec l'identifiant>10 de la table tablename. dans dbname et exportez-les vers le fichier name.sql


4. Exporter une table de la base de données Déverrouiller la table

mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction dbname  tablename>name.sql
Parfois, vous n'avez pas l'autorisation de verrouiller la table lors de l'exportation. Par exemple, si vous disposez uniquement d'une autorisation en lecture seule, vous n'avez probablement pas l'autorisation de verrouiller la table. Dans ce cas, ajoutez simplement une phrase --. une transaction unique peut être exportée sans verrouiller la table


Ce qui précède verrouillera la table de la base de données pour un, deux et trois. L'ajout de cette commande peut atteindre l'objectif d'exporter des données sans verrouiller la table. 🎜>


5. Exporter la structure de table d'une certaine table dans la base de données sans exporter de données

Parfois, il ne s'agit pas de cela. exporter des données, il s'agit simplement d'exporter la structure du tableau. Par exemple, vous souhaitez copier et créer complètement la structure du tableau en fonction de la structure du tableau. Dans ce cas, de nombreuses méthodes peuvent être utilisées, par exemple, vous pouvez vous connecter directement. à la base de données et utilisez la commande show create table tablename, vous pouvez également obtenir l'instruction pour créer une table ; voici juste une autre façon d'exporter la structure de la table. Si vous souhaitez exporter uniquement la structure de la table, vous pouvez ajouter -d
mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction -d dbname  tablename>name.sql



6. Exportez les données d'une certaine table dans la base de données sans exporter la structure

Si vous le souhaitez pour exporter uniquement les données mais pas la structure de la table, utilisez -t Le but initial de l'utilisation de cette phrase est d'exporter la vue dans la base de données. Puisqu'il n'y a pas d'autorisation pour afficher la vue de création, je ne peux qu'essayer. pour exporter uniquement les données. Il s'avère que ce n'est pas possible. J'y repense et je le marque à nouveau.

mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction -t dbname  tablename>name.sql


<.> 7. Base de données à importer

Lors de l'importation de données, connectez-vous simplement à la base de données. Utilisez simplement la source. Vous pouvez définir le format d'encodage sur gbk ou utf-8 avant, pour qu'il y ait. il n'y aura pas de caractères chinois tronqués

use dbname;
set names gbk;
source /d1/name/name.sql;

8. Autorisation


insérer dans les valeurs mysql.user(User,Password)("name",password("password"));


insert into mysql.user(User,Password) values("name",password("password"));


GRANT ALL PRIVILEGES ON *.* TO "name"@'%' IDENTIFIED BY 'password';


flush privileges;


show grants for 'test_group'@'%';

td>

privilèges d'affleurement ;

afficher les subventions pour 'test_group'@'%';

Ce qui précède est le contenu de l'importation et de l'exportation de données depuis une machine distante MySQL, du verrouillage ou du non-verrouillage de la table. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !


Déclaration:
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