php - WampServer 2.4 MySQL 实例未启动,图标保持橙色

标签 php mysql wamp innodb wampserver

当我启动 WampServer 2.4 时,MySQL 实例未启动。

有一天还正常,第二天就出现这个问题了。

我尝试重新启动所有服务,包括 my.ini 中的“innodb_force_recovery = 1”,并且我也在 my.ini 中删除了skip-innodb。

我收到以下错误:

2014-04-28 16:06:51 4408 [Note] Plugin 'FEDERATED' is disabled.
2014-04-28 16:06:51 13dc 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.
2014-04-28 16:06:51 4408 [Note] InnoDB: The InnoDB memory heap is disabled
2014-04-28 16:06:51 4408 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2014-04-28 16:06:51 4408 [Note] InnoDB: Compressed tables use zlib 1.2.3
2014-04-28 16:06:51 4408 [Note] InnoDB: Not using CPU crc32 instructions
2014-04-28 16:06:51 4408 [Note] InnoDB: Initializing buffer pool, size = 16.0M
2014-04-28 16:06:51 4408 [Note] InnoDB: Completed initialization of buffer pool
2014-04-28 16:06:51 13dc  InnoDB: Operating system error number 3 in a file operation.
InnoDB: The error means the system cannot find the path specified.
InnoDB: If you are installing InnoDB, remember that you must create
InnoDB: directories yourself, InnoDB does not create them.
2014-04-28 16:06:51 13dc  InnoDB: File name C:\mysql\data\ibdata1
2014-04-28 16:06:51 13dc  InnoDB: File operation call: 'create' returned OS error 103.
2014-04-28 16:06:51 13dc  InnoDB: Cannot continue operation.

我已搜索了操作系统错误 3 和操作系统错误 103,但找不到问题的答案。

我获得了 ibdata1 文件,但由于我在数据库中获得了数据,因此我不想删除它并让 WampServer 重新创建它。

无法登录 phpMyAdmin,但可以访问本地主机。

此外,我很确定我没有更改文件夹结构中的任何内容。

最佳答案

MySQL 服务器默认接受来自 tpc 端口 3306 的连接。

因此,您的两个 MySQL 服务器都尝试使用相同的端口不允许,因此第二个启动的 MySQL 服务器将失败,因为它无法访问端口 3306。

由于 WAMPServers MySQL 服务器被配置为仅根据手动请求启动,而另一个 MySQL 服务器可能设置为“启动时自动启动”WAMPServers MySQL 将永远不会启动

选项 1

您只需要一台 MySQL 服务器来运行数百个单独的数据库,因此在备份任何数据库后卸载其他 MySQL 服务器。然后将数据库恢复到WAMPServer自带的MySQL Server中。

选项 2

将其中一台 MySQL 服务器使用的端口从 3306 更改为 3307。然后您可以在同一台计算机上运行 2 个 MySQL 服务器。 当然还有两倍的内存开销

如果您更改 WAMPServer MySQL 服务器配置,则必须执行以下操作:

编辑\wamp\bin\mysql\mysqlx.y.z\my.ini文件 将每个对端口 3306 的引用更改为 3307。

编辑 PHP.INI 文件(使用 WAMPManager 菜单确保您正在编辑正确的文件)。

更改此行以便 PHP 知道您已将 MySQL 移至另一个端口

mysqli.default_port = 3306

mysqli.default_port = 3307

您可能遇到的问题 手动安装 MySQL 服务器时,通常会将其 my.ini 或 my.cnf 放入 C\WINDOWS\ 文件夹结构中。这是一件痛苦的事情,因为 my.ini 将被您计算机上运行的任何 MySQL 服务器拾取并使用,凭借 MySQL 用于查找其 ini 文件的搜索顺序。

如果您的系统出现这种情况,您必须将该文件移回其他(非 WAMPServer)MySQL 服务器安装的文件夹结构中。

简而言之在系统上只安装一台 MySQL 服务器要简单得多,至少在您对 MySQL 服务器及其操作更加熟悉和有经验之前是这样。

您的第二期

2。来自 MySQL 的警告,事件 ID 100 - “不推荐使用具有隐式 DEFAULT 值的 TIMESTAMP。请使用 --explicit_defaults_for_timestamp 服务器选项

编辑 my.ini 并将此行添加到 [wampmysqld] 部分。

[wampmysqld]
explicit_defaults_for_timestamp

关于php - WampServer 2.4 MySQL 实例未启动,图标保持橙色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23343847/

相关文章:

php - 如何将数据从 Html 按钮发送到 php 命令

如果多次调用,来自 TCP 客户端的 PHP stream_get_contents 会挂起

javascript - Firefox 上的自定义滚动条

mysql - 什么是 MySQL 主键(key1、key2)

php - 如何更新倒数第二行?

PHP 多个搜索下拉菜单

mysql - 使用 SUM(列字段)添加数据值 - MySQL

mysql - 在 MySQL 5.0 和 MySQL 5.5 之间升级数据库

apache - 强制 Apache 更新日志文件路径,无需在 WAMP 中重新启动

mysql - 最小化数据库以便从 Magento 导出所有产品