WSL2 Ubuntu
systemctl status mysql
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start) since Sat 2024-09-28 08:31:49 CST; 1s ago
Process: 1196 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 1204 (mysqld)
Status: "Server startup in progress"
Error: 98 (地址已在使用)
Tasks: 30 (limit: 9528)
Memory: 382.9M
CGroup: /system.slice/mysql.service
└─1204 /usr/sbin/mysqld
9月 28 08:31:49 TsuiQG-PC systemd[1]: Starting MySQL Community Server...
突然就这样了,有你人见过?
在 WSL2 中遇到 MySQL 服务启动错误 "Error: 98 (地址已在使用)" 通常意味着 MySQL 试图绑定的端口(默认是 3306)已经被其他服务或进程占用。以下是一些解决步骤:
首先,你需要检查哪个进程正在使用 3306 端口。你可以使用 netstat
或 ss
命令来查看:
sudo netstat -tulnp | grep 3306
# 或者
sudo ss -tulnp | grep 3306
如果看到输出中有进程ID(PID)和对应的程序名,那么你需要决定是停止那个进程还是更改 MySQL 的配置以使用不同的端口。
如果确定那个进程不再需要,你可以停止它。如果它是 MySQL 的一个旧实例,你可能需要手动杀死它。使用 kill
命令:
sudo kill -9 PID
将 PID
替换为你从 netstat
或 ss
命令中看到的实际进程ID。
如果你不想停止那个进程,或者它属于其他重要的服务,你可以更改 MySQL 的配置以使用不同的端口。编辑 MySQL 的配置文件(通常是 /etc/mysql/my.cnf
或者在 /etc/mysql/mysql.conf.d/
目录下的某个文件):
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到 [mysqld]
部分,并添加或修改 port
指令:
[mysqld]
port=3307
更改后保存文件并重启 MySQL 服务:
sudo systemctl restart mysql
再次检查 MySQL 的状态:
sudo systemctl status mysql
确保没有错误,并且状态是 active (running)
。
如果你更改了 MySQL 的端口,确保更新所有连接到 MySQL 的应用程序或服务的配置,以使用新的端口号。
按照这些步骤,你应该能够解决 MySQL 服务启动时的 "Error: 98 (地址已在使用)" 错误。
问题内容: 在我的Python套接字程序中,有时需要用中断它。当我这样做时,它确实使用关闭了连接。 但是,当我尝试重新打开它时,我必须等待一分钟左右才能重新连接。如何正确关闭插座?还是打算这样做? 问题答案: 是的,这是有意的。在这里您可以阅读详细说明。通过在套接字上设置SO_REUSEADDR选项,可以覆盖此行为。例如:
问题内容: 我正在创建一个简单的flaskapp,然后将其部署在heroku上,这是第一次在heroku上部署python应用程序,说我对gunicorn并不陌生。 其他说明:使用虚拟环境。 烧瓶的版本Flask == 0.10.1 gunicorn == 19.3.0 使用’python run.py’ 工作 使用“开工开始”会出现以下错误 程序文件 档案结构 运行 init.py route.
突然,我得到了下面的nginx错误 如果我跑了 我一无所获。端口 80 上没有任何内容 然后我运行以下命令: 我被难倒了。我该如何调试这个? 我在端口8070上使用代理传递的uwsgi。uwsgi正在运行。Nginx不是。我正在使用ubuntu 12.4 下面是我的nginx conf文件的相关部分 这是我如何在ubuntu 12.04上安装ngin x
问题内容: 运行webdriver时,运行3分钟后,出现以下异常,导致Webdriver崩溃。 我仅使用一个webdriver实例和一个FirefoxDriver配置文件。 问题答案: 您的出站端口已用完。这意味着您在两分钟之内执行了数千个出站连接。解决方案:使用连接池,或降低程序速度。
我试图在Ubuntu 12.04中运行以下命令 并得到以下错误 在检查8080端口时,输出是 我的问题 为什么我会犯错误,以及如何消除这个错误?
问题内容: 我在Windows XP Pro上使用Glassfish 3.0.1,JVM 1.6.0_21; 我不知道我的环境到底发生了什么变化,但是当我尝试部署企业应用程序(ejb模块+应用程序客户端模块)时,我立即获得了该堆栈跟踪信息。 除Glassfish之外,端口3820上没有任何运行。 这可能是什么原因?一些内部过程冲突? 关于如何进一步调试的任何提示? 编辑 这正是我尝试过的: 如您所