zoukankan      html  css  js  c++  java
  • MariaDB初始化和启动故障

    初始化故障排查

    1. so依赖缺失

    比如报这样的错误:

    ./bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
    

    可以用yum install libnuma.so.1安装依赖包。 实验发现安装成功之后,还是报同样的错误。用ldd /usr/local/mysql/bin/mysqld查询,libnuma.so.1 => not found。上网找了原因,需要再yum install numactl。而yum install libnuma.so.1安装出来是numactl-2.0.9-2.el6.i686;所以需要再安装yum install numactl,安装出来是mysql-libs-5.1.71-1.el6.x86_64

    ./scripts/mysql_install_db --user=mysql
    Installing MariaDB/MySQL system tables in '/data/mysql/mysql3306/data' ...
    /usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
    

    解决方法,安装libaio.so.1;但yum install libaio.so.1默认是安装libaio.i686 0:0.3.107-10.el6,是32位的。
    64位系统安装:

    wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm
    rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
    

    2. Selinux或防火墙没有关闭

    getenforce 确认是不是enable
    查询mysql错误代码:perror xxx

    3. 权限问题

    ls -l /data/mysql/mysql3306
    

    4. datadir非空

    ls -l /data/mysql/mysql3306/data
    

    5. 磁盘空间不够

    df -h
    

    6. 参数错误

    cat /data/mysql/mysql3306/error.log | grep -i err
    

    7. 读取不正确的配置文件

    多个不同的目录下有my.cnf文件,而mysql会从几个地方读取该文件,从而造成读取不是预想中或是不正确的配置文件。

    8. windows的配置文件直接复制过来的文件,可能存在BOM或换行符问题

    dos2unix
    

    启动故障

    1. 参数问题

    2. 多个实例使用一份数据

    innoDB: Unable to lock ./ibdata1, error: 11
    

    如果不小心开了两个同一个端口的mysql,如何关闭其中一个?

    1. ps aux|grep mysql,查看启动时间,kill掉后面那个。
    2. 查看pid文件。

    3. 端口号被占用

    [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
    [ERROR] Do you already have another mysqld server running on port: 3306?
    

    分析故障方法

    1. 查看error log
    2. 把日志打开
    3. 利用mysqld手工启动查看
    4. 利用strace
    strace /usr/local/mysql/bin/mysqld 2>&1 | tee 1.log
    

    比如要了解mysql加载配置文件的过程,在vim 1.log下查找my.cnf

  • 相关阅读:
    git ignore 添加忽略文件
    python| 闭包函数及装饰器
    python | DRF 框架知识总览
    python | CHROME底层原理和HTTP协议
    python| css 背景图片虚化效果
    python | js 图片与base64互相转换
    python | Linux各目录及每个目录的详细介绍
    python | 解决Django+Vue前后端分离的跨域问题及关闭csrf验证
    python | Nginx负载均衡策略
    python | Linux 搭建Nginx+uWSGI+Django环境
  • 原文地址:https://www.cnblogs.com/fishparadise/p/9069762.html
Copyright © 2011-2022 走看看