【问题标题】:Restore MySQL table from backup从备份中恢复 MySQL 表
【发布时间】:2017-03-07 10:42:48
【问题描述】:

我已使用以下命令从我的数据库中创建了特定表的备份。

mysqldump -u root -p db_name table_name > table.sql

是否可以在不影响其余表的数据的情况下恢复特定的备份表?这意味着,我的表的备份文件中的任何数据都将是唯一受影响的数据?

反过来是:

mysql database_name < database_name.sql

但这是针对整个数据库的。单用表备份怎么办?

【问题讨论】:

  • 从备份文件中删除所有不需要的数据并使用为导入提供的语句 ypu
  • 或者您可以从临时数据库中导入文件,然后将所需的表移动到适当的数据库中。顺便说一句 - 据我所知,如果没有手动文件更新,就无法从 sql 文件中删除表数据。
  • @Jens 和 Roman S,谢谢大家。我认为从我现有的表中删除不需要的数据并从我的备份文件中插入数据就可以完成这项工作。
  • @JunM 从备份文件中手动删除不需要的数据是一个非常糟糕的建议,因为此任务很容易出错。特别是因为您已经单独拥有表备份。 “Pradeep Reddy”和我都提供了一个非常好的答案

标签: mysql


【解决方案1】:

虽然“Pradeep Reddy”给出的答案是绝对正确的,但还有另一种方法可以在 mysql 提示符下使用 SOURCE 命令。

mysql> USE database_name;

mysql> SOURCE /my_fullpath_to_backup_folder/table.sql

【讨论】:

    【解决方案2】:

    mysql -u root -p 数据库名

    【讨论】:

    • 解释你的建议
    • 虽然欢迎使用此代码 sn-p,并且可能会提供一些帮助,但它会是 greatly improved if it included an explanation of howwhy 这解决了问题。请记住,您正在为将来的读者回答问题,而不仅仅是现在提问的人!请edit您的答案添加解释,并说明适用的限制和假设。
    猜你喜欢
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 2010-10-23
    • 2011-05-28
    • 2016-12-05
    • 1970-01-01
    相关资源
    最近更新 更多