MYSQL 恢复数据库时出错:请在导入前丢弃表空间

MYSQL Error at restoring database: Please DISCARD the tablespace before IMPORT

我多次成功地完成了相同的数据库恢复顺序commerce_db_622:

  1. 进入目录/usr/local/mysql/data执行命令:

    sudo rm -rf COMMERCE_DB_622.

这会删除数据库 COMMERCE_DB_622

  1. 启动数据库客户端:

     mysql –u root

  2. 运行创建数据库的脚本如下:

    CREATE DATABASE COMMERCE_DB_622 /*!40100 DEFAULT CHARACTER SET utf8 */;
    
  3. 移动到存储转储文件的目录 COMMERCE_DB_622.sql 和 运行 以下命令:

    mysql -u root COMMERCE_DB_622 < COMMERCE_DB_622.sql

这工作正常,但今天我突然开始收到 有效的已检查备份文件 的错误。

ERROR 1813 (HY000) at line 25: Tablespace for table 'commerce_db_622.batch_job_execution' exists. Please DISCARD the tablespace before IMPORT.

我使用以下方法删除了数据库: 光盘数据;须藤 rm -rf COMMERCE_DB_622;

然而,重要的是始终在开始时使用常规删除 SQL: 删除数据库 COMMERCE_DB_622

如果 "DROP DATABASE" SQL 导致错误,则可以使用删除目录命令删除数据。