CDHMySQL报错 调整解决异常问题(cdh mysql 异常)
CDH MySQL报错: 调整解决异常问题
CDH(Cloudera Distribution including Apache Hadoop)是一种基于Apache Hadoop的商业版本,提供企业级的Hadoop解决方案。其中包含了MySQL组件,但在使用过程中有可能会出现MySQL报错等异常问题。本文将介绍如何通过调整来解决CDH MySQL出现的异常问题。
异常问题描述
在使用CDH MySQL时,可能会出现以下异常情况:
1. 启动报错:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)
2. 连接报错:
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
3. 数据库创建报错:
ERROR 1007 (HY000): Can’t create database ‘test’; database exists
4. 密码更改报错:
ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’
问题解决
根据不同的异常情况,可以采取以下调整措施来解决问题:
1. 启动报错
启动报错的原因可能是MySQL没有正确启动,可以采取以下步骤来解决:
1)查看MySQL日志文件
tl -f /var/log/mysql/error.log
如果显示类似如下信息,则表示MySQL没有正确启动:
2019-10-07 14:21:50 312 [Note] Plugin ‘FEDERATED’ is disabled.
2019-10-07 14:21:50 312 [ERROR] Can’t start server : Bind on unix socket : No space left on device
2019-10-07 14:21:50 312 [ERROR] Do you already have another mysqld server running on socket: /var/run/mysqld/mysqld.sock ?
如果是No space left on device,则需要清理硬盘空间。
2)查看MySQL进程信息
ps -aux | grep mysql
如果没有显示MySQL进程信息,则表示MySQL没有正确启动,需要手动启动:
/etc/init.d/mysql start
3)重启MySQL
重启MySQL可以解决启动报错的情况:
/etc/init.d/mysql restart
2. 连接报错
连接报错的原因可能是用户名或密码输入错误,可以采取以下步骤来解决:
1)查看MySQL用户信息
show grants for ‘root’@’localhost’;
如果没有显示授权信息,则需要重新授权:
GRANT ALL PRIVILEGES ON *.* TO ‘root’@’localhost’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
2)重置MySQL用户密码
如果忘记了MySQL用户密码,可以通过以下命令重置:
SET PASSWORD FOR ‘root’@’localhost’=PASSWORD(‘mypassword’);
3. 数据库创建报错
数据库创建报错的原因可能是数据库已经存在,可以采取以下步骤来解决:
1)查看数据库信息
show databases;
如果已经存在,则需要先删除:
DROP DATABASE IF EXISTS test;
2)创建数据库
CREATE DATABASE test;
4. 密码更改报错
密码更改报错的原因可能是MySQL版本更新导致命令变化,可以采取以下步骤来解决:
1)查看MySQL用户信息
select user,host,password from mysql.user;
2)更改密码
update mysql.user set authentication_string=password(‘newpassword’) where user=’root’ and host=’localhost’;
flush privileges;
总结
在使用CDH MySQL时,需要注意避免出现异常情况。本文介绍了常见的异常情况及相应的解决方法。需要注意的是,MySQL版本更新会导致命令变化,需要根据具体版本做出相应的调整。通过以上调整,可以解决CDH MySQL出现的异常问题,确保系统稳定运行。