FoundationDB 基本使用

news2024/9/21 14:35:28

目录

一、FoundationDB介绍

二、安装单机版FoundationDB

2.1 下载安装程序

2.2 安装FoundationDB

2.3 修改配置信息

2.4 管理FoundationDB服务

三、fdbcli的常用命令

3.1连接数据库

3.2退出fdbcli

3.3查看版本

3.4 写模式

3.5写入键值

3.6读取键值

3.7删除键值

3.8查看状态


一、FoundationDB介绍

        FoundationDB是一个分布式数据库,设计用于在大量普通服务器组成的集群上处理大规模的结构化数据。它将数据组织为有序的键值存储,并对所有操作采用ACID事务来确保数据的完整性。

        FoundationDB具有以下特点:

  • 多模型数据存储。FoundationDB是多模型的,意味着你可以在单一数据库中存储多种类型的数据。所有的数据都在键值存储组件中安全地存储、分布和复制。
  • 易于扩展且容错。FoundationDB易于安装、扩展和管理。它拥有分布式架构,能够优雅地向外扩展,并且在表现得像单一的ACID数据库的同时处理故障。
  • 业界领先的性能。FoundationDB在普通硬件上提供了惊人的性能,使你能够以低成本支持非常繁重的负载。
  • 生产就绪。FoundationDB已经在生产环境中运行多年,通过所学到的经验不断加固。备份FoundationDB的是一个基于确定性仿真引擎的无与伦比的测试系统。
  • 开源。自2018年起,苹果公司将其开源,使用Apache License 2.0许可,使得开发者社区能够贡献和改进这个项目。

二、安装单机版FoundationDB

2.1 下载安装程序

wget https://github.com/apple/foundationdb/releases/download/7.1.61/foundationdb-clients-7.1.61-1.el7.x86_64.rpm
wget https://github.com/apple/foundationdb/releases/download/7.1.61/foundationdb-server-7.1.61-1.el7.x86_64.rpm

2.2 安装FoundationDB

rpm -Uvh foundationdb-clients-7.1.61-1.el7.x86_64.rpm
rpm -Uvh foundationdb-server-7.1.61-1.el7.x86_64.rpm

2.3 修改配置信息

        安装成功之后,默认将启动一个 FoundationDB 服务。数据库相关配置文件存放在/etc/foundationdb目录下:

  • fdb.cluster 默认集群信息文件
  • foundationdb.conf 默认集群配置文件

        数据和日志文件默认存放在/var/lib/foundationdb/data/和/var/log/foundationdb。进入foundationdb.conf文件修改存放路径:

#主机上创建相应的目录,并使其具有 foundationdb 的访问权限

datadir = /data/db/foundationdb/data/$ID
logdir = /data/db/foundationdb/log

        由于更改了 data 和 log 的存放路径,需新建 database。可在 fdbcli 中新建一个 以ssd 为存储引擎的 database:

2.4 管理FoundationDB服务

#启动服务
service foundationdb start
#重启服务
service foundationdb restart
#停止服务
service foundationdb stop

#设置开机启动服务
systemctl enable foundationdb
#关闭开机启动服务
systemctl disable foundationdb
#查看服务状态
systemctl status foundationdb

三、fdbcli的常用命令

3.1连接数据库

fdbcli

3.2退出fdbcli

quit;

3.3查看版本

getversion;

3.4 写模式

        fdbcli默认只读模式,需要开启写模式才能设置(set)和清除(clear)键值

  • writemode off 禁用来自fdbcli的写入操作(这是默认设置)。在这种模式下,尝试设置或清除键值将导致错误。
  • writemode on 启用来自fdbcli的写入操作,允许用户进行键值的设置和清除操作。

3.5写入键值

set <key> <value>;

3.6读取键值

get <key>;

3.7删除键值

clear <key>;

3.8查看状态

status [minimal|details|json]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1948221.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

花几千上万学习Java,真没必要!(二十七)

1、Math类&#xff1a; package mathtest.com; public class MathDemo { public static void main(String[] args) { // 定义圆的半径 double radius 5.0; // 计算并打印圆的周长 double circumference 2 * Math.PI * radius; System.out.printf("圆的周长: %.2f…

Vue 状态管理 Vue CLI

Vue 状态管理 & Vue CLI 1、状态管理2、集中状态管理2.1 Vuex2.1.1 Vuex核心概念2.1.2 Vuex Store实例2.1.3 Vuex Getter2.1.4 Vuex Mutation2.1.4 Vuex Actions2.1.4 Vuex Module 2.2 Pinia2.2.1功能增强 3、Vuex 实现原理4、Pinia 实现原理5、CLI5.1 实现 1、状态管理 将…

【机器学习】激活函数:神经网络的灵魂

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 激活函数&#xff1a;神经网络的灵魂什么是激活函数?常见激活函数类型1. Sigmo…

Linux环境安装KubeSphere容器云平台并实现远程访问Web UI 界面

文章目录 前言1. 部署KubeSphere2. 本地测试访问3. Linux 安装Cpolar4. 配置KubeSphere公网访问地址5. 公网远程访问KubeSphere6. 固定KubeSphere公网地址 前言 本文主要介绍如何在Linux CentOS搭建KubeSphere并结合Cpolar内网穿透工具&#xff0c;实现远程访问&#xff0c;根…

UE4调试UE4Editor-Cmd.exe

在工作中&#xff0c;我们看到这样的构建命令&#xff1a; %EnginePath%\Binaries\Win64\UE4Editor-Cmd.exe %ClientPath%\%ProjectName%.uproject -runHotPatcher {其它参数} 我们应该如何调试UE4Editor-Cmd.exe呢&#xff1f;其实调试 UE4Editor.exe 就可以了&#xff08;参考…

Mac安装Hoomebrew与升级Python版本

参考 mac 安装HomeBrew(100%成功)_mac安装homebrew-CSDN博客 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 安装了Python 3.x版本&#xff0c;你可以使用以下命令来设置默认的Python版本&#xff1a; # 首先找到新安…

IDEA安装并使用通义灵码

IDEA安装并使用通义灵码 通义灵码介绍安装通义灵码 通义灵码介绍 在数字革命的前沿&#xff0c;阿里云技术团队匠心独运&#xff0c;倾力打造“通义灵码”——一个融合尖端科技的智能编码助手&#xff0c;旨在革新软件工程的未来。 实时代码扩展 通义灵码具备深度理解代码脉络的…

opencascade AIS_Line源码学习

前言 AIS_Line 是 OpenCASCADE 库中的一个类&#xff0c;用于表示和操作三维直线。它可以通过几何线&#xff08;Geom_Line&#xff09;或者两个几何点&#xff08;Geom_Point&#xff09;来初始化。 方法 1 //! 初始化直线 aLine。 Standard_EXPORT AIS_Line(const Handl…

8.0.32 mysql 配置主从数据库

配置前提&#xff1a; 两台服务器都需要安装同一版本的mysql数据库 我的版本是8.0.32 数据库参数修改 主数据库my.cnf(linux)或my.ini(win)配置&#xff1a; 这里需要注意&#xff1a;server-id必须唯一主从两个库必须要不一样 log_binmysql-bin server-id24 gtid-modeON …

yolov8训练自己的实例分割数据集

参考&#xff1a; 1、官方教程&#xff1a;https://docs.ultralytics.com/zh/tasks/segment/ 2、YOLOv8制作自己的实例分割数据集保姆级教程&#xff08;包含json转txt&#xff09; 下载最新yolov8代码 git clone https://github.com/ultralytics/ultralytics.git一、制作自…

vue学习day12-声明式导航续、路由重定向、Vue路由-404、Vue路由-模式设置、编程式导航

34、声明式导航续 &#xff08;4&#xff09;跳转传参 1&#xff09;跳转传参 ①语法&#xff1a; 传递&#xff1a;to“/path?参数名值” 接收&#xff1a;如果在模版里&#xff0c;通过$route.query.参数名获取&#xff0c;如果在js代码里&#xff0c;通过this. $route…

代码随想录算法训练营第六十四天|Floyd 算法、A * 算法、最短路算法总结

97. 小明逛公园 Floyd 算法 Floyd-Warshall算法是一种用于求解图中所有节点对之间最短路径的经典算法。它的时间复杂度为O(n^3)&#xff0c;适用于节点数量不多&#xff08;通常不超过几百个&#xff09;的密集图。该算法不仅能处理带权有向图&#xff0c;还能处理带权无向图。…

模拟建造游戏:城市:天际线2(都市天际线2)中文免安装,解压即撸

《城市&#xff1a;天际线2》&#xff08;Cities: Skylines II&#xff09;是一款模拟经营游戏&#xff0c;由Colossal Order开发&#xff0c;Paradox Interactive发行。 下载地址&#xff1a;https://pan.quark.cn/s/84e69332ec3e 更多游戏&#xff1a;https://kdocs.cn/l/cuH…

vue3引入openlayers

安装ol包 OpenLayers作为 ol npm包提供&#xff0c;它提供了官方支持的API的所有模块。 官方地址&#xff1a;ol npm install ol模块和子模块约定 具有CamelCase名称的OpenLayers模块提供类作为默认导出&#xff0c;并且可能包含其他常量或函数作为命名导出&#xff1a; i…

HarmonyOS Next 省市区级联(三级联动)筛选框

效果图 完整代码 实例对象 export class ProvinceBean {id?: stringpid?: stringisSelect?: booleandeep?: objectextName?: stringchildren?: ProvinceBean[] }级联代码 import { MMKV } from tencent/mmkv/src/main/ets/utils/MMKV import { ProvinceBean } from ..…

MLIR的TOY教程学习笔记

MLIR TOY Language 文章目录 MLIR TOY Language如何编译该项目ch1: MLIR 前端IR解析ch2: 定义方言和算子 (ODS)1. 定义方言2. 定义OP3. OP相关操作4. 定义OP ODS (Operation Definition Specification)1. 基本定义2. 添加文档3. 验证OP4. 新增构造函数5. 定义打印OP的格式 ch3:…

【数据结构】:用Java实现链表

在 ArrayList 任意位置插入或者删除元素时&#xff0c;就需要将后序元素整体往前或者往后搬移&#xff0c;时间复杂度为 O(n)&#xff0c;效率比较低&#xff0c;因此 ArrayList 不适合做任意位置插入和删除比较多的场景。因此&#xff1a;java 集合中又引入了 LinkedList&…

电脑怎么恢复删除的文件?8个方法,简单搞定文件恢复!(强力推荐)

电脑怎么恢复删除的文件&#xff1f;随着如今几乎每个人都拥有或使用计算机&#xff0c;文件丢失和误删已成为我们在日常计算机使用中难以避免的问题之一。在我们使用计算机的过程中&#xff0c;经常会遇到各种问题&#xff0c;有些可以轻松解决&#xff0c;而有些可能需要专业…

键盘是如何使用中断机制的?当打印一串字符到显示屏上时发生了什么???

当在键盘上按下一个键时会进行一下操作&#xff1a; 1.当按下任意一个键时&#xff0c;键盘编码器监控会来判断按下的键是哪个 2.键盘控制器用将解码,将键盘的数据保存到键盘控制器里数据寄存器里面 3.此时发送一个中断请求给中断控制器&#xff0c;中断控制器获取到中断号发送…

Spring Security认证授权介绍

一、目标 真正控制系统权限的&#xff0c;需要引入专门的安全框架才行&#xff0c;所以&#xff0c;我们今天重点来学习Spring家族中的一员Spring Security安全框架。最终呢&#xff0c;我们会使用Spring Security框架来控制养老项目的后台管理系统 能够熟悉常见的权限控制的方…