Maison base de données tutoriel mysql mysqldump,source数据备份与还原方法

mysqldump,source数据备份与还原方法

Jun 07, 2016 pm 05:52 PM

文章介绍了mysql中的mysqldump,source命令进行数据备份与还原方法,有需要的朋友可参考一下本文章哦。

还原一个数据库:

 代码如下 复制代码
mysql -h localhost -u root -p123456 www

备份一个数据库:

 代码如下 复制代码
mysqldump -h localhost -u root -p123456 www > d:/www2008-2-26.sql

本地:
1.进入MySQL目录下的bin文件夹:e:回车;

e:>cd mysqlbin  回车

2.导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

 代码如下 复制代码
mysqldump -uroot -p abc > abc.sql

(导出数据库abc到abc.sql文件)
提示输入密码时,输入该数据库用户名的密码(如果导出单张表的话在数据库名后面输入表名即可)

如果提示locktable错误:则在mysqldump -uroot -p abc后面空一格加上--skip-lock-tables

3、会看到文件news.sql自动生成到bin文件下


.Linux下MySQL的备份与还原
2.1 备份

 代码如下 复制代码
[root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)
[root@localhost mysql]# mysqldump -u root -p voice>voice.sql,输入密码即可。

2.2 还原

 代码如下 复制代码
法一:
[root@localhost ~]# mysql -u root -p 回车,输入密码,进入MySQL的控制台"mysql>",同1.2还原。
法二:
[root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)
[root@localhost mysql]# mysql -u root -p voice


常用命令


备份MySQL数据库的命令
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql

备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。

 代码如下 复制代码
mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql

直接将MySQL数据库压缩备份

 代码如下 复制代码
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz

备份MySQL数据库某个(些)表

 代码如下 复制代码
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql

同时备份多个MySQL数据库

 代码如下 复制代码
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql

仅仅备份数据库结构

 代码如下 复制代码
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql

备份服务器上所有数据库

 代码如下 复制代码
mysqldump –all-databases > allbackupfile.sql

还原MySQL数据库的命令

 代码如下 复制代码
mysql -hhostname -uusername -ppassword databasename

还原压缩的MySQL数据库
gunzip

将数据库转移到新服务器

 代码如下 复制代码
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename

 

1、mysqldump 详解

1.1 备份

mysqldump 是采用SQL级别的备份机制,它将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。
现在来讲一下 mysqldump 的一些主要参数:

--compatible=name

它告诉 mysqldump,导出的数据将和哪种数据库或哪个旧版本的 MySQL 服务器相兼容。值可以为 ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options 等,要使用几个值,用逗号将它们隔开。当然了,它并不保证能完全兼容,而是尽量兼容。

--complete-insert,-c

导出的数据采用包含字段名的完整 INSERT 方式,也就是把所有的值都写在一行。这么做能提高插入效率,但是可能会受到 max_allowed_packet 参数的影响而导致插入失败。因此,需要谨慎使用该参数,至少我不推荐。

--default-character-set=charset

指定导出数据时采用何种字符集,如果数据表不是采用默认的 latin1 字符集的话,那么导出时必须指定该选项,否则再次导入数据后将产生乱码问题。

--disable-keys

告诉 mysqldump 在 INSERT 语句的开头和结尾增加 /*!40000 ALTER TABLE table DISABLE KEYS */; 和 /*!40000 ALTER TABLE table ENABLE KEYS */; 语句,这能大大提高插入语句的速度,因为它是在插入完所有数据后才重建索引的。该选项只适合 MyISAM 表。

--extended-insert = true|false

默认情况下,mysqldump 开启 --complete-insert 模式,因此不想用它的的话,就使用本选项,设定它的值为 false 即可。

--hex-blob

使用十六进制格式导出二进制字符串字段。如果有二进制数据就必须使用本选项。影响到的字段类型有 BINARY、VARBINARY、BLOB。

--lock-all-tables,-x

在开始导出之前,提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁,并且自动关闭 --single-transaction 和 --lock-tables 选项。

--lock-tables

它和 --lock-all-tables 类似,不过是锁定当前导出的数据表,而不是一下子锁定全部库下的表。本选项只适用于 MyISAM 表,如果是 Innodb 表可以用 --single-transaction 选项。

--no-create-info,-t

只导出数据,而不添加 CREATE TABLE 语句。

--no-data,-d

不导出任何数据,只导出数据库表结构。

--opt

这只是一个快捷选项,等同于同时添加 --add-drop-tables --add-locking --create-option --disable-keys --extended-insert --lock-tables --quick --set-charset 选项。本选项能让 mysqldump 很快的导出数据,并且导出的数据能很快导回。该选项默认开启,但可以用 --skip-opt 禁用。注意,如果运行 mysqldump 没有指定 --quick 或 --opt 选项,则会将整个结果集放在内存中。如果导出大数据库的话可能会出现问题。

--quick,-q

该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。

--routines,-R

导出存储过程以及自定义函数。

--single-transaction

该选项在导出数据之前提交一个 BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于事务表,例如 InnoDB 和 BDB。
本选项和 --lock-tables 选项是互斥的,因为 LOCK TABLES 会使任何挂起的事务隐含提交。
要想导出大表的话,应结合使用 --quick 选项。

--triggers

同时导出触发器。该选项默认启用,用 --skip-triggers 禁用它。

其他参数详情请参考手册,我通常使用以下 SQL 来备份 MyISAM 表:

 代码如下 复制代码

/usr/local/mysql/bin/mysqldump -uyejr -pyejr
--default-character-set=utf8 --opt --extended-insert=false
--triggers -R --hex-blob -x db_name > db_name.sql

使用以下 SQL 来备份 Innodb 表:

 代码如下 复制代码

/usr/local/mysql/bin/mysqldump -uyejr -pyejr
--default-character-set=utf8 --opt --extended-insert=false
--triggers -R --hex-blob --single-transaction db_name > db_name.sql

另外,如果想要实现在线备份,还可以使用 --master-data 参数来实现,如下:

 代码如下 复制代码

/usr/local/mysql/bin/mysqldump -uyejr -pyejr
--default-character-set=utf8 --opt --master-data=1
--single-transaction --flush-logs db_name > db_name.sql

它只是在一开始的瞬间请求锁表,然后就刷新binlog了,而后在导出的文件中加入CHANGE MASTER 语句来指定当前备份的binlog位置,如果要把这个文件恢复到slave里去,就可以采用这种方法来做。

1.2 还原

用 SOURCE 语法

其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:

 代码如下 复制代码

SOURCE /tmp/db_name.sql;

这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Analyse de la façon d'utiliser Source Insight dans le système Ubuntu Analyse de la façon d'utiliser Source Insight dans le système Ubuntu Jan 08, 2024 pm 11:49 PM

Je pense que de nombreux amis sont habitués à utiliser SourceInsight pour lire et analyser le code source sous Windows. Il existe effectivement des outils plus efficaces sous LINUX, mais il est difficile et fastidieux de les configurer. Je pense que beaucoup de gens espèrent vraiment pouvoir les utiliser. sous Linux. SourceInsight peut être utilisé. L'éditeur suivant vous donnera une explication détaillée de l'utilisation de SourceInsight dans Ubuntu ! Allons le voir ensemble ! Voici les informations de mon système : Linuxgavin-laptop2.6.32-40-generic#87-UbuntuSMPTueMar600:56:56UTC2012x86_64GNU/Li

Quel bouton est la source ? Quel bouton est la source ? Oct 10, 2023 pm 03:26 PM

Source est le bouton permettant de changer la source du signal d’entrée ou de sélectionner une source d’entrée différente. On le trouve généralement sur les téléviseurs, les projecteurs, les systèmes audio, les écrans d'ordinateur et d'autres équipements. Sur le téléviseur, le bouton source permet aux utilisateurs de basculer entre différentes sources d'entrée pour lire différents contenus sur le téléviseur. Sur un projecteur, le bouton source a une fonction similaire et peut connecter différents appareils au projecteur. Sur le système audio, le bouton source est utilisé pour basculer entre différentes sources d'entrée audio. Sur les écrans d'ordinateur, le bouton source fonctionne de la même manière que sur les téléviseurs et les projecteurs, etc.

Sauvegarde et récupération de données ThinkPHP6 : garantir la sécurité des données Sauvegarde et récupération de données ThinkPHP6 : garantir la sécurité des données Aug 13, 2023 am 08:28 AM

Sauvegarde et récupération de données ThinkPHP6 : assurer la sécurité des données Avec le développement rapide d'Internet, les données sont devenues un atout extrêmement important. La sécurité des données est donc une préoccupation majeure. Dans le développement d’applications Web, la sauvegarde et la récupération des données constituent un élément important pour garantir la sécurité des données. Dans cet article, nous présenterons comment utiliser le framework ThinkPHP6 pour la sauvegarde et la récupération des données afin de garantir la sécurité des données. 1. Sauvegarde des données La sauvegarde des données fait référence à la copie ou au stockage des données dans la base de données d'une manière ou d'une autre. De cette façon, même si les données

Sauvegarde des données et restauration des applications PHP via Docker Compose, Nginx et MariaDB Sauvegarde des données et restauration des applications PHP via Docker Compose, Nginx et MariaDB Oct 12, 2023 am 11:14 AM

Sauvegarde des données et restauration des applications PHP via DockerCompose, Nginx et MariaDB Avec le développement rapide de la technologie de cloud computing et de conteneurisation, de plus en plus d'applications choisissent d'utiliser Docker pour se déployer et s'exécuter. Dans l'écosystème Docker, DockerCompose est un outil très populaire capable de définir et de gérer plusieurs conteneurs via un seul fichier de configuration. Cet article explique comment utiliser DockerCompose, Ng

Comment gérer les problèmes de cohérence des sauvegardes de données dans le développement Big Data C++ ? Comment gérer les problèmes de cohérence des sauvegardes de données dans le développement Big Data C++ ? Aug 26, 2023 pm 11:15 PM

Comment résoudre le problème de cohérence de la sauvegarde des données dans le développement du Big Data C++ ? Dans le développement du Big Data C++, la sauvegarde des données est un élément très important. Afin de garantir la cohérence de la sauvegarde des données, nous devons prendre une série de mesures pour résoudre ce problème. Cet article explique comment gérer les problèmes de cohérence de la sauvegarde des données dans le développement du Big Data C++ et fournit des exemples de code correspondants. Utiliser des transactions pour la sauvegarde des données Les transactions sont un mécanisme permettant de garantir la cohérence des opérations sur les données. En C++, nous pouvons utiliser le concept de transaction dans la base de données pour implémenter la sauvegarde des données.

Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Mar 06, 2025 pm 04:36 PM

En 2025, les plateformes mondiales de trading de devises virtuelles numériques sont farouchement compétitives. OKX se classe d'abord avec sa forte force technique et sa stratégie de fonctionnement mondiale, et Binance suit de près avec une liquidité élevée et des frais faibles. Des plates-formes telles que Gate.io, Coinbase et Kraken sont à l'avant-garde avec leurs avantages respectifs. La liste couvre les plateformes de trading telles que Huobi, Kucoin, BitFinex, Crypto.com et Gemini, chacune avec ses propres caractéristiques, mais l'investissement devrait être prudent. Pour choisir une plate-forme, vous devez prendre en compte des facteurs tels que la sécurité, la liquidité, les frais, l'expérience utilisateur, la sélection des devises et la conformité réglementaire, et investir rationnellement

Programme C pour trouver le plus grand facteur premier d'un nombre Programme C pour trouver le plus grand facteur premier d'un nombre Aug 27, 2023 am 10:09 AM

Facteur premier - Dans la théorie des nombres, les facteurs premiers d'un entier positif sont les nombres premiers qui divisent cet entier exactement. Le processus de recherche de ces nombres est appelé factorisation entière ou factorisation première. Exemple - Les facteurs premiers de 288 sont : 288 = 2x2x2x2x2

Comment implémenter des fonctions de sauvegarde et de récupération de données dans les projets PHP ? Comment implémenter des fonctions de sauvegarde et de récupération de données dans les projets PHP ? Nov 04, 2023 pm 04:30 PM

Comment implémenter des fonctions de sauvegarde et de récupération de données dans les projets PHP ? Dans le processus de développement et de gestion de projets PHP, les fonctions de sauvegarde et de récupération des données sont très importantes. Que ce soit pour éviter une perte accidentelle de données ou pour assurer la sécurité des données lors de la migration et de la mise à niveau d’un projet, nous devons maîtriser les méthodes de sauvegarde et de récupération des données. Cet article expliquera comment implémenter les fonctions de sauvegarde et de récupération de données dans les projets PHP. 1. Chemin de sauvegarde de la définition de sauvegarde des données : Tout d’abord, nous devons définir le chemin utilisé pour stocker les fichiers de sauvegarde. Peut être défini dans le fichier de configuration du projet

See all articles