如何将mysql的默认端口从3306更改为3360
Posted
技术标签:
【中文标题】如何将mysql的默认端口从3306更改为3360【英文标题】:How to change the default port of mysql from 3306 to 3360 【发布时间】:2015-07-04 03:54:08 【问题描述】:我想更改 mysql 服务器的默认端口号,目前是 3306。我想将其更改为 3360。
我试过了:
-- port=3360
但事情对我不起作用。请提供查询以更改端口而不是任何配置。我正在使用 Windows 8 64 位。
【问题讨论】:
你猜对了,这不是正确的“论坛”(也不是论坛)。请考虑在 ServerFault 上提问。 【参考方案1】:您需要编辑您的my.cnf
文件并确保您已按照以下行设置端口:
port = 3360
然后重新启动您的 MySQL 服务,您应该一切顺利。由于port
不是动态变量(q.v. here for MySQL documentation 显示所有系统变量的表),因此您无法运行任何查询来进行此更改。
【讨论】:
my.cnf 文件在哪里,实际上我使用的是 mariadb,它是 mysql 的分支 This link to the MariaDB documentation 会告诉你在哪里可以找到my.cnf
文件。
由于您运行的是 Windows,您只需在您的 C:
驱动器上搜索 my.cnf
即可找到它。
my-huge.ini
必须是您的 MariaDB 安装的配置文件。是的,修改它然后重新启动你的数据库。
不确定 MariaDB,但您可以从任务列表中终止进程 (CTRL + ALT + DEL)。【参考方案2】:
如果您使用的是 Windows,您可能会在此目录中找到配置文件 my.ini
它
C:\ProgramData\MySQL\MySQL Server 5.7\
您在文本编辑器中打开此文件并查找此部分:
# The TCP/IP Port the MySQL Server will listen on
port=3306
然后你更改端口号,保存文件。 在任务管理器>服务下找到服务MYSQL57并重启。
【讨论】:
ini 文件中的部分[mysqld]
【参考方案3】:
在较新的版本(例如 8.0.0)上,最简单的解决方案是(例如脚本启动的不错选择):
mysqld --port=23306
【讨论】:
这个答案应该被赞成。整个数据库重新定义了“遗留”一词,其中包含错误和不起作用的东西以及创新的未来功能,例如通过命令行参数进行配置!【参考方案4】:进入安装的mysql路径,找到bin文件夹,打开my.ini,搜索3306,将3306改为3360
【讨论】:
【参考方案5】:当服务器第一次启动时,my.ini
可能不会在每个人都声明的地方创建。我可以在C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.6
找到我的
此位置具有每个设置的默认值。
# CLIENT SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by MySQL client applications.
# Note that only client applications shipped by MySQL are guaranteed
# to read this section. If you want your own MySQL client program to
# honor these values, you need to specify it as an option during the
# MySQL client library initialization.
#
[client]
# pipe
# socket=0.0
port=4306 !!!!!!!!!!!!!!!!!!!Change this!!!!!!!!!!!!!!!!!
[mysql]
no-beep
default-character-set=utf8
【讨论】:
【参考方案6】:其实你可以直接使用/mysqld --PORT 1234
来运行服务,它会强制mysql在指定的端口上运行而不改变cnf/ini文件。
我刚刚咳了一个 cnf 不起作用的案例。很奇怪...所以我只是使用 cmd 行作为快捷方式,它可以工作!
【讨论】:
【参考方案7】:尝试将连接端口更改为 8012
以管理员身份打开 xampp
Mysql config => my.ini 将端口从 3306 更改为 8012
关闭并再次运行 我希望它会起作用。
【讨论】:
【参考方案8】:更改my.cnf
文件并添加此行或更改port=3360
在我的 Fedora 34 上
sudo vi /etc/my.cnf
添加这一行 ==> port=3360
【讨论】:
这与 2015 年接受的答案相同。【参考方案9】:在 Windows 8.1 x64 位 操作系统中,目前我使用的是 MySQL
版本:
Server version: 5.7.11-log MySQL Community Server (GPL)
更改你的MySQL
端口号,进入安装目录,我的安装目录是:
C:\Program Files\MySQL\MySQL Server 5.7
在任何文本编辑器中打开 my-default.ini
配置设置文件。
在配置文件中搜索该行。
# port = .....
将其替换为:
port=<my_new_port_number>
就像我自己变成了:
port=15800
要应用更改,请不要忘记立即重新启动 MySQL 服务器或您的操作系统。
希望这对很多人有帮助。
【讨论】:
【参考方案10】:最好的方法是备份所需的数据库并重新配置服务器。
创建备份
mysqldump 命令用于创建由 MySQL 管理的数据库的文本文件“转储”。这些转储只是包含从头开始重新创建数据库所需的所有 SQL 命令的文件。这个过程既快速又简单。
如果要备份单个数据库,只需创建转储并将输出发送到文件中,如下所示:
mysqldump database_name > database_name.sql
可以同时备份多个数据库:
mysqldump --databases database_one database_two > two_databases.sql
在上面的代码中,database_one 是要备份的第一个数据库的名称,database_two 是第二个的名称。
备份服务器上的所有数据库也很简单:
mysqldump --all-databases > all_databases.sql
备份后,删除mysql并重新安装。使用所需的端口号重新安装后。
恢复备份
由于转储文件只是 SQL 命令,您可以通过告诉 mysql 运行其中的命令并将数据放入正确的数据库来恢复数据库备份。
mysql database_name < database_name.sql
上面的代码中,database_name是你要恢复的数据库的名字,database_name.sql是要恢复的备份文件的名字..
如果你试图从所有数据库的转储中恢复单个数据库,你必须让 mysql 知道这样:
mysql --one-database database_name < all_databases.sql
【讨论】:
这几乎不是最好的方法,因为它涉及大量停机时间,特别是在数据库很大并且转储/恢复需要很长时间的情况下。此外,重新安装与重新配置不同。以上是关于如何将mysql的默认端口从3306更改为3360的主要内容,如果未能解决你的问题,请参考以下文章
linux下mysql开启远程访问权限及防火墙开放3306端口