2016-04-04 50 views
-1

我已經下載了cassandra datastax-ddc-64bit-3.4.0.msi並將它安裝到WINDOWS 8 .I運行正常。但是,當我編輯cassandra.yamlDATASTAX Cassandra集羣命名在WINDOWS中停止Windows服務8

cluster_name: 'Test Cluster'

cluster_name: 'MyCluster1'

那麼服務不會啓動。

我檢查錯誤日誌C:\Program Files\DataStax-DDC\logs\datastax_ddc_server-stdout.2016-04-04.log

它顯示

ERROR 09:08:34 Fatal exception during initialization 
org.apache.cassandra.exceptions.ConfigurationException: Saved cluster name Test Cluster != configured name MYCLUSTER 
    at org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:915) ~[apache-cassandra-3.4.0.jar:3.4.0] 
    at org.apache.cassandra.service.StartupChecks$8.execute(StartupChecks.java:297) ~[apache-cassandra-3.4.0.jar:3.4.0] 
    at org.apache.cassandra.service.StartupChecks.verify(StartupChecks.java:106) ~[apache-cassandra-3.4.0.jar:3.4.0] 
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:169) [apache-cassandra-3.4.0.jar:3.4.0] 
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:551) [apache-cassandra-3.4.0.jar:3.4.0] 
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:680) [apache-cassandra-3.4.0.jar:3.4.0] 

什麼是我的羣集名稱的問題???我錯過了什麼? Log目錄中爲什麼有3個日誌文件?

回答

2

原因是,保存的集羣名稱值不等於所配置的集羣名稱。也就是說,一旦您第一次啓動cassandra,它將從yaml配置文件中獲取羣集名稱,並將羣集名稱保存在列族local中,其可用於system keyspace。因此,如果您嘗試第二次再次重新啓動它,它將嘗試從保存的數據(system.local)中檢索羣集名稱,並將其與yaml配置進行比較。因此,對於您的情況,您首次創建了名爲Test Cluster的羣集,因此cassandra預計每個啓動過程的羣集名稱爲Test Cluster。如果你想改變集羣名稱,那麼這個link更清楚地解釋了這一步。您可以通過以下CQL查詢檢索已保存的羣集名稱,

select * from system.local; 
+0

有我面對這另一個問題是我的**卡桑德拉CQL殼牌**無法啓動?爲什麼? –

+0

嘗試執行CQL shell時遇到什麼錯誤? –

+0

DevCenter.exe顯示連接正常 –

0

嘗試後,發現答案就link

空在/ var/lib中/卡桑德拉/數據,在/ var/lib中/ cassandra/commitlog ,/ var/lib/cassandra/saved_caches目錄,並在 更改羣集名稱後重新啓動Casandra。這在1.2.4版本中運行良好,請使用您的版本嘗試 。

推薦使用的穩定版本的包絡產品,如果不 上面使用1.2.5或1.2.4代替完成。