每次我安装EasyPHP 13.1VC9它都可以工作几天,然后在我开启它时随机点我得到这个错误,我无法启动MySQL。我尝试过以管理员身份运行,我尝试过编辑权限。此外,当我通过PHPadmin访问MYSQL时,我收到以下错误:
#2002 - No connection could be made because the target machine actively refused it.
这是日志文件所说的内容:
2013-06-12 23:47:18 4148 [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 userauth/userinfo which uses space ID: 2 at filepath: .\userauth\userinfo.ibd
InnoDB: Error: could not open single-table tablespace file .\userauth\userinfo.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.
答案 0 :(得分:15)
这是MySQL 5.6.11的一个错误 - EasyPHP网站说要升级到MySQL 5.6.12来解决这个问题,但无论如何我都遇到了同样的问题。
通过一些追踪,我遇到了这是因为当EasyPHP仍在运行时(通过他们的Facebook page)关闭/重新启动计算机。
工作解决方案似乎如下(source):
答案 1 :(得分:4)
我刚遇到这个问题。我可以通过在MySQL的配置文件中添加一行来重启MySQL。这是日志文件错误的选项3。我将innodb_force_recovery = 1
添加到my.ini文件中。然后重新启动MySQL服务器。如果它正常工作,您必须返回配置文件,删除该行并重新启动。它对我有用,但我在用户访问方面遇到了麻烦。我认为这个错误来自这个版本的EastPHP,我找不到解决方法。我尝试卸载它并安装12.1版本。
希望这有帮助!
答案 2 :(得分:1)
断电后被迫重新启动我的win7 PC我再也无法在EasyPHP-DevServer 13.1上使用mySQL,消息:“意外结束了mysql”:
尝试上面的所有答案,发现@Jessiiem回答工作。这是一个小小的操作列表,如果遇到同样的问题,人们可以节省时间:
我在这里找到了配置文件:
C:\Program Files (x86)\EasyPHP-DevServer-13.1VC11\binaries\conf_files\my.ini
并补充说:
innodb_force_recovery = 1
之后
# Uncomment the following if you are using InnoDB tables
然后重启Easy PHP(以管理员身份运行);
取消注释配置文件为@Jessiiem建议:
# innodb_force_recovery = 1
答案 3 :(得分:0)
来自官方EasyPHP FAQ:
* 3。 [5.3.3,Vista / Seven] MySql意外结束...查看日志文件?
您需要更改EasyPHP目录的用户权限
1. Go to 'Computer', open/view Drive C, then double click 'Program Files (x86)'.
2. Right click on 'EasyPHP5.3.0' folder then click 'Properties'.
3. On 'Security' tab click 'Edit' button.
4. Select the user that you are currently using.
5. Under 'Permissions for Users' box, tick 'Full control' on 'Allow' column.
6. And then click 'OK' button to apply the changes.*
答案 4 :(得分:0)
当我遇到这个问题时,实际上并不是MySQL的一个版本。我尝试了不同的版本。我认为这是一个简单的问题。
解决这个问题的方法是将innodb_force_recovery = 1
代码放在MySQL配置文件# Uncomment the following if you are using InnoDB tables
中my.ini
的上半部分。
有了这个,我就可以再次重启MySQL。它开始运作得很好,所以也许这可能适合你。
答案 5 :(得分:0)
在上述所有方法之后,仅禁用innodb在我的案例中有所帮助: (EasyPHP 14.1,赢10) 在my.ini中:
default-storage-engine=MyISAM
default-tmp-storage-engine=MyISAM
innodb=OFF
http://www.chriscalender.com/disabling-innodb-in-mysql-5-6-and-mariadb-10-0/
答案 6 :(得分:0)
有时打开eds-mysqld.exe通过CMD可以告诉你问题是什么。我的意思是打开CMD.exe然后cd C:\ Program Files(x86)\ EasyPHP-DevServer-14.1VC11 \ binaries \ mysql \ bin \并打开eds-mysqld.exe。
我的问题是mysql的错误目录,所以没有错误日志...。