sql - Mysql 复制转储无需停机?空的sql文件

标签 sql mysql database-replication

我尝试创建转储作为复制主数据,并使用以下命令创建转储,但sql文件仅包含参数,没有数据和结构。命令是:

mysqldump --skip-lock-tables --single-transaction --flush-logs --hex-blob --master-data=2 -A > bckp.sql.gz 

sql文件的内容是:

-- MySQL dump 10.13  Distrib 5.1.41, for debian-linux-gnu (x86_64)
--
-- Host: xxx.xxx.xxx.xxx    Database: XXX
-- ------------------------------------------------------
-- Server version       5.1.72-0ubuntu0.10.04.1-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 */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2013-12-26  8:56:27

为什么会出现这个问题?

最佳答案

如果mysqldump尝试使用的用户凭据仅具有USAGE权限,就会发生这种情况,该权限本质上允许您连接到服务器并执行以下操作如果您没有被授予任何更细粒度的权限,则什么也没有。

shell> mysql -e 'SHOW GRANTS;'

如果您没有将用户名和密码传递给 mysqldump,那么上面的命令将告诉您您正在以谁身份进行身份验证,以及该用户拥有什么权限...或者,如果您将用户名和密码传递给 mysqldump ,然后将它们添加到上面的命令并检查输出。当然,修复方法可能是将适当的用户名和密码作为参数传递给 mysqldump(如果您还没有这样做的话)。

默认安装包含一个有权访问“test”数据库的匿名用户,如果您没有删除该用户,则可能会访问该帐户;您可能想要删除该用户(如果存在),您可以手动或使用 mysql_secure_installation 来执行此操作。想必您一定已经删除了测试数据库,或者如果我在这里的诊断准确的话,它将包含在转储文件中。

关于sql - Mysql 复制转储无需停机?空的sql文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20784865/

相关文章:

mysql - SQL查询百分位数间隔,但每个间隔的行数相等?

python - Django 模型没有保存到 MySQL (Maria DB),而其他模型则保存到 MySQL

mysql - 在不同服务器上同步 MySQL 库的最佳方法

mysql - 在一定时间后完成所有 MySQL 更改

sql - 以下查询是否限制SQL Select

sql - 如何在SQL中将字符串添加到正则表达式中,然后将其转换为日期?

mysql - 如何获取与值匹配或存在于另一个表中的记录?

SQL WITH 语句,where 子句中的未知列

java - 将数据从 java 程序存储到 MySQL 的最简单方法是什么?

mysql - 如何处理MySQL读写分离中的最终一致性问题