sql >> データベース >  >> RDS >> Database

Ubuntu 20.10 /Ubuntu20.04にApacheCassandraをインストールする方法

    このブログでは、Ubuntu 20.10 /Ubuntu20.04にApacheCassandraをインストールする方法について説明します。 Apache Cassandraは、分散型で可用性の高いクラスターに大量のデータを格納することを目的としたオープンソースのNoSQLデータベースであり、フォールトトレランス、複数のサーバー間での一貫性、および線形スケーラビリティを提供します。

    UbuntuにApacheCassandraをインストールする手順

    ステップ1:Ubuntu20にJavaをインストールする

    $ sudo apt install openjdk-8-jdk

    私のシステムでは、Javaがすでに存在していたので、アップグレードする予定です。

    ステップ2:Javaのインストールを確認する

    $ java -version

    サンプル出力:

    root@Cassandra:~# java -version
    openjdk version "1.8.0_292"
    OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0ubuntu1~20.10-b10)
    OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)

    ステップ3:依存関係パッケージをインストールする:

    $ sudo apt install apt-transport-https

    ステップ4:GPGキーをインポートする:

    $ wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -

    サンプル出力:

    root@Cassandra:~# wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
    Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
    OK
    root@Cassandra:~#

    ステップ5:ApacheCassandraのリポジトリを追加する

    $ sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'

    サンプル出力:

    root@Cassandra:~# sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'
    root@Cassandra:~#

    ステップ6:Ubuntuシステムを更新する

    $ sudo apt update

    ステップ7:UbuntuにApacheCassandraをインストールする

    $ sudo apt install cassandra

    最新のCassandraバージョンを表示することもできます

    インストール後、Cassandraサービスが自動的に開始されます。

    サンプル出力:

    root@Cassandra:~# sudo apt install cassandra
    Reading package lists... Done
    Building dependency tree 
    Reading state information... Done
    The following package was automatically installed and is no longer required:
    virtualbox-guest-utils
    Use 'sudo apt autoremove' to remove it.
    The following additional packages will be installed:
    libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib
    python-is-python2 python2 python2-minimal python2.7 python2.7-minimal
    Suggested packages:
    cassandra-tools python2-doc python-tk python2.7-doc binutils binfmt-support
    The following NEW packages will be installed:
    cassandra libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib
    python-is-python2 python2 python2-minimal python2.7 python2.7-minimal
    0 upgraded, 9 newly installed, 0 to remove and 332 not upgraded.
    Need to get 34.4 MB of archives.
    After this operation, 56.9 MB of additional disk space will be used.
    Do you want to continue? [Y/n] Y
    Get:2 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 libpython2.7-minimal amd64 2.7.18-1build2 [335 kB]
    Get:1 https://downloads.apache.org/cassandra/debian 311x/main amd64 cassandra all 3.11.10 [30.7 MB]
    Get:3 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2.7-minimal amd64 2.7.18-1build2 [1,264 kB]
    Get:4 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2-minimal amd64 2.7.18-2 [13.5 kB]
    Get:5 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 libpython2.7-stdlib amd64 2.7.18-1build2 [1,867 kB]
    Get:6 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2.7 amd64 2.7.18-1build2 [248 kB]
    Get:7 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 libpython2-stdlib amd64 2.7.18-2 [7,332 B]
    Get:8 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2 amd64 2.7.18-2 [9,068 B]
    Get:9 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python-is-python2 all 2.7.17-4 [2,496 B]
    Fetched 34.4 MB in 1min 12s (474 kB/s) 
    Selecting previously unselected package libpython2.7-minimal:amd64.
    (Reading database ... 155984 files and directories currently installed.)
    Preparing to unpack .../0-libpython2.7-minimal_2.7.18-1build2_amd64.deb ...
    Unpacking libpython2.7-minimal:amd64 (2.7.18-1build2) ...
    Selecting previously unselected package python2.7-minimal.
    Preparing to unpack .../1-python2.7-minimal_2.7.18-1build2_amd64.deb ...
    Unpacking python2.7-minimal (2.7.18-1build2) ...
    Selecting previously unselected package python2-minimal.
    Preparing to unpack .../2-python2-minimal_2.7.18-2_amd64.deb ...
    Unpacking python2-minimal (2.7.18-2) ...
    Selecting previously unselected package libpython2.7-stdlib:amd64.
    Preparing to unpack .../3-libpython2.7-stdlib_2.7.18-1build2_amd64.deb ...
    Unpacking libpython2.7-stdlib:amd64 (2.7.18-1build2) ...
    Selecting previously unselected package python2.7.
    Preparing to unpack .../4-python2.7_2.7.18-1build2_amd64.deb ...
    Unpacking python2.7 (2.7.18-1build2) ...
    Selecting previously unselected package libpython2-stdlib:amd64.
    Preparing to unpack .../5-libpython2-stdlib_2.7.18-2_amd64.deb ...
    Unpacking libpython2-stdlib:amd64 (2.7.18-2) ...
    Setting up libpython2.7-minimal:amd64 (2.7.18-1build2) ...
    Setting up python2.7-minimal (2.7.18-1build2) ...
    Linking and byte-compiling packages for runtime python2.7...
    Setting up python2-minimal (2.7.18-2) ...
    Selecting previously unselected package python2.
    (Reading database ... 156719 files and directories currently installed.)
    Preparing to unpack .../python2_2.7.18-2_amd64.deb ...
    Unpacking python2 (2.7.18-2) ...
    Selecting previously unselected package python-is-python2.
    Preparing to unpack .../python-is-python2_2.7.17-4_all.deb ...
    Unpacking python-is-python2 (2.7.17-4) ...
    Selecting previously unselected package cassandra.
    Preparing to unpack .../cassandra_3.11.10_all.deb ...
    Unpacking cassandra (3.11.10) ...
    Setting up libpython2.7-stdlib:amd64 (2.7.18-1build2) ...
    Setting up python2.7 (2.7.18-1build2) ...
    Setting up libpython2-stdlib:amd64 (2.7.18-2) ...
    Setting up python2 (2.7.18-2) ...
    Setting up python-is-python2 (2.7.17-4) ...
    Setting up cassandra (3.11.10) ...
    Adding group `cassandra' (GID 141) ...
    Done.
    vm.max_map_count = 1048575
    net.ipv4.tcp_keepalive_time = 300
    update-rc.d: warning: start and stop actions are no longer supported; falling b
    ack to defaults
    Processing triggers for mime-support (3.64ubuntu1) ...
    Processing triggers for gnome-menus (3.36.0-1ubuntu1) ...
    Processing triggers for systemd (246.6-1ubuntu1) ...
    Processing triggers for man-db (2.9.3-2) ...
    Processing triggers for desktop-file-utils (0.24-1ubuntu4) ...
    root@Cassandra:~#

    起動時にCassandraサービスを自動的に自動起動するには:

    sudo systemctl enable cassandra

    サンプル出力:

    root@Cassandra:~# sudo systemctl enable cassandra
    cassandra.service is not a native service, redirecting to systemd-sysv-install.
    Executing: /lib/systemd/systemd-sysv-install enable cassandra
    root@Cassandra:~#

    ステップ8:Cassandraとnodetoolのステータスを確認する

    $ sudo systemctl status cassandra

    ノードの統計を確認する

    $ sudo nodetool status

    UN クラスターが機能していることを示す出力信号の文字。

    ステップ9:Cassandraターミナルにログインします

    $ cqlsh

    サンプル出力:

    root@Cassandra:~# cqlsh
    Connected to Test Cluster at 127.0.0.1:9042.
    [cqlsh 5.0.1 | Cassandra 3.11.10 | CQL spec 3.4.4 | Native protocol v4]
    Use HELP for help.
    cqlsh>
    にHELPを使用します

    ステップ10:UbuntuでのApacheCassandraの構成

    • 構成ファイル–> / etc / cassandra
    • データが保存されます–> / var / lib / cassandra
    • 起動ファイル–> / etc / default / cassandra

    デフォルトのCassandraクラスター名は「TestCluster」で、クラスター名のログインをCassandraに更新します。

    $ cqlsh

    私の場合、Cassandraクラスター名を「SysAdminXpertクラスター」に設定します

    UPDATE system.local SET cluster_name = 'SysAdminXpert Cluster' WHERE KEY = 'local';

    Cassandraプロンプトを終了するコマンド

    EXIT;

    cassandra.yaml」を編集する前にバックアップを取ることをお勧めします ファイル

    sudo cp /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.org-backup

    「cassandra.yaml」を見つけて編集します ファイルを作成し、クラスター名を更新します。

    $ sudo vim /etc/cassandra/cassandra.yaml

    cluster_name」を検索します クラスタ名を更新し、「SysAdminXpertCluster」に設定しました。

    CassandraノードのIPアドレスを追加します。構成ファイルを開き、seed_providerセクションでseedsを見つけます。 エントリ:

    cassandra.yaml」を保存して終了します ファイル、変更を反映するには、Cassandraサービスを再起動します。

    Cassandraサービスを再起動し、ステータスを確認します:

    $ sudo systemctl restart cassandra && sudo systemctl status cassandra

    Cassandra Terminalに再ログインし、以下のスクリーンショットに示すように更新されたクラスター名を確認します。

    $ cqlsh

    Cassandra cqlshの使用法:

    Cassandraクエリ言語シェル(CQLSH) 基本的にはカサンドラとユーザーの間のコミュニケーション媒体です。 CQLSHは、ユーザーがCassandraクエリ言語(CQL)を起動できるようにするプラットフォームです。

    root@Cassandra:~# cqlsh --help
    Usage: cqlsh.py [options] [host [port]]
    
    CQL Shell for Apache Cassandra
    
    Options:
    --version show program's version number and exit
    -h, --help show this help message and exit
    -C, --color Always use color output
    --no-color Never use color output
    --browser=BROWSER The browser to use to display CQL help, where BROWSER
    can be:
    - one of the supported browsers in
    https://docs.python.org/2/library/webbrowser.html.
    - browser path followed by %s, example: /usr/bin
    /google-chrome-stable %s
    --ssl Use SSL
    --no_compact No Compact
    -u USERNAME, --username=USERNAME
    Authenticate as user.
    -p PASSWORD, --password=PASSWORD
    Authenticate using password.
    -k KEYSPACE, --keyspace=KEYSPACE
    Authenticate to the given keyspace.
    -f FILE, --file=FILE Execute commands from FILE, then exit
    --debug Show additional debugging information
    --encoding=ENCODING Specify a non-default encoding for output. (Default:
    utf-8)
    --cqlshrc=CQLSHRC Specify an alternative cqlshrc file location.
    --cqlversion=CQLVERSION
    Specify a particular CQL version, by default the
    highest version supported by the server will be used.
    Examples: "3.0.3", "3.1.0"
    --protocol-version=PROTOCOL_VERSION
    Specify a specific protcol version otherwise the
    client will default and downgrade as necessary
    -e EXECUTE, --execute=EXECUTE
    Execute the statement and quit.
    --connect-timeout=CONNECT_TIMEOUT
    Specify the connection timeout in seconds (default: 5
    seconds).
    --request-timeout=REQUEST_TIMEOUT
    Specify the default request timeout in seconds
    (default: 10 seconds).
    -t, --tty Force tty mode (command prompt).
    
    Connects to 127.0.0.1:9042 by default. These defaults can be changed by
    setting $CQLSH_HOST and/or $CQLSH_PORT. When a host (and optional port number)
    are given on the command line, they take precedence over any defaults.
    root@Cassandra:~#

    バージョンを取得するコマンド:

    このコマンドは、cqlsh、Cassandra、CQL、およびネイティブプロトコルのバージョンを表示します。

    例:

    root@Cassandra:~# cqlsh
    Connected to SysAdminXpert Cluster at 127.0.0.1:9042.
    [cqlsh 5.0.1 | Cassandra 3.11.10 | CQL spec 3.4.4 | Native protocol v4]
    Use HELP for help.
    cqlsh>
    にHELPを使用します

    ホストを表示するコマンド:

    このコマンドは、クラスターの名前、ポート付きのIPアドレスを表示します。

    例:

    cqlsh> show host
    Connected to Test Cluster at 127.0.0.1:9042.
    cqlsh>

    説明するコマンド:

    このコマンドは、以下に説明するように、以下のすべてのスキーマ要素の説明を提供します。

    構文:

    DESCRIBE CLUSTER
    DESCRIBE SCHEMA
    DESCRIBE TABLES
    DESCRIBE TABLE <table name>
    DESCRIBE INDEX <index name>
    DESCRIBE KEYSPACES
    DESCRIBE KEYSPACE <keyspace name>
    DESCRIBE TYPES
    DESCRIBE TYPE <type name>
    DESCRIBE FUNCTIONS
    DESCRIBE FUNCTION <function name>
    DESCRIBE AGGREGATES
    DESCRIBE AGGREGATE <aggregate function name>
    DESCRIBE MATERIALIZED VIEW <view name>

    例:

    cqlsh> describe cluster
    
    Cluster: SysAdminXpert Cluster
    Partitioner: Murmur3Partitioner
    
    cqlsh>

    コンソールをクリアするコマンド:

    構文:

    CLEAR
    CLS

    記事の終わり。 Ubuntu20.10にApacheCassandraをインストールする方法を見てきました。


    1. SQLServerでデータベースを作成する方法

    2. SQL:フルネームフィールドから名、ミドルネーム、ラストネームを解析します

    3. その場でテーブルを作成するためのデータベース設計

    4. SQL Serverでカスケードを使用するのはいつ/なぜですか?