Cassandra安裝與配置


  1. Install JDK8

     1) 獲取安裝包

$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm" -O jdk-8u111-linux-x64.rpm

     2) 安裝

$ yum -y install jdk-8u111-linux-x64.rpm

 

  1. 安裝cassandra

      $ wget http://mirrors.cnnic.cn/apache/cassandra/3.9/apache-cassandra-3.9-bin.tar.gz -O cassandra-3.9-bin.tar.gz

  $ tar -xvf cassandra-3.9-bin.tar.gz

  $ vim ~/.bashrc

  在末尾追加:export PATH=$PATH:/opt/apache-cassandra-3.9/bin/

  $ cassandra -f -R &  // 啟動Cassandra服務

     

      3、配置cassandra.yaml文件,使得cqlsh 127.0.0.1 或cqlsh 172.2.16.101都能連接到服務器

      1) 修改配置項 rpc_address: 0.0.0.0,  broadcast_rpc_address:本機廣播地址(ifconfig命令可查看)

      2) 設置用戶名,密碼登錄
    a) 修改cassandra.yaml文件,配置authenticator: PasswordAuthenticator,啟用用戶密碼登錄形式。
    b) 以默認的用戶名/密碼:cassandra/cassandra登錄
            cqlsh -ucassandra -pcassandra
    c) 創建新的用戶名,密碼
            create user  userName with password ‘PWD’ superuser;
    d) 使用新創建的用戶再次登錄
            cqlsh -uUserName -pPWD

 

     4、升級版本(3.3.0->3.10)

     1) 將現在的CASSANDRA_HOME環境變量指向新版本所在目錄

     $ vim ~/.bash_profile

     $ export CASSANDRA_HOME=/Users/haha/Personal/ProgramFiles/apache-cassandra-3.10

     $ export PATH=$PATH:$CASSANDRA_HOME/bin

     $ source ~/.bash_profile

     2) 新版本的cassandra.yaml文件中,重新配置data_file_directories, saved_cache_directory, commit_log_directory指向舊版本的data目錄下相關的目錄。

data_file_directories:

    - /Users/haha/opt/cassandra/data/data

commitlog_directory: /Users/haha/opt/cassandra/data/commitlog

saved_caches_directory: /Users/haha/opt/cassandra/data/saved_caches

 

    3)停止舊版本(kill 線程),啟動新版本(指定cassandra.yaml路徑)

>>> cassandra -f -Dcassandra.config=file:///Users/haha/Personal/ProgramFiles/apache-cassandra-3.10/conf/cassandra.yaml

解決exception:

    Exception encountered during startup

org.apache.cassandra.exceptions.ConfigurationException: Expecting URI in variable: [cassandra.config]. Found[cassandra.yaml]. Please prefix the file with [file:///] for local files and [file://<server>/] for remote files.

#cqlsh版本控制

>>> cqlsh --cqlversion=“3.4.4”

解決exception:

     Connection error: ('Unable to connect to any servers', {'127.0.0.1': ProtocolError("cql_version '3.4.0' is not supported by remote (w/ native protocol). Supported versions: [u'3.4.4']",)})
 
5、數據復制
copy命令
 
使用方法:適用於數據量小的情況下。
 
使用方式:
 
copy mykeyspace.mytable to ‘/home/db.csv’
copy servicecrawlers to 'db_crawlers.csv';
 
scp  root@rsd:~/db_feeds.csv  ~/   將rsd服務器上的cvs文件傳到本地
 
這樣就成功的把表mytable以csv的格式導出到了db.csv文件。
 
然后再另外一個集群中,建一個一模一樣的表,然后使用
 
copy app12345.mytable from ‘/home/db.csv’
 
copy cpdailyspace.feeds_copy  from '~/db_feeds.csv' WITH MAXBATCHSIZE=1;   // 大批量的情況加WITH
 
就把數據導入到了新的庫中。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM