从 .mysql 文件恢复 MySQL 数据库

Posted

技术标签:

【中文标题】从 .mysql 文件恢复 MySQL 数据库【英文标题】:Restore MySQL database from .mysql file 【发布时间】:2016-12-03 06:14:47 【问题描述】:

我有一个使用mysqldump 创建的backup.mysql 文件。

如何使用它来恢复数据库?我在 Sublime Text 中打开了文件,它的开头是这样的!

【问题讨论】:

How do I restore a MySQL .dump file?的可能重复 .mysql 是使用 mysqldump 创建的转储的一个奇怪扩展名。是 SQL 脚本吗? 是的,但这就是它产生的结果! 不重复。这不是.dump 文件 @Ciwan 扩展无效;我想确定它是一个 SQL 脚本 【参考方案1】:

您生成的转储是一个 SQL 脚本,您可以使用任何您想要的工具运行该脚本。作为这个问题How do I restore a dump file from mysqldump?的OP,如果您尝试使用MySQL Administrator或其他提供特定备份/恢复功能的软件来恢复它,它可能会抛出错误,因为它要求特定格式(他自己的格式);但如果转储已正确生成,您可以使用任何 MySQL 客户端运行它,例如使用命令行工具:

mysql -h hostname -u username -p yourschema < ./path/to/the/script.mysql

【讨论】:

谢谢,我将它重命名为.dump 并使用你上面的命令,它成功了! @Ciwan 要明确,扩展无效;但是 .mysql 很不寻常,我想确定它是一个 SQL 脚本。【参考方案2】:

    将您的backup.sql 文件复制到工作目录:C:\xampp\mysql\bin。 (或任何你的路径)

    在您的命令提示符或终端切换到 MySQL 目录。 cd c:\xampp\mysql\bin(或任何你的路径)

    打开 MySQL 数据库系统 mysql –h localhost –u root(或任何您的凭据)

    您需要重新授予权限:GRANT ALL ON your_db_here.* to 'root'@'localhost';(或任何您的凭据)

    需要重新创建数据库:CREATE DATABASE your_db_here;

    开始使用数据库:USE your_db_here; 导入您创建的转储文件:source backup.mysql 使用DESCRIBE 命令和"SELECT * FROM" 命令确保您的数据库已正确恢复。

【讨论】:

以上是关于从 .mysql 文件恢复 MySQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章

从 .frm 文件恢复 mysql 数据库

如何从 .myd、.myi、.frm 文件中恢复 MySQL 数据库

从数据文件夹备份中恢复 mysql 数据库

通过Binlog恢复数据

从“C:\xampp\mysql\data”文件夹的备份中恢复 SQL 数据库

亲測Mysql表结构为InnoDB类型从ibd文件恢复数据