CentOS7.6安装RocksDB

一、简介

RocksDB是使用C++编写的嵌入式kv存储引擎,其键值均允许使用二进制流。由Facebook基于levelDB开发, 提供向后兼容的levelDB API。

RocksDB针对Flash存储进行优化,延迟极小。RocksDB使用LSM存储引擎,纯C++编写。Java版本RocksJava正在开发中。参见RocksJavaBasic。

RocksDB依靠大量灵活的配置,使之能针对不同的生产环境进行调优,包括直接使用内存,使用Flash,使用硬盘或者HDFS。支持使用不同的压缩算法,并且有一套完整的工具供生产和调试使用。

二、安装

1.配置yum源

①安装wget
yum install -y wget
②备份/etc/yum.repos.d/CentOS-Base.repo文件
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.back
③下载阿里云Centos-7.repo文件
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
④重新加载yum
yum clean all
yum makecache

2.安装python3

sudo yum install python3

3.安装C++ 17

sudo yum install centos-release-scl
sudo yum-config-manager --enable rhel-server-rhscl-7-rpms
sudo yum install devtoolset-7
sudo scl enable devtoolset-7 bash

4.安装RocksDB

git clone https://github.com/facebook/rocksdb.git(或者直接在GitHub下载)
cd rocksdb
# 编译成调试模式(这个过程时间比较长)
make
# 编译成发布模式
make static_lib

5.安装依赖库

需要先安装一些必要的依赖库,如snappy、gflags、zlib等压缩库。rocksdb 支持多种压缩模式。

# gflags
https://github.com/gflags/gflags/releases(或者直接在GitHub下载)
下载:gflags-2.1.0-1.amd64.rpm
安装:rpm -i gflags-2.1.0-1.amd64.rpm# snappy
sudo yum install snappy snappy-devel
# zlib
sudo yum install zlib zlib-devel
# bzip2
sudo yum install bzip2 bzip2-devel
# lz4
sudo yum install lz4-devel
# ASAN (optional for debugging)
sudo yum install libasan
# zstandard
sudo yum install libzstd-devel

6.添加环境变量LD_LIBRARY_PATH

sudo vim /etc/profileLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/rocksdb/rocksdb-main
export LD_LIBRARY_PATHsource /etc/profile echo $LD_LIBRARY_PATH

7.测试是否成功,执行以下命令测试

cd rocksdb/
make check

在这里插入图片描述

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

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

相关文章

Sora 使用教程,新手小白可用

Sora 使用教程,新手小白可用 参考文章:Sora 使用教程,OpenAI 的文生视频模型 为了在激烈的行业竞争中保持领先地位,OpenAI 在 2024 年 2 月 15 日发布了其革命性的文本至视频转换模型——Sora。这个先进的工具能够将文本描述转化…

使用傅里叶实现100倍的压缩效果(附Python源码)

傅里叶变换(Fourier Transform)是一种将一个函数(在时间或空间域)转换为另一个函数(在频率域)的数学变换方法。它在信号处理、图像处理、通信等领域有广泛应用。 实现过程 将傅里叶系数核心的1%保留&…

从Linux network namespace 认识 Docker 网络模型

写在前面 很早的一篇博文,后来忙所以没有整理完,整理 k8s 网络相关的知识,顺便整理博文内容涉及 docker 网络模型梳理,以及桥接模式原理剖析,包括一些生产用例理解不足小伙伴帮忙指正对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停…

使用阿里云发送短信

使用阿里云短信服务有两种方式 API 发送和 控制台发送&#xff0c;控制台发送到话有太多限制&#xff0c;这里我们使用API 通过 调用服务端代码进行发送。 整体结构如下&#xff1a; 导入依赖 <!--阿里云短信发送--><dependency><groupId>com.aliyun<…

iOS如何一键清除剪贴板中的所有内容

参考:https://www.jb51.net/shouji/746688.html 1.打开“快捷指令”应用&#xff0c;前往“快捷指令中心”&#xff0c;下拉找到“巧用剪贴板”并点击“查看全部”。 2.下拉到底部&#xff0c;点击“清除剪贴板中的所有内容”&#xff0c;然后选择“添加快捷指令”&#xff1a…

SpringBoot基于Aop优雅的处理参数中的空格(提供Gitee源码)

前言:在实际开发中,很多用户会不经意的输入空格,导致存入数据库中的信息也同样存在空格,这样会导致根据某个字段去查询数据的时候总是查询不到的问题,后来才发现是因为多了个空格的问题,如果我们按传统的方式在每个方法中一个个对空格进行处理,这样会导致代码看起来非常…

Java学习--黑马SpringBoot3课程个人总结-2024-02-12

1.环境准备 出现报错 Vue 引入路径正确的&#xff0c;但一直报错&#xff1a; Already included file name ‘‘ differs from file name ‘‘ only in casing. 解决方案来自此链接 2.注册界面的搭建 代码如下 <script setup> import { User, Lock } from element-plus/…

信钰证券:a股可以t+0吗?怎么间接实现t+0?

a股不能够t0&#xff0c;它是实施t1的买卖方式&#xff0c;即当天买入的个股&#xff0c;当天不能够卖出&#xff0c;需求比及下一个买卖日才能够卖出&#xff0c;但是&#xff0c;投资者能够通过以下方法直接地完成t0&#xff1a; 1、融券操作 通过融资融券中的融券直接地做…

多元统计分析课程论文-聚类效果评价

数据集来源&#xff1a;Unsupervised Learning on Country Data (kaggle.com) 代码参考&#xff1a;Clustering: PCA| K-Means - DBSCAN - Hierarchical | | Kaggle 基于特征合成降维和主成分分析法降维的国家数据集聚类效果评价 目录 1.特征合成降维 2.PCA降维 3.K-Mean…

Docker部署开源白板工具Excalidraw并结合内网穿透远程访问

最近&#xff0c;我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念&#xff0c;而且内容风趣幽默。我觉得它对大家可能会有所帮助&#xff0c;所以我在此分享。点击这里跳转到网站。 文章目录 1. 安装Docker2. 使用Docker拉取Excalidraw镜像3. 创建…

基于ORB-SLAM2与YOLOv8剔除动态特征点

基于ORB-SLAM2与YOLOv8剔除动态特征点 以下方法以https://cvg.cit.tum.de/data/datasets/rgbd-dataset/download#freiburg3_walking_xyz数据集进行实验测试APE 首先在不剔除动态特征点的情况下进行测试&#xff1a; 方法1:segment坐标点集合逐一排查剔除 利用YOLOv8的segm…

容性负载箱有哪些主要功能?

容性负载箱是一种用于模拟电网中感性负载的设备&#xff0c;其主要功能包括以下几点&#xff1a; 补偿无功功率&#xff1a;在电力系统中&#xff0c;感性负载会产生无功功率&#xff0c;导致电网电压降低、功率因数下降。容性负载箱可以产生与感性负载相反的无功功率&#xff…

快速排序(2)——快速排序的优化

因为Hoare的快速排序写起来容易出错&#xff0c;并且有很多地方不太合适&#xff0c;于是&#xff0c;就有了一下几种优化。 基准值的优化 如果我们一直选取一组数据的第一个数据为基准值&#xff0c;如果遇到重复少的值的化&#xff0c;没什么问题。但是如果重复的值比较多的…

【PyQt】11-QTextEdit、QPushButton

文章目录 前言一、文本输入-QTextEdit1.1 代码1.2 运行结果 二、QPushButton2.1.1 按钮上添加文本2.1.2 按键的弹跳效果2.1.3 两个信号可以绑定一个槽。2.1.4 带图标的按键运行结果 2.1.5 按键不可用以及回车默认完整代码2.2 单选按键控件运行结果 2.3 复选框&#xff08;多选框…

WouoUI-PageVersion 一个用于快速构建具有丝滑OLED_UI动画的项目

WouoUI-PageVersion 写在前面 简介&致谢 Air001的TestUI例子的b站的演示视频 Air001的LittleClock例子的b站演示视频: https://www.bilibili.com/video/BV1J6421g7H1/ Stm32的TestUI例子的b站演示视频: https://www.bilibili.com/video/BV1mS421P7CZ/ 所有演示的工程文…

对前端限流操作(Redis版本)4种算法

固定时间窗口算法 固定时间窗口算法也可以叫做简单计数算法。网上有很多都将计数算法单独抽离出来。但是笔者认为计数算法是一种思想&#xff0c;而固定时间窗口算法是他的一种实现包括下面滑动时间窗口算法也是计数算法的一种实现。因为计数如果不和时间进行绑定的话那么失去…

文心一言API使用教程(python版)

注&#xff1a;在做项目的时候需要调用文心一言&#xff0c;发现网上的版本很乱&#xff0c;基本都止步在官方文档的代码上&#xff0c;所以写了一篇博客来记录自己的尝试实现了对文心一言的循环调用和自定义询问&#xff0c;本篇文章不需要有任何对api的基础知识&#xff0c;代…

PNG图片压缩-UPNG.js参数说明及示例

UPNG.js是一个非常轻量且高效的库&#xff0c;用于处理PNG图像。它可以编码和解码PNG图片&#xff0c;同时支持压缩和解压缩功能。特别适合在前端项目中处理图像&#xff0c;尤其是在需要优化图像大小而不牺牲质量时。 UPNG.encode()函数是UPNG.js中用于将图像数据编码成PNG格…

RabbitMQ节点故障的容错方案

RabbitMQ节点故障的容错方案 1. broker启动加载逻辑1.1 日志文件1.2 broker启动流程1.2.1 整体流程1.2.2 数据恢复流程 2. 队列高可用2.1 选主逻辑2.1.1 从节点晋升策略2.1.2 主队列选择策略 2.2 HA切换 3. 疑问和思考3.1 如果一个broker宕机&#xff0c;运行在broker上的队列数…

java发送https请求以及解析调用接口返回来的数据信息

一、返回的Json数据信息格式 { "code":200, "msg":"查询成功", "data":[{ "name":"张三" },{ "name":"李四" }] }二、解析 引用的是 import cn.hutool.json.JSONObject;判断如果code为200则…