Mysql 数据库 在主从 数据库进行 导出备份和恢复的时候,须要注意是否启用数据库用GTID模式.若是开启,则在mysqldump数据时,应该mysqldump命令加上参数--set-gtid-purged=OFF。mysql
具体详细见转载:sql
下面是采用mysqldump导出a.sql的前30行记录:数据库
[root@aaa0-D14-042 mysqlbackup]# head -30 t1.sql -- MySQL dump 10.13 Distrib 5.6.24-72.2, for Linux (x86_64) -- -- Host: localhost Database: yyf -- ------------------------------------------------------ -- Server version 5.6.24-72.2-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; <!--重点注意下面这两行--> SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN; SET @@SESSION.SQL_LOG_BIN= 0; -- -- GTID state at the beginning of the backup -- SET @@GLOBAL.GTID_PURGED='18f9a804-343b-11e5-a21d-b083fed01601:1-2'; -- -- Table structure for table `t1` -- DROP TABLE IF EXISTS `t1`;
通常主从架构的数据库,一般相关导入操做只须要在master(主库)端进行便可,可是正如导出a.sql代码中标注重点注意部分所示,禁掉了session级别的sql_log_bin,因此在目标端导入t1表时,并不会产生对应的bin log日志,因此该表及其数据并不会被同步到slave端。这是在数据库测试时发现这点是须要注意的。session
通过测试发现,当数据库开启GTID模式时才出现综上所述,所以若是数据库用GTID模式,在mysqldump数据时,应该如warning提示加上参数--set-gtid-purged=OFF,此时导出的sql文件(没重点标记的位置的代码):架构
-- MySQL dump 10.13 Distrib 5.6.26, for Linux (x86_64) -- -- Host: localhost Database: yyf -- ------------------------------------------------------ -- Server version 5.6.26-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `t1`; ` -- DROP TABLE IF EXISTS `t1`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */;