MySql“表不存在”

时间:2013-09-26 09:17:00

标签: mysql xampp

我从我认为是问题的开始开始:

我将一个mysql数据库从在线服务器导出到本地服务器,因此我可以在没有风险的情况下对其进行测试。

但是在XAMPP中我无法重启MySql模块。

11:02:54  [mysql]   Attempting to start MySQL app...

除了抛出此错误外什么都没做

10:57:49  [mysql]   Error: MySQL shutdown unexpectedly.
10:57:49  [mysql]   This may be due to a blocked port, missing dependencies, 
10:57:49  [mysql]   improper privileges, a crash, or a shutdown by another method.
10:57:49  [mysql]   Press the Logs button to view error logs and check
10:57:49  [mysql]   the Windows Event Viewer for more clues
10:57:49  [mysql]   If you need more help, copy and post this
10:57:49  [mysql]   entire log window on the forums

我在网上查了一下,我找到的唯一可行的解​​决方案就是删除 每次启动前的mysql / data / ibdata1文件。我知道它是一个肮脏的解决方案,但它有效,我不想浪费太多时间。

现在实际问题:我添加了一个新表。在下次重启(包括删除ibdata1文件)之后,我在phpMyAdmin的左栏中看到了这个表,但是当我点击“+”时它的完全空。当我点击名称时出现错误

#1146 table doesnt exist

如果我尝试创建一个同名的新表,我会得到同样的错误。

这是xampp日志文件:

2013-09-27 11:17:21 4284 [Note] Plugin 'FEDERATED' is disabled.
2013-09-27 11:17:21 21e8 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator.
2013-09-27 11:17:21 4284 [Note] InnoDB: The InnoDB memory heap is disabled
2013-09-27 11:17:21 4284 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2013-09-27 11:17:21 4284 [Note] InnoDB: Compressed tables use zlib 1.2.3
2013-09-27 11:17:21 4284 [Note] InnoDB: Not using CPU crc32 instructions
2013-09-27 11:17:21 4284 [Note] InnoDB: Initializing buffer pool, size = 16.0M
2013-09-27 11:17:21 4284 [Note] InnoDB: Completed initialization of buffer pool
2013-09-27 11:17:21 4284 [Note] InnoDB: The first specified data file C:\xampp\mysql\data\ibdata1 did not exist: a new database to be created!
2013-09-27 11:17:21 4284 [Note] InnoDB: Setting file C:\xampp\mysql\data\ibdata1 size to 10 MB
2013-09-27 11:17:21 4284 [Note] InnoDB: Database physically writes the file full: wait...
2013-09-27 11:17:21 4284 [Note] InnoDB: Setting log file C:\xampp\mysql\data\ib_logfile101 size to 5 MB
2013-09-27 11:17:21 4284 [Note] InnoDB: Setting log file C:\xampp\mysql\data\ib_logfile1 size to 5 MB
2013-09-27 11:17:21 4284 [Note] InnoDB: Renaming log file C:\xampp\mysql\data\ib_logfile101 to C:\xampp\mysql\data\ib_logfile0
2013-09-27 11:17:21 4284 [Warning] InnoDB: New log files created, LSN=45781
2013-09-27 11:17:21 4284 [Note] InnoDB: Doublewrite buffer not found: creating new
2013-09-27 11:17:21 4284 [Note] InnoDB: Doublewrite buffer created
2013-09-27 11:17:22 4284 [Note] InnoDB: 128 rollback segment(s) are active.
2013-09-27 11:17:22 4284 [Warning] InnoDB: Creating foreign key constraint system tables.
2013-09-27 11:17:22 4284 [Note] InnoDB: Foreign key constraint system tables created
2013-09-27 11:17:22 4284 [Note] InnoDB: Creating tablespace and datafile system tables.
2013-09-27 11:17:22 4284 [Note] InnoDB: Tablespace and datafile system tables created.
2013-09-27 11:17:22 4284 [Note] InnoDB: Waiting for purge to start
2013-09-27 11:17:22 4284 [Note] InnoDB: 5.6.11 started; log sequence number 0
2013-09-27 11:17:22 4284 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 9dce5432-2755-11e3-835a-20689d9d84a8.
2013-09-27 11:17:22 4284 [Note] Server hostname (bind-address): '*'; port: 3306
2013-09-27 11:17:22 4284 [Note] IPv6 is available.
2013-09-27 11:17:22 4284 [Note]   - '::' resolves to '::';
2013-09-27 11:17:22 4284 [Note] Server socket created on IP: '::'.
2013-09-27 11:34:15 3928 [Note] Plugin 'FEDERATED' is disabled.
2013-09-27 11:34:15 12d0 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator.
2013-09-27 11:34:15 3928 [Note] InnoDB: The InnoDB memory heap is disabled
2013-09-27 11:34:15 3928 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2013-09-27 11:34:15 3928 [Note] InnoDB: Compressed tables use zlib 1.2.3
2013-09-27 11:34:15 3928 [Note] InnoDB: Not using CPU crc32 instructions
2013-09-27 11:34:15 3928 [Note] InnoDB: Initializing buffer pool, size = 16.0M
2013-09-27 11:34:15 3928 [Note] InnoDB: Completed initialization of buffer pool
2013-09-27 11:34:15 3928 [Note] InnoDB: Highest supported file format is Barracuda.
2013-09-27 11:34:15 3928 [Note] InnoDB: The log sequence numbers 0 and 0 in ibdata files do not match the log sequence number 2203529 in the ib_logfiles!
2013-09-27 11:34:15 3928 [Note] InnoDB: Database was not shutdown normally!
2013-09-27 11:34:15 3928 [Note] InnoDB: Starting crash recovery.
2013-09-27 11:34:15 3928 [Note] InnoDB: Reading tablespace information from the .ibd files...
2013-09-27 11:34:15 3928 [ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace mysql/innodb_index_stats uses space ID: 2 at filepath: .\mysql\innodb_index_stats.ibd. Cannot open tablespace mydatabase/blackboard which uses space ID: 2 at filepath: .\tum_mitfahrer_app\blackboard.ibd
InnoDB: Error: could not open single-table tablespace file .\tum_mitfahrer_app\blackboard.ibd
InnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.

它在Windows 8上运行可能是关于缺少权限的东西,但我从c:\ program files \ xampp重新安装了xampp到c:\ xampp - >同样的问题。我必须删除ibdata1才能启动它,然后我创建的每个新表都消失了。

1 个答案:

答案 0 :(得分:0)

在MySQL 5.6中似乎是known bug 他们还提到了一种解决方法:

  

[2012年11月27日8:39] Sunny Bains   这是bug#67179的副本。只是不同的副作用。 Windows安装程序?显然复制了.ibd文件并导致了这个问题。 data / mysql中的那些。如果要恢复文件,则必须执行以下操作:

     
      
  1. 删除数据/ mysql / * .ibd文件和.ibd文件的相应.frm文件
  2.   
  3. 使用--skip-slave-start
  4. 启动服务器   
  5. 您应该能够访问和备份数据
  6.         

    我注意到,在关机时,你会再次失败。我需要调查这个问题的原因。我稍后会发布更新。

如果它不起作用,请尝试{X}与XAMPP相关的Restoring MySQL InnoDB Files on Windows