在实际的生产中,考虑的实际情况,我们会调整一些默认配置,例如,数据目录。InfluxDB修改默认的Data目录后,因权限问题,服务无法正常运行。以下是具体的分析测试过程。

配置文件为 /etc/influxdb/influxdb.conf,关于数据存放的默认配置如下:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第1张

调整后的配置:

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第2张

启动influxdb后,查看服务运行状态 提示错误,influxDB端口也没有启动成功,说明服务没有启动成功。

错误信息如下:

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第3张

去/var/log/messages 下面查询错误log。可以执行命令:

less /var/log/messages

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第4张

 

此时权限 不够.

我们可以反向验证。

在root账号下,启动influxd

1 /usr/bin/influxd  -config  /etc/influxdb/influxdb .conf

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第5张

正常启动,没有报错。

 

下面要在的工作,就是要到这个influxd是以什么账号启动的?需要给那个文档目录赋予权限?

Step 1. 列出 属于 influxdb 软件所提供的所有目录与文件。

执行命令 

rpm -ql influxdb

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第6张

Step 2 在上面关于influxdb 服务的文件中,查看启动账号的信息

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第7张

可以判断得知,这个服务是使用 influxdb账号来启动管理的。

Step 3 验证默认安装的路径是不是 更新了文档目录的拥有者呢

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第8张

说明,默认安装不修改存放路径,其自动生成的文档,确实文档拥有者为influxdb

step 4 修改我们手动创建的文档目录拥有者(将要存放的目录)

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第9张

Step 5 再次启动,查看。没想到还是报错,同样的错误原因。。。。。

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第10张

Step 6 忽然想到,是其中子文档的没有更新拥有者属性导致的。

          调整的命令应该为;

chown -R influxdb:influxdb influxdb

Step 7 再次启动influxdb 服务,并查询服务状态。此次OK,问题解决了。

InfluxDB因修改默认数据目录导致服务无法正常运行的问题(权限问题) Nosql 第11张

 

本文版权归作者所有,未经作者同意不得转载,谢谢配合!!!

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄