我需要一些帮助来更改 MySQL 正在运行的端口。
因此,根据http://dev.mysql.com/doc/refman/5.1/en/option-files.html
MySQL 首先在 WINDIR\my.ini、WINDIR\my.cnf 等中查找 conf.......
这些文件都不存在,甚至安装目录中的 my.ini 也不存在。
因此我在安装目录中创建了 my.ini...@C:\Program Files\MySQL\MySQL Server 5.5\my.ini
该文件的内容如下:
端口=44999
我尝试过用这个 ini 做各种事情,我使用了示例,但是每当我保存更新的 ini 后转到 services.msc 并重新启动 MySQL55 服务时,它总是在默认端口 3306 上启动
答案1
查看服务控制台(services.msc)中的命令行将具体告诉您正确的 .ini 文件在哪里,然后您可以修改该文件(并希望获得您想要的结果)。
为服务指定的命令行显示在服务的属性对话框中。要找到它:
- 右键单击服务名称
- 单击属性
读取“可执行文件的路径:”值。这是用于服务的命令行。MySql 将指定--defaults-file
包含 my.ini 文件路径的选项。
答案2
只要转到您的C:\Program Files\MySQL\MySQL Server 5.5\
,您就会在那里找到各种 .ini 文件,例如 my-huge.ini、my-small.ini、my-template.ini、my-large.ini(很可能还有 my.ini)。
默认情况下,MySQL Server 5.5 将查找 C:\Program Files\MySQL\MySQL Server 5.5\my.ini(除非在服务命令行上使用 --defaults-file= 选项定义了另一个文件)
所以我猜你的问题不是 MySQL 服务没有解析正确的 .ini 文件(因为你在正确的路径中创建了它,并且使用了正确的名称),而是文件本身的内容。仅仅一个包含你在问题中提到的内容的 my.ini 文件是不够的。
在上面的文件夹中找到 my-small.ini,将其重命名为 my.ini,然后用记事本打开该文件并编辑以下行
[mysqld]
port = 3306
到
[mysqld]
port = 44999
从 Windows 服务管理器中重新启动 mysql 服务(右键单击我的电脑 -> 管理 -> 服务和应用程序 -> 服务),您的 MySQL 服务器现在应该正在监听端口 44999(记住您还必须在 Windows 防火墙上打开此端口!)
答案3
您是否按照默认方式和默认设置进行了安装?
如果应用程序未设置为读取该位置进行设置,那么随机将 ini 文件放入其中不会有任何用处...
此时,我会获取 sysinternals procmon 工具(免费),让它在您重新加载服务器应用程序时进行监视,然后查看它正在查找哪些文件位置以进行配置。使用该工具也可能会在您的系统上的某个地方找到实际的配置文件,然后在那里更改设置。
答案4
在 MySQL 5.6 中,配置文件 my.ini 位于名为 C:/ProgramData 的隐藏文件夹中。您可以打开 MySQL 命令行实用程序,然后输入“status”以查看正在使用的端口。