mysqldump工具的alldatabases选项对所有数据库进行备份

   1.通过--all-databases选项对所有的数据库进行备份

[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-transaction --master-data  --triggers  --events  --routines --flush-logs --all-databases > FullBackup_2021-11-09.sql
Enter password: 
通过--all-databases选项对Mysql进行全库的备份.备份出来的SQL dump文件中,包含创建数据库的SQL语句。

2.查看生成的sql文件
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000011', MASTER_LOG_POS=107;
--
-- Current Database: `mysql`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */;  #在生成的SQL格式的备份文件中,包含CREATE DATABASE语句.
USE `mysql`;
--
-- Table structure for table `columns_priv`
--
DROP TABLE IF EXISTS `columns_priv`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
3.查看都备份了哪些数据库
[mysql@redhat6 MysqlDb_Backup]$ grep "CREATE DATABASE \/\*\!32312 IF NOT EXISTS\*\/" FullBackup_2021-11-09.sql
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */; 
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test01` /*!40100 DEFAULT CHARACTER SET latin1 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `top_server` /*!40100 DEFAULT CHARACTER SET utf8 */;

4.查看当前所有的数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |   #该数据库在全备时是不进行备份的
| mysql              |
| performance_schema |   #该数据库在全备时是不进行备份的
| test01             |
| top_server         |
+--------------------+
在进行数据库的全备份时,information_schema和performance_schema两个DB是没有进行备份的。
原文地址:https://www.cnblogs.com/vzhangxk/p/15603639.html