【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…...
(十 四)趣学设计模式 之 策略模式!
目录 一、 啥是策略模式?二、 为什么要用策略模式?三、 策略模式的实现方式四、 策略模式的优缺点五、 策略模式的应用场景六、 总结 🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式,可以多多支…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
