【YashanDB认证】yashandb23.3.1 个人版单机部署安装实践
YCA报名链接如下:
YashanDB|崖山数据库系统YashanDB学习中心-YCA认证详情
目前免费
主要参考文档:
单机(主备)部署 | YashanDB Doc
另外还参考摩天轮文章:
YashanDB 23.2.9.101 企业版安装步骤抢先看! - 墨天轮
需要说明的是 23.3.1版本目前还需依赖openssl 1.1.1 ,所以需要进行升级。
升级ssl的文章我参考了下面文章
https://zhuanlan.zhihu.com/p/693904453
下面官网链接给出了23.3安装需要的一些依赖,包括lz4压缩等:
依赖项准备 | YashanDB Doc
下面我正式开始我的折腾过程:
下载安装介质
首先从yashandb官网
YashanDB 下载中心下载安装介质,这里我下载的是个人版23.3版本,如下图所示:

顺便打开在线文档,找到安装一节,发现对应的要求为:

本文采用超融合的虚拟机 4c 16g 500GB数据盘,操作系统为centos 7.8 ,文件系统为XFS,网卡为虚拟千兆网卡,如下图所示


![]()
上面已经跑了个小实例pg 17,不过应该不影响本次yashan数据库的部署。根据安装文档继续下一步
创建安装用户
建议创建一个新用户安装YashanDB数据库。
-
切换至root用户,并执行如下命令创建新用户yashan:
$ su root # useradd yashan
![]()
配置sudo免密。
首先,请打开/etc/sudoers文件,通常情况下,即使root用户都无该文件的编辑权限,此时需要先对root授权。
# cd /etc
# ll sudoers
# chmod +w sudoers
# vi /etc/sudoers
在文件的最后添加如下内容后保存退出:
yashan ALL=(ALL)NOPASSWD:ALL
如下图所示:

最后,如该文件初始为只读,恢复其属性:
# chmod -w sudoers
将yashan用户加入到YASDBA用户组。
# groupadd YASDBA
# usermod -a -G YASDBA yashan
具体操作如下:
执行如下命令为用户yashan指定密码:此处假设设置为Yashan*123
以下参数来自官方文档:
作系统参数调整
下表为YashanDB数据库所需的资源限制值的最小要求,请根据下表所示将资源限制值调整为大于或等于最小要求的值。
| 资源项 | 描述 | 推荐值 |
|---|---|---|
| open files | 文件句柄 | 1048576 |
| max user processes | 最大用户线程数 | 1048576 |
| max memory size | 最大内存限制 | unlimited |
| stack size | 堆栈大小 | 8192 |
执行如下命令查看系统的所有资源限制值:

操作系统参数调整有如下两种方式,请根据自身需求选择其一进行配置:
-
配置参数临时生效
执行如下命令使新配置的资源限制值临时生效,重启操作系统后无效:
# ulimit -n 1048576 # ulimit -u 1048576 # ulimit -m unlimited # ulimit -s 8192 -
配置参数永久生效,此处使用永久生效
执行如下命令将参数写入
/etc/security/limits.conf文件,重启操作系统后参数永久生效:echo "
* soft nofile 1048576
* hard nofile 1048576
* soft nproc 1048576
* hard nproc 1048576
* soft rss unlimited
* hard rss unlimited
* soft stack 8192
* hard stack 8192
" >> /etc/security/limits.conf
-
本机文件如图
-
重启操作系统。
正式安装:
上传安装介质至服务器

创建安装目录
-
执行如下命令切换至yashan用户:
-
su yashan
-
cd
-
mkdir install
切换回root用户 ,复制安装包至/home/yashan/install/
cp yashandb-personal-23.3.1.100-linux-x86_64.tar.gz /home/yashan/install/
切换回yashan用户
su yashan
cd /home/yashan/install
解压缩
tar -xzvf yashandb-personal-23.3.1.100-linux-x86_64.tar.gz
ll
根据实际情况生成配置文件
./bin/yasboot package se gen --cluster yashandb -u yashan -p Yashan*123 --ip 10.89.136.26 --port 29022 --install-path /data460/yashan/yasdb_home --data-path /data460/yashan/yasdb_data --begin-port 1688

执行安装
./bin/yasboot package install -t hosts.toml -i yashandb-personal-23.3.1.100-linux-x86_64.tar.gz

提示没有权限创建文件夹,这个官方文档里面没有说明需要提前创建文件夹。
切换root用户创建文件夹,并授权
![]()
再切换到yashan用户进行安装

执行部署
./bin/yasboot cluster deploy -t yashandb.toml
报错

咨询技术专家可能是如下问题,执行对应命令试一下。

这两个文件都存在


清除原先链接关系,重新建立软链
mv /lib64/libssl.so /lib64/libssl.so.old
mv /lib64/libcrypto.so /lib64/libcrypto.so.old
在执行:
ln -s /lib64/libssl.so.10 /lib64/libssl.so
ln -s /lib64/libcrypto.so.10 /lib64/libcrypto.so
再次查看
ldconfig -p | grep -E "libcrypto.so|libssl.so"

之后尝试还是失败,安装时提示要升级ssl

咨询了一下崖山DB的老师,发现这个版本还是需要依赖ssl特定版本的,还未进行优化,因此决定升级openssl,如果不升级的话,可以安装23.2版本试一下。

先把环境恢复原状:
[root@ecs-51s-lr-cqwjw-testpoc-005 bin]# rm /lib64/libssl.so /lib64/libcrypto.so
rm: remove symbolic link ‘/lib64/libssl.so’? y
rm: remove symbolic link ‘/lib64/libcrypto.so’? y
[root@ecs-51s-lr-cqwjw-testpoc-005 bin]# mv /lib64/libssl.so.old /lib64/libssl.so
[root@ecs-51s-lr-cqwjw-testpoc-005 bin]# mv /lib64/libcrypto.so.old /lib64/libcrypto.so
[root@ecs-51s-lr-cqwjw-testpoc-005 bin]# ldconfig

升级openssl
升级到1.1.1w ,担心3版本不兼容,还是根据要求升级到1.1.1w,具体如下

下载新版本,上传服务器,并解压
tar -xzvf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
备份老版本ssl
# 为了避免出现旧版本被删除而新版本安装不成功的情况,需要对旧版本进行备份
[root@ecs-51s-lr-cqwjw-testpoc-005 openssl-1.1.1w]# mv /usr/bin/openssl /usr/bin/openssl.old
[root@ecs-51s-lr-cqwjw-testpoc-005 openssl-1.1.1w]# mv /usr/include/openssl /usr/include/openssl.old
安装
# 配置,--prefix为安装路径
./config --prefix=/usr/local/openssl
make&&make install

5、链接新版本openssl
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
#更新动态链接库
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
查看版本
openssl version

升级openssl成功,我们可以继续安装yashandb了。
切换到yashan用户
su yashan
cd /home/yashan/install/
继续部署
./bin/yasboot cluster deploy -t yashandb.toml

提示错误,进行清理。
./bin/yasboot cluster clean -c yashandb --purge

重新进行部署:
./bin/yasboot cluster deploy -t yashandb.toml
部署成功,如下图

配置环境变量
执行如下命令,生效环境变量。
cd /data460/yashan/yasdb_home/yashandb/23.3.1.100/conf
cat yashandb.bashrc >> ~/.bashrc
source ~/.bashrc
看到脚本中提到rlwrap ,建议安装一下,这样yasql的命令行会更智能

切换到root用户 安装rlwrap
yum install rlwrap -y
检查安装结果
若连接报错或执行SQL语句报错,请根据错误提示信息检查安装步骤,或咨询我们的技术支持。
- YashanDB不提供系统初始口令,需使用yasboot工具设置数据库sys用户的密码,以安装用户登录到服务器并执行如下命令设置密码,其中Yashan*123为需要设置的密码,按需修改。yasboot cluster password set -n Yashan*123 -c yashandb

- 执行如下命令,查看数据库状态。
- yasboot cluster status -c yashandb -d

使用yasql工具连接数据库,查看实例状态。
yasql sys/Yashan*123@10.89.136.26:1688


(可选)创建数据库用户并赋权,更多操作请查阅用户管理。

Note:
如需开启monit功能,可参考守护进程完成相关配置。
相关文章:
【YashanDB认证】yashandb23.3.1 个人版单机部署安装实践
YCA报名链接如下: YashanDB|崖山数据库系统YashanDB学习中心-YCA认证详情 目前免费 主要参考文档: 单机(主备)部署 | YashanDB Doc 另外还参考摩天轮文章: YashanDB 23.2.9.101 企业版安装步骤抢先看! - 墨天轮 …...
安全渗透测试的全面解析与实践
引言 随着网络安全威胁的日益增加,企业和组织对自身系统的安全性提出了更高的要求。安全渗透测试(Penetration Testing,简称渗透测试)作为主动发现和修复系统安全漏洞的重要手段,已成为安全防护体系中的关键环节。本文…...
通俗易懂的分类算法之决策树详解
通俗易懂的分类算法之决策树详解 1. 什么是决策树? 决策树是一种像树一样的结构,用来帮助我们对数据进行分类或预测。它的每个节点代表一个问题或判断条件,每个分支代表一个可能的答案,最后的叶子节点就是最终的分类结果。 举个…...
【OpenCV C++】以时间命名存图,自动检查存储目录,若不存在自动创建, 按下空格、回车、Q、S自动存图
文章目录 // 保存图像的函数 void saveImage(const cv::Mat& frame) {// 生成唯一文件名auto now = std::chrono::system_clock::...
post get 给后端传参数
post 方式一 : data: params 作为请求体(Request Body)传递: 你已经展示了这种方式,通过data字段直接传递一个对象或数组。这种方式通常用于传递复杂的数据结构。dowmfrom: function (params) { return request({ u…...
数据仓库的特点
数据仓库的主要特点可以概括为:面向主题、集成性、非易失性、时变性、高性能和可扩展性、支持复杂查询和分析、分层架构以及数据质量管理。 1. 面向主题(Subject-Oriented) 数据仓库是面向主题的,而不是面向事务的。这意味着数据…...
任务9:交换机基础及配置
CSDN 原创主页:不羁https://blog.csdn.net/2303_76492156?typeblog 一、交换机基础 交换机的概念:交换机是一种网络设备,用于连接多台计算机或网络设备,实现数据包在局域网内的快速交换。交换机基于MAC地址来转发数据包&#x…...
ArcGIS操作:07 绘制矢量shp面
1、点击目录 2、右侧显示目录 3、选择要存储的文件夹,新建shp 4、定义名称、要素类型、坐标系 5、点击开始编辑 6、点击创建要素 7、右侧选择图层、创建面 8、开始绘制,双击任意位置结束绘制...
【AI深度学习基础】NumPy完全指南终极篇:核心功能与工程实践(含完整代码)
NumPy系列文章 入门篇进阶篇终极篇 一、引言 在完成NumPy入门篇的基础认知与进阶篇的特性探索后,我们终于迎来这场终极技术深潜。本文不再停留于API使用层面,而是直指NumPy的架构内核与高性能工程实践的本质矛盾。作为Python科学计算领域的基石&#…...
Golang语法特性总结
1.认识Golang代码特性 package main //1.包含main函数的文件就是一个main包--当前程序的包名// import "fmt" // import "time" import("fmt""time" )//3.同时包含多个包 4.强制代码风格:函数的 { 一定和函数名在同一行,否…...
Java并发编程利器CyclicBarrier:从使用到源码深度解析,掌握多线程同步的艺术
引言 在多线程编程中,你是否遇到过这样的需求? 多线程分阶段处理数据,每个阶段完成后等待其他线程 并行计算任务需要多次同步汇总结果 模拟高并发场景下多个线程同时触发操作 CyclicBarrier(循环屏障)正是解决这类问题的神器!与CountDownLatch不同,它支持重复使用和自定…...
1.从0搭建前端Vue项目工程
我们通过vue官方提供的脚手架Vue-cli来快速生成一个Vue的项目模板。 **注意:**需要先安装NodeJS,然后才能安装Vue-cli。 环境准备好了,接下来我们需要通过Vue-cli创建一个vue项目,然后再学习一下vue项目的目录结构。Vue-cli提供了…...
3D Web轻量化引擎HOOPS Communicator的核心优势解析:高性能可视化与灵活部署!
在当今数字化时代,工业领域的工程应用不断向基于Web的方向发展,而HOOPS Web平台作为一款专为构建此类工程应用程序打造的软件开发套件集,正发挥着日益重要的作用,成为构建强大工程应用的基石。 一、HOOPS Web平台概述 HOOPS Web…...
DeepSeek集成到VScode工具,让编程更高效
DeepSeek与VScode的强强联合,为编程效率树立了新标杆。 DeepSeek,一款卓越的代码搜索引擎,以其精准的索引和高速的检索能力,助力开发者在浩瀚的代码海洋中迅速定位关键信息。 集成至VScode后,开发者无需离开熟悉的编辑…...
Excel-to-JSON v2.0.0发布,可以在Excel内部,把Excel表格转换成JSON,嵌套的JSON也能转
本文是Excel-to-JSON插件的官方文档 https://excel-to-json.wtsolutions.cn 简化浓缩翻译的中文版,仅供参考。详细的还请查看官方文档。 在数据处理和交换的过程中,将Excel文件转换为JSON格式是一项常见需求。Excel-to-JSON作为一款Microsoft Excel插件…...
深度探索:美团开源DeepSeek R1 INT8量化技术的性能革命
摘要 美团搜索推荐机器学习团队近日发布了一项重要开源成果——DeepSeek R1的INT8无损满血版。该模型部署在A100硬件上,采用INT8量化技术,在保持BF16精度的同时,实现了高达50%的吞吐量提升。这一突破使得老旧显卡无需更换硬件即可获得显著性能…...
gn学习存档
以下答案均由deepseek提供,仅作学习存档。 1. 举例说明action和action_foreach区别 场景设定 假设需要处理一组文件: 输入文件:src/data/file1.txt, src/data/file2.txt, src/data/file3.txt处理逻辑:将每个 .txt 文件转换为 …...
扩展Windows磁盘的技术型教学文章
在Windows操作系统中,扩展磁盘是一项常见的任务,特别是当您需要增加存储空间以容纳更多数据时。以下是一份技术性的教学文章,介绍如何在Windows系统中扩展磁盘: #### 步骤一:打开磁盘管理器 1. 按下 Win X 组合键&a…...
【每日学点HarmonyOS Next知识】web滚动、事件回调、selectable属性、监听H5内部router、Grid嵌套时高度设置
【每日学点HarmonyOS Next知识】web滚动、事件回调、selectable属性、监听H5内部router、Grid嵌套时高度设置 1、HarmonyOS WebView加载url无法滚动? scroll 里面嵌套webView,demo参考: // xxx.ets import web_webview from ohos.web.webv…...
(十 四)趣学设计模式 之 策略模式!
目录 一、 啥是策略模式?二、 为什么要用策略模式?三、 策略模式的实现方式四、 策略模式的优缺点五、 策略模式的应用场景六、 总结 🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式,可以多多支…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...
HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...
