暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

YashanDB 23.1个人版 命令行安装步骤(测试环境)

原创 Skye 2023-10-27
578

前言

近期,YashanDB 个人版已经在YCA认证群里开放了下载地址,代表着广大DBA都可以使用该版本的包测试使用。下载地址:download.yashandb.com
image.png

因为是测试环境,所以我的目标是,能快速将数据库环境正常部署起来即可,不一定是最优的,但是是可以正常运行的。

下面是下载安装介质到安装成功的详细操作步骤以及一些常见问题记录。仅供参考。

1. 下载安装介质

1.访问下载网址,可以发现有关系YashanDB个人版的一些安装包,包括数据库和各类驱动。我的测试环境是x86的,所以下载第一个包。
image.png
可以通过下面命令查看自己的测试环境是什么架构的

[root@yashandb1 ~]# uname -m x86_64

2.点击下载需要输入手机号登录。如果没有注册,注意需要点击接受验证码,来注册(当时没有点击,等了半天没有收到验证码,结果需要手动点击…),问题不大。如果注册了的,通过手机号登录就行。
image.png
3.登录上去之后,同意软件协议就可以下载了
image.png
4.坐等下载完成
image.png

2. 安装部署

2.0 主机环境

ip hostname CPU/内存/磁盘
192.168.3.176 yashandb1 4C/32G/500G

2.1 虚拟机准备

准备一台centos7的虚拟机的就可以了,配置的话官方文档写的2C4G50G(CPU/内存/磁盘)。

个人感觉1C2G也能跑,磁盘空间也不用那么大,一个软件包224M,测试的话,估计20G足以。

#操作系统版本 [root@yashandb1 ~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)

2.2 系统参数调整

参考官方文档说的
image.png
在root用户下执行

echo " yashan soft nofile 65536 yashan hard nofile 65536 yashan soft nproc 65536 yashan hard nproc 65536 yashan soft rss unlimited yashan hard rss unlimited yashan soft stack 8192 yashan hard stack 8192 " >> /etc/security/limits.conf

这里的yashan就是后面我们用户创建和维护数据库的系统用户

2.3 创建系统用户及用户组

创建yashan用户(这个系统用户名可以随便起,但是要跟上述的用户名对应好),后面YashanDB的部署在该用户下操作

groupadd YASDBA useradd yashan -G YASDBA echo "yashan"|passwd --stdin yashan #密码为yashan

2.4 解压软件包&安装

2.4.1 想办法将软件包从个人PC机传到虚拟机上。

[yashan@yashandb1 soft]$ pwd /home/yashan/soft [yashan@yashandb1 soft]$ ll total 249684 -rw-r--r--. 1 root root 255673923 Oct 27 16:56 yashandb-personal-23.1.1.100-linux-x86_64.tar.gz

2.4.2 解压

[yashan@yashandb1 soft]$ tar -zxvf yashandb-personal-23.1.1.100-linux-x86_64.tar.gz [yashan@yashandb1 soft]$ ll total 249724 drwxrwxr-x. 6 yashan yashan 70 Oct 19 15:59 admin drwxrwxr-x. 2 yashan yashan 4096 Oct 19 15:59 bin drwxrwxr-x. 2 yashan yashan 152 Oct 19 15:59 conf drwxrwxr-x. 5 yashan yashan 60 Oct 19 15:59 ext -rw-rw-r--. 1 yashan yashan 11632 Oct 19 15:59 gitmoduleversion.dat drwxrwxr-x. 2 yashan yashan 65 Oct 19 15:59 include drwxrwxr-x. 3 yashan yashan 17 Oct 19 15:59 java drwxr-xr-x. 2 yashan yashan 4096 Oct 19 15:59 lib -rw-r-----. 1 yashan yashan 14989 Oct 19 15:38 LICENSE drwxrwxr-x. 3 yashan yashan 21 Oct 19 15:59 plug-in drwxrwxr-x. 2 yashan yashan 170 Oct 19 15:59 scripts -rw-r--r--. 1 root root 255673923 Oct 27 16:56 yashandb-personal-23.1.1.100-linux-x86_64.tar.gz

2.4.3 生成配置文件

[yashan@yashandb1 soft]$ ./bin/yasboot package se gen --cluster yashandb -u yashan -p yashan --ip 192.168.3.176 --port 22 --install-path /home/yashan/yasdb_home --data-path /home/yashan/yasdb_data --begin-port 1688 hostid | group | node_type | node_name | listen_addr | replication_addr | data_path -------------------------------------------------------------------------------------------------------------- host0001 | dbg1 | db | 1-1 | 192.168.3.176:1688 | 192.168.3.176:1689 | /home/yashan/yasdb_data ----------+-------+-----------+-----------+--------------------+--------------------+------------------------- Generate config success

执行完之后,当前目录下将生成yashandb.toml和hosts.toml两个配置文件,yashandb.toml为数据库集群的配置文件,hosts.toml为主机的配置文件。我没改,就按默认的走。
image.png

2.4.4 执行安装(安装数据库软件)

[yashan@yashandb1 soft]$ ./bin/yasboot package install -t hosts.toml -i yashandb-personal-23.1.1.100-linux-x86_64.tar.gz checking install package... install version: yashandb 23.1.1.100 host0001 100% [====================================================================] 3s update host to yasom...

执行完成,就会生成/home/yashan/yasdb_home目录文件,也就是YashanDB的home目录
image.png

2.4.5 创建数据库

[yashan@yashandb1 soft]$ ./bin/yasboot cluster deploy -t yashandb.toml type | uuid | name | hostid | index | status | return_code | progress | cost ------------------------------------------------------------------------------------------------------------ task | 784d9638892510fb | DeployYasdbCluster | - | yashandb | SUCCESS | 0 | 100 | 9 ------+------------------+--------------------+--------+----------+---------+-------------+----------+------ task completed, status: SUCCESS [yashan@yashandb1 soft]$ ./bin/yasboot cluster deploy -t yashandb.toml type | uuid | name | hostid | index | status | return_code | progress | cost ------------------------------------------------------------------------------------------------------------ task | 784d9638892510fb | DeployYasdbCluster | - | yashandb | SUCCESS | 0 | 100 | 9 ------+------------------+--------------------+--------+----------+---------+-------------+----------+------ task completed, status: SUCCESS [yashan@yashandb1 soft]$ ps -ef|grep yasdb yashan 31319 1 0 17:34 ? 00:00:00 /home/yashan/yasdb_home/yashandb/23.1.1.100/bin/yasagent --init -c yashandb -l 192.168.3.176:1676 --host-id host0001 -k 55f9cb1456c3c202 -d yashan 31348 1 0 17:34 ? 00:00:00 /home/yashan/yasdb_home/yashandb/23.1.1.100/bin/yasom --init -c yashandb -l 192.168.3.176:1675 -k 55f9cb1456c3c202 -d yashan 31646 1 17 17:37 ? 00:00:06 /home/yashan/yasdb_home/yashandb/23.1.1.100/bin/yasdb nomount -D /home/yashan/yasdb_data/db-1-1 yashan 31741 30581 0 17:38 pts/0 00:00:00 grep --color=auto yasdb

创建完成,数据库实例就起来了。此时,/home/yashan/yasdb_data目录也会建起来。
image.png

2.4.6 配置环境变量

按照官方文档所说,部署命令成功执行后将会在$YASDB_HOME目录下的conf文件夹中生成<<集群名称>>.bashrc环境变量文件。

咱直接切换到home目录下,把环境变量写入到/.bashrc(这里代表的就是当前系统用户的home目录),source就是使环境变量生效。

[yashan@yashandb1 soft]$ cd /home/yashan/yasdb_home/yashandb/23.1.1.100/conf [yashan@yashandb1 conf]$ cat yashandb.bashrc >> ~/.bashrc [yashan@yashandb1 conf]$ source ~/.bashrc

2.4.7 设置sys用户密码

这个密码不设置是登录不上去的。因为YashanDB不提供系统初始口令。

回到刚刚的解压目录操作。

[yashan@yashandb1 conf]$ cd /home/yashan/soft/ [yashan@yashandb1 soft]$ ./bin/yasboot cluster password set -n 123456 -c yashandb type | uuid | name | hostid | index | status | return_code | progress | cost --------------------------------------------------------------------------------------------------------- task | 1b6f08075f05192a | YasdbPasswordSet | - | yashandb | FAILED | 1 | 100 | 2 ------+------------------+------------------+--------+----------+--------+-------------+----------+------ task completed, status: FAILED retcode: 1 stdout: generate password file stderr: generate yaspwd file failed, YASPW-00002 password complexity failed for SYS user : password must contain at least 8 characters err: [yashan@yashandb1 soft]$ ./bin/yasboot cluster password set -n 12345678 -c yashandb type | uuid | name | hostid | index | status | return_code | progress | cost --------------------------------------------------------------------------------------------------------- task | f9228ceebdd545a1 | YasdbPasswordSet | - | yashandb | FAILED | 1 | 100 | 2 ------+------------------+------------------+--------+----------+--------+-------------+----------+------ task completed, status: FAILED retcode: 1 stdout: generate password file stderr: generate yaspwd file failed, YASPW-00002 password complexity failed for SYS user : password must contain at least 1 letter err: [yashan@yashandb1 soft]$ ./bin/yasboot cluster password set -n Asdf123. -c yashandb type | uuid | name | hostid | index | status | return_code | progress | cost ---------------------------------------------------------------------------------------------------------- task | d98474e573c5cd2a | YasdbPasswordSet | - | yashandb | SUCCESS | 0 | 100 | 2 ------+------------------+------------------+--------+----------+---------+-------------+----------+------ task completed, status: SUCCESS

这里有个雷,设置的密码好像要满足一定的复杂性,但是官方文档没有说明,热心市民已经在文档反馈了~
image.png

2.4.8 登录数据库

[yashan@yashandb1 soft]$ yasql sys/Asdf123. YashanDB SQL Personal Edition Release 23.1.1.100 x86_64 Connected to: YashanDB Server Personal Edition Release 23.1.1.100 x86_64 - X86 64bit Linux SQL> select status,version from v$instance; STATUS VERSION ------------- ---------------------------------------------------------------- OPEN Personal Edition Release 23.1.1.100 x86_64 1 row fetched.

3 易用技巧

发现yasql没有上下翻的功能,连删除也需要加上ctrl,决定使用rlwrap调优一把,方便自己使用。

上传不了附件,IT人总有法子能弄到这个rlwrap包的。

开箱即用,在环境变量里面配置一下即可。
image.png

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论