如何在 Ubuntu 22.04 上安装 Cassandra NoSQL 数据库教程

简介

本教程将向你介绍如何在 Ubuntu 22.04 上安装 Cassandra NoSQL 数据库。

Apache Cassandra 是一个分布式的 NoSQL 数据库,旨在处理跨多个普通服务器的大量数据,并提供高可用性,没有单点故障。Apache Cassandra 是一个高度可扩展的分布式 NoSQL 数据库,旨在处理跨多个服务器的大量数据,且没有单点故障。

Cassandra 以其高可用性、容错性和水平扩展能力而闻名,非常适合需要高性能、可靠性和跨多个节点无缝数据分发的应用程序。它使用去中心化的对等架构,使其非常适合处理地理分布式环境中的大规模实时数据工作负载。

本教程的目标是手把手教你如何在 Linux 服务器上安装 Cassandra。

准备工作

服务器准备

必要前提:

  • 一个充满求知欲的大脑。
  • 一台 Linux 服务器(推荐腾讯云、阿里云或雨云等)。

我将以 雨云 为例,带大家创建一台自己的云服务器,以便学习本篇文章的内容。

注册链接: https://rainyun.ivwv.site

创建雨云服务器

以下步骤仅供参考,请根据实际需求选择配置。

  • 点击 云产品云服务器立即购买
  • 选择距离你较近的区域,以保证低延迟。
  • 按照自己需求选择配置,选择Ubuntu 22.04 版本,按照自己需求是否预装Docker。
  • 最后按照提示进行购买。
  • 购买后等待机器部署完毕,点击刚刚创建好的服务器,进入管理面板,找到远程连接相关信息。
  • 我们使用 PowerShell 进行 SSH 远程连接到服务器,Win+R 打开运行窗口,输入 powershell 后点击确定。
  • 输入 ssh root@你的服务器IP 例如 ssh root@154.9.227.239 回车后,首次需要输入 yes,再次回车后即可登录服务器。
  • 到此为止,我们的云服务器就远程连接上了。

安装和配置步骤

第一步:更新系统

首先,更新你的软件包列表,并将现有软件包升级到最新版本。

bash 复制代码
sudo apt update && sudo apt upgrade -y

第二步:安装 Java

Cassandra 需要 Java 才能运行。安装 OpenJDK,它是 Java 平台的免费开源实现。

bash 复制代码
sudo apt install openjdk-17-jdk -y

验证 Java 安装:

bash 复制代码
java -version

你应该看到类似如下的输出:

openjdk version "17.0.12" 2024-07-16
OpenJDK Runtime Environment (build 17.0.12+7-Ubuntu-1ubuntu224.04)
OpenJDK 64-Bit Server VM (build 17.0.12+7-Ubuntu-1ubuntu224.04, mixed mode, sharing)

第三步:安装 Apache Cassandra

Apache Cassandra 在默认的 Ubuntu 存储库中不可用,因此你需要将官方 Cassandra 存储库添加到你的系统中。首先访问 官方文档页面 获取最新的稳定版本。 官方下载页面

首先,将 Cassandra 存储库添加到你的源列表:

bash 复制代码
echo "deb [signed-by=/etc/apt/keyrings/apache-cassandra.asc] https://debian.cassandra.apache.org 50x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list

接下来,添加 Cassandra 存储库密钥:

bash 复制代码
curl -o /etc/apt/keyrings/apache-cassandra.asc https://downloads.apache.org/cassandra/KEYS

添加存储库后,更新你的软件包列表并安装 Cassandra。

bash 复制代码
sudo apt update
sudo apt install cassandra -y

安装完成后,启动 Cassandra 服务并使其在启动时启用。

bash 复制代码
sudo systemctl start cassandra
sudo systemctl enable cassandra

检查 Cassandra 服务的状态,以确保其正常运行:

bash 复制代码
sudo systemctl status cassandra

第四步:验证 Cassandra 安装

要验证 Cassandra 是否已安装并正在运行,请使用 nodetool 实用程序,该实用程序包含在 Cassandra 安装中。

bash 复制代码
sudo nodetool status

你应该看到输出指示你的节点已启动并正在运行。

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address     Load       Tokens  Owns (effective)  Host ID                                 Rack
UN  127.0.0.1   114.69 KiB  16      100.0%            8e1cf493-02b9-4a3a-a8cc-d5c498dbb577  rack1

第五步:连接到 Cassandra 数据库

Cassandra 自带一个名为 cqlsh(Cassandra 查询语言 Shell)的命令行工具,你可以使用它连接到你的 Cassandra 数据库。

要连接到你的 Cassandra 数据库,请运行:

bash 复制代码
cqlsh

你将进入 cqlsh shell,你可以在其中执行 Cassandra 查询语言 (CQL) 命令。

第六步:创建一个 Keyspace

在 Cassandra 中,keyspace 是一个命名空间,用于定义节点上的数据复制。让我们创建一个简单的 keyspace:

sql 复制代码
CREATE KEYSPACE mykeyspace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 1};

要验证你的 keyspace 是否已创建,你可以列出所有 keyspace:

sql 复制代码
DESCRIBE keyspaces;

第七步:创建一个表

现在你已经有了一个 keyspace,你可以在其中创建一个表。这是一个创建简单 users 表的示例:

sql 复制代码
USE mykeyspace;

CREATE TABLE users (
    user_id UUID PRIMARY KEY,
    name text,
    age int,
    email text
);

第八步:将数据插入表中

你现在可以使用 INSERT 语句将数据插入到表中:

sql 复制代码
INSERT INTO users (user_id, name, age, email)
VALUES (uuid(), 'John Doe', 30, 'johndoe@example.com');

第九步:查询数据

最后,你可以从表中查询数据以验证一切是否正常工作:

sql 复制代码
SELECT * FROM users;

你应该看到你插入的数据显示在输出中。

 user_id                                  | age | email               | name
--------------------------------------+-----+---------------------+----------
 73dc58ac-766c-43b9-a434-02240b6b2837 |  30 | johndoe@example.com | John Doe

结尾

你已经成功了解了如何在 Ubuntu 22.04 服务器上安装 Apache Cassandra NoSQL DB。你现在可以开始构建可扩展的高性能应用程序,利用 Cassandra 的分布式架构。

推广链接:

相关推荐
大兵编码1 小时前
linux系统常用命令
linux·运维·服务器
关关钧2 小时前
【Linux】函数
linux·运维·服务器
m0_748234084 小时前
构建流媒体直播服务器:nginx与nginx-rtmp-module实战指南
运维·服务器·nginx
风虎云龙科研服务器4 小时前
深度学习GPU服务器推荐:打造高效运算平台
服务器·人工智能·深度学习
Lang_xi_5 小时前
Bash Shell的操作环境
linux·开发语言·bash
想要入门的程序猿5 小时前
Qt菜单栏、工具栏、状态栏(右键)
开发语言·数据库·qt
关关钧5 小时前
【Linux】sed编辑器
linux·运维·编辑器
键盘上的蚂蚁-6 小时前
Python 语言结合 Flask 框架来实现一个基础的代购商品管理
jvm·数据库·oracle
哦豁灬6 小时前
linux查看硬件信息
linux·运维·服务器
m0_748252606 小时前
在Linux系统上使用nmcli命令配置各种网络(有线、无线、vlan、vxlan、路由、网桥等)
linux·服务器·网络