从 .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 –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 数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何从 .myd、.myi、.frm 文件中恢复 MySQL 数据库