表结构:

_____________ 
|             |
|   EVENTS    |
|_____________|
|             |
| *EVENT_ID   |
|  EVENT_DATE |
|  TITLE      |
|_____________|


问题:

由于之前删除了数据库mytest中的events.frm,而events.ibd仍然存在,导致创建events表失败。

错误提示:

02:45:38    Apply changes to events Error 1050:
Table '`mytest`.`events`' already exists SQL Statement:
CREATE TABLE `mytest`.`events` (   `idevents` INT NOT NULL AUTO_INCREMENT,   PRIMARY KEY (`idevents`))

解决办法:

1、新建数据库 test1 ,创建相同的表events和结构:

CREATE SCHEMA `test1` ;
CREATE TABLE `test1`.`events` (
  `EVENT_ID` INT NOT NULL AUTO_INCREMENT,
  `EVENT_DATE` TIMESTAMP NULL,
  `TITLE` VARCHAR(45) NULL,
  PRIMARY KEY (`EVENT_ID`));

2、关闭数据库服务。拷贝一份events.ibd

3、到数据库test1的数据文件夹下找到events.frm,将其拷贝到mytest的文件夹下。

D:\MySQL_Data\MySQL_Server5.6\data\test1  中的  events.frm 
拷贝到  ==>
D:\MySQL_Data\MySQL_Server5.6\data\mytest  文件夹下

4、开启数据库服务。

5、这时可以看到mytest中的表events,先不进行其他任何操作,直接删除数据库mytest中的表events

USE mytest;
DROP TABLE events;

可以成功删除表events了,然后重新在mytest中重新建立events表就OK了。