宝塔面板mysql无法启动问题如何解决

编辑: admin 分类: 电脑知识 发布时间: 2023-06-09 来源:互联网

宝塔面板无法启动的问题和解决

如果你的宝塔里面的mysql无法启动了,请先看是不是以下的配置问题

1.是不是你的3306端口被占用了导致mysql无法启动

2.是不是磁盘空间不足导致的无法启动 如果都不是这些问题再继续向下看

常见问题:

1、Mysql安装好后或迁移文件后无法启动

2、Mysql异常关闭后无法启动

3、Mysql停止后无法启动

一、Mysql安装好后或迁移文件后无法启动

在Mysql刚刚安装好或者迁移文件后无法启动我们一般先检查Mysql的数据目录所有者是否mysql用户。

例如我们宝塔环境是:

  • Mysql数据目录: /www/server/data

  • Mysql程序目录:/www/server/mysql

  • Mysql主配置文件:/etc/my.cnf

首先检查硬盘分区使用率是否已经满了 执行下面的命令查看分区容量使用率

df -h
登录后复制

执行下面的命令查看分区inode使用率

df -i
登录后复制

使用ll命令查看目录详细信息

[root@test server]# ll /www/server/
total 24
drwxr-x---   6 root     root     4096 Oct 30 17:51 data
drwx--x--x  14 root     root      182 Oct 16 18:01 docker
drwxrwxr-x  12 root     root      326 Oct 24 18:06 mysql
drw-------. 14 root     root     4096 Oct 24 18:06 panel
登录后复制

可以看到data目录所有者是root,这时候启动mysql报错如下

[root@test server]# /etc/init.d/mysqld start
Starting MySQL. ERROR! The server quit without updating PID file (/www/server/data/test.com.pid).
登录后复制

我们先修改该目录的所有者为mysql

chown -R mysql.mysql data
登录后复制

启动数据库

/etc/init.d/mysqld start
登录后复制

可以看到已经启动成功了

[root@test server]# /etc/init.d/mysqld startStarting MySQL... SUCCESS!
登录后复制

还不行检查你的selinux状态

getenforce
登录后复制

如果返回值不值disable

运行命令暂时停止selinux

setenforce 0
登录后复制

再尝试启动

二、Mysql异常关闭后无法启动

Mysql异常关闭是我们经常遇到的情况,重启服务器时没有预先关闭mysql,服务器断电,使用kill命令杀死mysql进程等都属于异常关闭,异常关闭往往会带来一些不可预料的后果。

一般情况下异常关闭会导致二进制日志文件损坏

执行

rm -f /www/server/data/ib_logfile0
rm -f /www/server/data/ib_logfile1
登录后复制

删除日志后再尝试启动

遇到错误 Another MySQL daemon already running with the same unix socket 时

可以尝试删除sock文件后再启动

rm -f /tmp/mysql.sock*
rm -f /tmp/mysqlx.sock*
登录后复制

遇到错误 [ERROR] InnoDB: Cannot allocate memory for the buffer pool 时

表示当前mysql启动需要的内存不够,我们需要调整

innodb_buffer_pool_size
key_buffer_size
登录后复制

的内存

三、Mysql停止后无法启动

Mysql正常停止后无法启动的原因

1.显示停止成功实际停止失败,有残留进程,我们可以用ps来检查

ps -ef|grep mysql
登录后复制

2.磁盘空间满了导致mysql无法启动

3.有时手动删除了binlog日志重启mysql也会导致无法启动,在错误日志里可以找到

File ‘./mysql-bin.000001’ not found 字样

解决方法:

注释主配置文件的配置

找到

log-bin=mysql-bin

改为

#log-bin=mysql-bin

或者清空

mysql-bin.index

以下两种解决方案,根据自身情况自选尝试 1,通过改etc/init.d/mysqld解决

然后还有一种是我个人通过查帖子解决这个问题的方法首先

1.第一步是先找到etc/init.d/mysqld这个文件然后打开找到start部分

宝塔面板mysql无法启动问题如何解决

刚打开没有蓝色框的这一串代码,为其加上然后保存关闭

2.打开宝塔终端直接输入service mysqld start这行代码让其mysql进行运行

3.然后再去看mysql就已经开始运行了

2通过删除一个文件解决

有些无法启动的mysql可能是自己并没有启动主从复制,但是在/www/server/data下莫名其妙多出来了一个mysql-bin.index文件,这时候把这个文件删掉然后再启动也可以启动成功,但是我的用这个就不行,大家根据自己的情况选择解决方案

最后还是要说不要在mysql性能调整的时候进行重启或者关闭都很容易出错的

【文章出处:日本大带宽服务器 http://www.558idc.com/jap.html 欢迎留下您的宝贵建议】