MariaDB初始化和启动故障

初始化故障排查

1. so依赖缺失

好比报这样的错误:mysql

./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_64linux

./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位系统安装:sql

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 xxxvim

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会从几个地方读取该文件,从而形成读取不是预想中或是不正确的配置文件。windows

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

dos2unix

启动故障

1. 参数问题

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

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

若是不当心开了两个同一个端口的mysql,如何关闭其中一个?centos

  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.cnfunix

相关文章
相关标签/搜索