hadoop、zookeeper、mysql等pid文件权限不对无法启动问题

在学习大数据的阶段,难免会遇到没有一步步关闭hdfs、yarn之类就直接关电脑的情况,下次来的时候就会发现,咦,怎么打不开了,一看报错是xxx.pid拒绝访问什么的,这时候就是pid的问题,这里对PID文件的问题做一个汇总。

1.概述

我们再用jps指令查询当前服务器中的java进程时,在出现进程名称的同时也会有一个id编号,如下图所示:
在这里插入图片描述
前面的编号就是这个进程的pid编号。

2.pid编号存储位置

无论是hadoop还是zookeeper,都会建立一个后缀名为pid的文件用于存储各个进程的id编号,对于不同进程的pid文件位置:

  • hadoop : /tmp
  • zookeeper: 通过在zookeeper安装文件夹下查看 conf/zoo.cfg文件中dataDir=/opt/module/zookeeper-3.4.10/zkData的配置文件,这是笔者的文件目录

3.操作

通过将pid文件的权限更改为当前用户即可,也可通过将文件的权限给同组和其他人,这里以用户bob举例

chown bob:bob xxx.pid 
chmod 777 xxx.pid 

4.补充

之前笔者已经遇到过类似的问题,之前的mysql,直接通过root权限登陆的,这样当然也可以解决。详见:Linux中MySQL报错:xxx Permission denied , MySQL is not running, but PID file exists
由于笔者水平有限,非常欢迎各位大佬交流其他情况。

你可能感兴趣的:(Linux,MySQL,hadoop,linux,java,mysql,hadoop,数据库)