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,如何关闭其中一个?
- ps aux|grep mysql,查看启动时间,kill掉后面那个。
- 查看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?
分析故障方法
- 查看error log
- 把日志打开
- 利用mysqld手工启动查看
- 利用strace
strace /usr/local/mysql/bin/mysqld 2>&1 | tee 1.log
比如要了解mysql加载配置文件的过程,在vim 1.log下查找my.cnf
MariaDB初始化和启动故障的更多相关文章
- Solr初始化源码分析-Solr初始化与启动
用solr做项目已经有一年有余,但都是使用层面,只是利用solr现有机制,修改参数,然后监控调优,从没有对solr进行源码级别的研究.但是,最近手头的一个项目,让我感觉必须把solrn内部原理和扩展机 ...
- MariaDB 安装与启动 过程记录
1. 安装之前的准备工作 rpm -qa |grep mysql rpm -qa |grep mariadb 按照查出来的软件包使用 yum remove 全部卸载,当然也可以 yum remov ...
- [svc]mount命令及解决因/etc/fstab错误导致系统不能启动故障
mount命令-手动挂载设备 格式: mount [options] [-t fstype] [-o option] 设备 挂载点 mount -n -o remount,rw / - Mount t ...
- Hadoop源码学习笔记之NameNode启动场景流程四:rpc server初始化及启动
老规矩,还是分三步走,分别为源码调用分析.伪代码核心梳理.调用关系图解. 一.源码调用分析 根据上篇的梳理,直接从initialize()方法着手.源码如下,部分代码的功能以及说明,已经在注释阐述了. ...
- 一次vm 虚拟机时间倒流而导致的oracle 数据库启动故障
一次vm 虚拟机时间倒流而导致的oracle 数据库启动故障 本文是原创文章.若转载请注明出处: http://blog.csdn.net/msdnchina/article/details/3878 ...
- mariaDB 安装/卸载+启动/关闭 服务
1.设置环境变量 无论是用户环境变量还是系统环境变量 2.启动服务 进入根目录 名字根据 --install 后的 参数来决定 叫MariaDB,MySQL 都可以 mysqld.exe --inst ...
- Linux系统无法启动故障解决方案
Linux系统无法启动故障解决方案 2011-09-27 09:42 佚名 比特网 我要评论(0) 字号:T | T 不管你多么喜爱你的Linux系统机器,有时候你都必须恢复你的系统.是的,即使一台L ...
- CentOS 6或7 启动故障修复及root密码破解
CentOS 6或7 启动故障修复及root密码破解 目录 CentOS 6或7 启动故障修复及root密码破解 CentOS 6启动流程修复: 实验一:删除initramfs-2.6.32-754. ...
- Nucleus SE RTOS初始化和启动
Nucleus SE RTOS初始化和启动 Nucleus SE RTOS initialization and start-up 对于任何类型的操作系统,都有某种类型的启动机制.具体的工作方式因系统 ...
随机推荐
- JTAG/SPI/ISP/ICSP 接口电路
- MFC绘制直方图和饼图
转载原文: Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNorma ...
- Accepting PayPal in games(完整的Paypal在Unity的支付)
Hello and welcome back to my blog! In this article I’m going to talk about the process of acceptin ...
- ExtJs Ext.data.Store 处理
var storeCpye = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : 'cxgl_cpye.app?d ...
- 【ELK】【docker】【elasticsearch】1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安装ik分词器
系列文章:[建议从第二章开始] [ELK][docker][elasticsearch]1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安 ...
- DevExpress SpreadSheet报表模板设置 z
DevExpres SpreadSheetControl报表模板设置,这一个还是挺牛逼的,字段绑定直接在单元格里面设置公式(=Field("字段名")),当然直接拖更方便, 跟xt ...
- Sublime Text2安装emmet(原名Zen Coding)总结
首先,安装好Sublime( 我用的是版本号2),之后注冊好.Sublime Text2.0.2注冊码:http://xionggang163.blog.163.com/blog/static/376 ...
- 在oracle中查询已知表名的表中所有字段名,每个字段是否是主键,是否是外键,是否为空的sql语句
查询表的所有列及其属性:select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c ...
- Tomcat启动就执行特定方法
import java.util.Timer; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContex ...
- JDBC操作数据库的批处理
在JDBC开发中,操作数据库需要与数据库建立连接,然后将要执行的SQL语句传送到数据库服务器,最后关闭数据库连接,都是按照这样一个流程进行操作的.如果按照该流程执行多条SQL语句,那么就需要建立多个数 ...