针对服务器磁盘爆满,MySql数据库始终无法启动,怎么解决 ...

打印 上一主题 下一主题

主题 993|帖子 993|积分 2979


  
(点击即可进入聊天助手)

  很多站长在运营网站的过程当中都会遇到一个问题,就是网站突然无法打开,数据一直无法启动
  无论是强制重启照旧,删除网站内的所有应用,数据库一直无法启动
  这个时候,就需要常见的运维手段了,需要对服务器背景各个资源,进行逐一排查
  假如一看到磁盘容量拉满,也并不是网络带宽问题,盲目标去费钱升级硬盘容量,这是不可取的,也是个无底洞,找到详细的问题,给解决才是上上之策
  

  解决Linux服务器上MySQL数据库无法启动的问题

  

  • 查看数据库错误日志
  1. sudo less /var/log/mysql/error.log
复制代码

  • 检查MySQL服务状态:
  使用systemctl检查MySQL服务的状态,以确定是否有错误信息
  1. sudo systemctl status mysql.service
复制代码

  • 检查配置文件
  确保/etc/my.cnf或/etc/mysql/my.cnf(路径可能因发行版而异)配置文件中没有错误
  

  • 检查磁盘空间(很多时候就是这个原因)
  确保服务器上有足够的磁盘空间,先使用df -h 查看磁盘容量,然后再使用du -sh *,查看文件巨细,找到文件非常大的,然后使用rm -rf 文件名,删撤除腾出资源空间
  1. df -h
复制代码

  • 检查权限问题:
  确保MySQL相干目录和文件的权限设置正确。
  

  • 检查端口占用:
  确保MySQL默认端口3306没有被其他进程占用
  1. sudo netstat -tulnp | grep 3306
复制代码

  • 实行安全模式启动:
  假如常规启动失败,可以实行以安全模式启动MySQL
  1. sudo mysqld_safe &
复制代码

  • 修复安装:
  假如怀疑数据库破坏,可以实行使用MySQL的修复工具
  1. sudo mysql_upgrade -u root -p
复制代码

  • 重新配置/初始化:
  假如以上方法都不能解决问题,可能需要重新配置或初始化数据库
  1. sudo mysqld --initialize
  2. sudo systemctl start mysql.service
复制代码
linux服务器MySql数据库始终无法启动    解决Linux服务器上MySQL数据库无法启动的问题,通常需要检查以下几个方面:
  查看错误日志:
  使用grep命令查看MySQL的错误日志,通常位于/var/log/mysql/error.log。
  1. sudo grep 'temporary' /var/log/mysql/error.log
复制代码
检查MySQL服务状态:
  使用systemctl检查MySQL服务的状态,以确定是否有错误信息。
  1. sudo systemctl status mysql.service
复制代码
检查配置文件:
  确保/etc/my.cnf或/etc/mysql/my.cnf(路径可能因发行版而异)配置文件中没有错误。
  检查磁盘空间:
  确保服务器上有足够的磁盘空间。
  df -h
  检查权限问题:
  确保MySQL相干目录和文件的权限设置正确。
  检查端口占用:
  确保MySQL默认端口3306没有被其他进程占用。
  1. sudo netstat -tulnp | grep 3306
复制代码
实行安全模式启动:
  假如常规启动失败,可以实行以安全模式启动MySQL。
  1. sudo mysqld_safe &
复制代码
修复安装:
  假如怀疑数据库破坏,可以实行使用MySQL的修复工具。
  1. sudo mysql_upgrade -u root -p
复制代码
重新配置/初始化:
  假如以上方法都不能解决问题,可能需要重新配置或初始化数据库。
  1. sudo mysqld --initialize sudo systemctl start mysql.service
复制代码

  • 查看系统日志:
  查看系统日志,如/var/log/syslog或使用journalctl,以获取可能导致MySQL启动失败的更多信息。
  1. sudo journalctl -u mysql.service
复制代码
下面介绍一个,磁盘空间爆满,即使删除服务器内的所有应用,数据库依旧无法启动
  进入服务器根目录查看磁盘容量

  远程登岸服务器,进入服务器根目录
  1. cd /
复制代码
使用df -h, 命令查看服务器下资源各个磁盘的容量情况
  假如你发现某个文件目录下,占用磁盘空间特别大,那就是这个磁盘该清算了的
  1. Filesystem      Size  Used Avail Use% Mounted on
  2. tmpfs           593M  972K  592M   1% /run
  3. /dev/vda2       118G   117G   99G  98% /
  4. tmpfs           2.9G  8.0K  2.9G   1% /dev/shm
  5. tmpfs           5.0M     0  5.0M   0% /run/lock
  6. tmpfs           593M  4.0K  593M   1% /run/user/0
复制代码
此刻,阐明/dev/vda2的资源已经满了,导致数据库无法启动的根本原因就在这里
  所以需要删除一些占用硬盘资源大的东西
  使用"du -sh *"查看当前目录下每一个的目录和文件的巨细汇总
  1. 0       bin
  2. 242M    boot
  3. 8.0K    dev
  4. 21M     etc
  5. 184M    home
  6. 0       lib
  7. 0       lib32
  8. 0       lib64
  9. 0       libx32
  10. 16K     lost+found
  11. 4.0K    media
  12. 4.0K    mnt
  13. 4.0K    opt
  14. 8.0K    patch
  15. du: cannot access 'proc/25809/task/25809/fd/4': No such file or directory
  16. du: cannot access 'proc/25809/task/25809/fdinfo/4': No such file or directory
  17. du: cannot access 'proc/25809/fd/3': No such file or directory
  18. du: cannot access 'proc/25809/fdinfo/3': No such file or directory
  19. 0       proc
  20. 30M     root
  21. 976K    run
  22. 0       sbin
  23. 1.3G    snap
  24. 4.0K    srv
  25. 0       sys
  26. 1.3M    tmp
  27. 3.9G    usr
  28. 5.1G    var
  29. 4.1G    www
复制代码
然后你看哪个文件占用内存特别大,然后就进入哪个目录去删掉的
  一样平常来说,几个G的,不算太大,但是某个目录文件高出硬盘的90%,那这个目录肯定需要腾出资源来
  比如:我的是,www这个目录,之前是占用了110多个G,这个目录主要是存放服务器一些资源的
  进入哪个目录,就用du -sh *,这个命令查看各个文件的巨细
  进入/www/server/,发现是php某个版本占用硬盘资源非常大,发现php版本,70占用硬盘空间到达100多个G,把它删掉就可以了的
  使用命令rm -rf 70,删除,然后重启服务器就可以了的
  你只要看哪个目录占用空间非常大,继承使用cd命令进入相应的目录,继承使用du命令进行查看,然后删除一下没用的文件,或者把它挂载到其他分区
  总结

  服务器内,不要随意的去安装各种php版本,它黑白常占用磁盘空间的,有些应用步调非常吃硬盘,网站每运行一分钟,不但会产生日志,缓存,还有可能会产生一些其他的文件,时间一久就会影响磁盘,假如积累到一定水平,就会影响服务器的运行速率
  选择合适的php版本,因网站步调而异,不可千篇划一,得适配步调的,不可胡乱安装的,否则会导致一些奇怪的问题,严峻会影响业务
  
  富爸爸情商课
    2025-01-10
  
   
  理解人性
    2025-01-09
  
   
  款项的艺术
    2025-01-08
  
   

     点击左下角查看更多   


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户国营

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表