linux 下mysql 服务无法开启

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 下mysql 服务无法开启相关的知识,希望对你有一定的参考价值。

linux 下mysql 服务无法开启
1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!
2.可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,把它删除掉
参考技术A 修改mysql配置文件
vi /etc/my.cnf
1.[client]
default-character-set=utf8
2.[ mysqld]
character-set-server=utf8
collation-server = utf8_general_ci
生成MySQL配置文件
setfacl -m u:mysql:rwx -R /usr/local/mysql
setfacl -m d:u:mysql:rwx -R /usr/local/mysql
用acl来让mysql用户对/usr/local/mysql有所有权限
/usr/local/mysql/bin/mysql_install_db --user=mysql
创建数据库授权表
启动MySQL服务:
1.用原本源代码的方式去使用和启动mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
2.重启以后还要生效:
vi /etc/rc.local
/usr/local/mysql/bin/mysqld_safe --user=mysql &
具体看下《linux就该这么学》讲解数据库的章节本回答被提问者采纳

SQLyog客户端无法连接MySQL服务器

环境:centos下使用yum 命令安装了mysql服务

1、进入linux 通过命令service mysqld start启动mysql的服务

2、使用sqlyog 连接mysql发现连接不上,如下图:

但是在linux本地是可以连接数据库的。所以说网络没有问题;通过netstat -nalp | grep "3306"命令发现3306端口也开启着;

通过问度娘发现问题可能出在iptables,查看iptables的运行状态,发现iptables是运行着的,所有通过chkconfig iptables off 关闭了防火墙,通过chkconfig --list,查看如下图:

然后通过命令service iptables stop 停止正在运行的防火墙

注意:

如果不想关闭防火墙也可以通过修改配置文件,将-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT添加到/etc/sysconfig/iptables即可(需重启iptables服务),表示允许3306端口通过防火墙。

在此使用sqlyog进行登录;发现还是无法登录还是提示错误信息,如下图:

根据错误提示,我本地主机的网卡IP远程连接时不允许通过该主机连接到MYSQL服务器;可以初步判断可能是应为缺少权限;

我们需要给用户添加权限:

登录mysql,在mysql下输入如下命令:

GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'%\' IDENTIFIED BY \'123456\' WITH GRANT OPTION;  //允许用户root使用密码123456从任何主机连接到MYSQL服务器

如果需要制定主机,则可以用下面的命令:

GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'10.1.1.123\' IDENTIFIED BY \'123456\' WITH GRANT OPTION;  //允许用户root从IP为10.1.1.123的主机连接到MYSQL服务器,并使用123456作为登录密码

授权成功之后,再次尝试进行远程连接,可以发现连接成功;如下图:

参考文档:

http://blog.itpub.net/31015730/viewspace-2143797/

 

以上是关于linux 下mysql 服务无法开启的主要内容,如果未能解决你的问题,请参考以下文章

SQLyog客户端无法连接MySQL服务器

无法开启mysql

解决Linux下普通用户无法使用root连接MySQL服务

linux 下解决mysql root 权限无法远程连接问题

开启和连接mysql服务器(win10为例)

解决Linux ubuntu下SSH无法连接的问题