• CentOS 下 MySQL DateBasic 抢救


    CentOS 下 MySQL DateBasic 抢救

    强 Kill 数据库进程。

    分析问题:确定报错内容

    报错信息:The server quit without updating PID file /var/lib/mysql/localhost.localdomain.pid

    img

    第一方案:解决报错内容

    综合晚上所有报错解决方案:

    1.文件没有写的权限

    • chmod a+w /usr/local/mysql/data/NAME.pid

    2.进程已经存在mysql进程

    • ps -ef |grep mysql

    3.二次在机器上安装mysql,残余数据影响了服务的启动。

    • yum remove mysql-server

    4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件

    • socket = /tmp/mysql.sock
    • datadir = /usr/local/mysql/data

    5.skip-federated 字段问题

    • [ERROR] /usr/local/mysql/bin/mysqld: unknown option '--skip-federated'

    6.错误日志目录不存在

    • log-error=/usr/local/mysql/log/error.log
    • log=/usr/local/mysql/log/mysql.log

    7.CentOS 系统,默认会开启SeLinux

    • setenforce 0

    8.目录 /etc/mysql/ 与文件 /etc/my.cnf 重复

    • mv /etc/mysql/my.cnf /etc/mysql/my.cnf.bak

    9.废弃无用文件造成服务无法启动

    • rm -rf /usr/local/mysql/data/ib_logfile0
    • rm -rf /usr/local/mysql/data/ib_logfile1
    • rm -rf /usr/local/mysql/data/mysql-bin.index

    第二方案:重装重新配置

    ``

    # cat /etc/my.cnf
    user = mysql

    tmpdir = /tmp

    [mysqld]
    port = 3306
    socket = /var/lib/mysql/mysql.sock

    datadir = /usr/local/mysql/data

    pid-file = /usr/local/mysql/data/mysql.pid

    log-error = /usr/local/mysql/data/error.log

    ``

    # ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp

    # service mysqld start && mysqladmin -u {username} passowrd {password}
    Starting MySQL SUCCESS!

    一些小备注

    1、socket 非常重要。当配置文件与命令出现冲突,应该听从命令显示。
    2、log 非常重要,每个 MySQL 都应该加之。

    log=/usr/local/mysql/log/mysql.log

    log-error=/usr/local/mysql/log/error.log

    3、数据库恢复使用 mysql -u{username} -p{password} {databases} <{filename}.sql

    4、淡定,一般数据库只要备份在没有太大问题。可以再看看这篇文章

    如果你真的选择了重新安装配置,那么应该更换目录避免冲突(包括mysql-server与lnmp)。可以尝试制作While+For循环服务启动脚本(wall命令是个好东西)

  • 相关阅读:
    springCloud 服务间相互调用
    不同环境下整合相同格式的文件
    Linux 安装mysql
    利用Maven打War包引入本地Jar包
    linux服务器部署项目详细步骤
    DM数据库导入dmp文件报大小写敏感问题解决办法
    synchronized 实现过程
    TypeScript学习笔记
    @RequestMapping注解详解
    常用的Linux命令
  • 原文地址:https://www.cnblogs.com/itxdm/p/TheserverquitwithoutupdatingPIDfile.html
Copyright © 2020-2023  润新知