linuxmysql 安装bug

1:yum install -y unzip zip
2 netstat -tuln | grep 3306
2 yum install lsof -y
3

从你提供的 netstat 输出来看,3306 端口已经被占用(显示 LISTEN 状态 ),这就是导致 MySQL 启动失败的原因之一,因为 MySQL 默认要使用 3306 端口提供服务,端口被占用就无法正常启动,解决步骤如下:

1. 找出占用 3306 端口的进程

使用 lsoffuser 命令查找占用 3306 端口的进程,示例:

# 方法一:lsof
lsof -i :3306
# 方法二:fuser
fuser -v 3306/tcp

执行后会显示占用端口的进程名称、进程 ID(PID)等信息,比如可能是其他 MySQL 实例、或者误装的数据库软件占用了该端口。

2. 停止占用端口的进程

如果确认占用端口的进程是多余的、不需要的(比如之前残留的 MySQL 旧实例、其他无关程序 ),可以直接停止该进程:

# 假设进程 ID 是 1234(实际替换为查到的 PID)
kill -9 1234

如果是系统中原本就需要的合法服务(比如另一个有用的 MySQL 实例 ),那需要考虑修改当前要启动的 MySQL 实例的端口,或者调整那个服务的端口,避免冲突。

3. 修改当前 MySQL 实例的端口(可选,若不想停掉占用端口的进程)

如果不想停止占用 3306 端口的进程,想让当前要启动的 MySQL 使用其他端口(比如 3307 ),需要修改 MySQL 配置:

  • 找到 MySQL 的配置文件(通常是 /etc/my.cnf ,如果脚本里删除了,可在 /usr/local/mysql 相关目录找默认配置文件,或者重新创建 ),在 [mysqld] 部分添加/修改:
port = 3307
  • 保存配置后,重启 MySQL 服务:
service mysqld restart

之后用 netstat -tuln | grep 3307 检查新端口是否正常监听,再尝试连接 MySQL (记得连接时指定新端口,如 mysql -u root -p -P 3307 )。

处理完端口占用问题后,再次尝试启动 MySQL 服务(service mysqld start ),一般就能正常启动啦,启动后记得查看日志(/usr/local/mysql/data/master.itcast.cn.err )确认是否还有其他潜在问题。
image

posted on 2025-08-26 12:31  爱尔奎特‘殷’  阅读(5)  评论(0)    收藏  举报