【问题标题】:Can't start Cassandra无法启动 Cassandra
【发布时间】:2021-02-25 01:07:17
【问题描述】:

我正在尝试运行 cqlsh 以连接到 cassandra 并收到以下错误消息。

a) cqlsh 运行出错:

Connection error: ('Unable to connect to any servers', {'127.0.0.1:9042': error(61, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

b) 运行 cassandra 后的错误消息:

Exception (java.lang.ExceptionInInitializerError) encountered during startup: null
java.lang.ExceptionInInitializerError
    at org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:709)
    at org.apache.cassandra.service.StartupChecks$9.execute(StartupChecks.java:351)
    at org.apache.cassandra.service.StartupChecks.verify(StartupChecks.java:109)
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:188)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:607)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:717)
Caused by: java.lang.IllegalArgumentException: Bad configuration; unable to start server: At least one DataFileDirectory must be specified
    at org.apache.cassandra.config.DatabaseDescriptor.createAllDirectories(DatabaseDescriptor.java:846)
    at org.apache.cassandra.db.Keyspace.<clinit>(Keyspace.java:66)
    ... 6 more
ERROR 00:27:05 Exception encountered during startup
java.lang.ExceptionInInitializerError: null
    at org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:709) ~[apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.service.StartupChecks$9.execute(StartupChecks.java:351) ~[apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.service.StartupChecks.verify(StartupChecks.java:109) ~[apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:188) [apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:607) [apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:717) [apache-cassandra-2.2.17.jar:2.2.17]
Caused by: java.lang.IllegalArgumentException: Bad configuration; unable to start server: At least one DataFileDirectory must be specified
    at org.apache.cassandra.config.DatabaseDescriptor.createAllDirectories(DatabaseDescriptor.java:846) ~[apache-cassandra-2.2.17.jar:2.2.17]
    at org.apache.cassandra.db.Keyspace.<clinit>(Keyspace.java:66) ~[apache-cassandra-2.2.17.jar:2.2.17]
    ... 6 common frames omitted

c) brew status 显示运行 cassandra 实例出错:

Name          Status  User   Plist
cassandra@2.2 error    /Users/john/Library/LaunchAgents/homebrew.mxcl.cassandra@2.2.plist
rabbitmq      stopped        
redis         started  /Users/john/Library/LaunchAgents/homebrew.mxcl.redis.plist
tomcat@7      stopped

有人可以帮忙解决这个问题吗?

【问题讨论】:

    标签: java cassandra cqlsh


    【解决方案1】:

    这个错误是从here 抛出的——这意味着你没有配置选项data_file_directories 那个specifies Cassandra 需要存储数据,看起来$CASSANDRA_HOME 没有设置。

    打开cassandra.yaml文件,取消注释data_file_directories配置选项和下一行,指向Cassandra可以写入数据的目录而不是默认的/var/lib/cassandra/data。您很可能还需要指定其他参数,例如commitlog_directoryhints_directorysaved_caches_directory

    【讨论】:

      猜你喜欢
      • 2017-11-21
      • 1970-01-01
      • 2012-08-07
      • 2011-04-21
      • 2018-08-17
      • 2015-04-22
      • 1970-01-01
      • 2017-08-05
      • 2018-10-25
      相关资源
      最近更新 更多