使用 cmd 备份 MySQL

使用 cmd 备份 MySQL

当我尝试使用命令提示符命令备份我的数据库时

mysqldump -u root -p db_name > path to store

它提示

输入密码:

在我输入密码之前的几秒钟内,它重定向回 CMD。此外,还会在所提及的位置创建一个文件,但其中没有任何内容。

但是当我尝试在命令本身中输入密码时,它会生成正确的转储文件。请告诉我原因是什么。

在此处输入图片描述

答案1

我假设您的转储正在转储不存在的“培训”数据库。您需要格式化命令以引用“培训客户”数据库。

您需要在数据库名称周围添加引号。

在数据库中命名带有空格(空白)的事物时,通常的做法是永远不要包含空格,并使用名称(如“trainingcustomers”)消除空格,或用下划线(training_customers)替换空格。连字符不太常用来填充空格,但是一种第三选择。

答案2

我只能想到一些由 mysqldump 拾取的预配置(如默认用户和密码),这是错误的,因为 mysqldump 退出时没有说明原因。尝试浏览 mysql 配置文件,并检查 mysql 日志中是否有任何消息。也许您设置了系统变量,如 PASSWORD,当 -p 后未提供密码时,mysqldump 会拾取该变量。

相关内容