崖山数据库 YashanDB 23.2.4 个人版安装部署攻略

崖山数据库 YashanDB 23.2.4 个人版安装部署攻略

作者:ShunWah

在运维管理领域,我拥有多年深厚的专业积累,兼具坚实的理论基础与广泛的实践经验。我始终站在技术前沿,致力于推动运维自动化,不懈追求运维效率的最大化。

我精通运维自动化流程,对于OceanBase、MySQL等多种数据库的部署与运维,具备从初始部署到后期维护的全链条管理能力。凭借OceanBase的OBCA和OBCP认证、OpenGauss社区认证结业证书,以及崖山DBCA、亚信AntDBCA、翰高HDCA、GBase 8a | 8c | 8s、Galaxybase GBCA、Neo4j Graph Data Science Certification、NebulaGraph NGCI & NGCP等多项权威认证,我不仅展现了自己的专业技能,也彰显了对技术的深厚热情与执着追求。

在OceanBase & 墨天轮的技术征文大赛中,我凭借卓越的技术实力和独特的见解,多次荣获一、二、三等奖。同时,在OpenGauss第五届、第六届、第七届技术征文大赛,TiDB社区第三届专栏征文大赛,金仓数据库有奖征文活动,以及首批YashanDB「产品体验官」尝鲜征文等活动中,我也屡获殊荣。此外,我还活跃于墨天轮、CSDN等技术平台,经常发布原创技术文章,并多次被首页推荐,积极与业界同仁分享我的运维经验和独到见解。

引言

崖山数据库(YashanDB)作为新一代高性能数据库系统,以其卓越的性能和稳定性赢得了广泛的关注。本文将详细介绍YashanDB 23.2版本的安装部署过程,涵盖安装前准备、服务端安装以及客户端安装,旨在帮助用户快速上手并成功部署该数据库系统。

一、安装前准备

在安装YashanDB之前,需要进行一系列的前期准备工作,以确保安装过程的顺利进行。

1、演示环境如下:

操作系统 CPU 内存

CentOS Linux x86_64 32G

操作系统CPU内存CentOS Linux 7.4x86_6432G[root@worker2 ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@worker2 ~]#

[root@worker2 ~]# free -h

total used free shared buff/cache available

Mem: 31G 1.5G 22G 584K 7.0G 29G

Swap: 0B 0B 0B

[root@worker2 ~]# df -Th

Filesystem Type Size Used Avail Use% Mounted on

/dev/mapper/centos_caip122-root ext4 42G 31G 8.2G 79% /

devtmpfs devtmpfs 16G 0 16G 0% /dev

tmpfs tmpfs 16G 0 16G 0% /dev/shm

tmpfs tmpfs 16G 584K 16G 1% /run

tmpfs tmpfs 16G 0 16G 0% /sys/fs/cgroup

/dev/sda2 ext4 190M 93M 83M 53% /boot

/dev/sdb1 xfs 100G 22G 78G 22% /data

/dev/sdc1 xfs 100G 33M 100G 1% /redo

2、服务器准备

操作系统:本文示例环境为CentOS Linux x86_64,建议使用相同或兼容的操作系统版本。

硬件配置:根据个人开发环境的最小配置要求,服务器应具备足够的CPU和内存资源。例如,本文示例环境配置为32G内存。

项目描述操作系统CentOS 7.6,kylin V10CPUX86_64,ARM64 2C内存4G硬盘50G文件系统ext4或xfs网络千兆以太网,支持TCP和UDP链接3、创建安装用户

为了安全和管理的便利性,建议创建一个新用户来安装YashanDB数据库。

切换至root用户,并执行如下命令创建新用户yashan:

[root@worker2 ~]# useradd yashan

[root@worker2 ~]#

4、配置sudo免密,以便在安装过程中无需频繁输入密码。

首先,请打开/etc/sudoers文件,通常情况下,即使root用户都无该文件的编辑权限,此时需要先对root授权。

[root@worker2 ~]# cd /etc

[root@worker2 etc]# ll sudoers

-r--r----- 1 root root 4028 May 24 2024 sudoers

[root@worker2 etc]# chmod +w sudoers

[root@worker2 etc]# vim /etc/sudoers

在文件的最后添加如下内容后保存退出:

yashan ALL=(ALL)NOPASSWD:ALL

最后,如该文件初始为只读,恢复其属性:

[root@worker2 etc]# chmod -w sudoers

[root@worker2 etc]#

5、将yashan用户加入到YASDBA用户组。

[root@worker2 etc]# groupadd YASDBA

[root@worker2 etc]# usermod -a -G YASDBA yashan

[root@worker2 etc]#

6、执行如下命令为用户yashan指定密码:

[root@worker2 etc]# passwd yashan

Changing password for user yashan.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

[root@worker2 etc]#

7、操作系统参数调整

根据YashanDB数据库的资源限制要求,调整操作系统的相关参数。

下表为YashanDB数据库所需的资源限制值的最小要求,请根据下表所示将资源限制值调整为大于或等于最小要求的值。

资源项描述推荐值open files文件句柄1048576max user processes最大用户线程数1048576max memory size最大内存限制unlimitedstack size堆栈大小81927.1 查看系统的所有资源限制值

可以使用ulimit命令查看当前系统的资源限制值,并根据需要进行调整。

[root@worker2 etc]# ulimit -a

core file size (blocks, -c) 0

data seg size (kbytes, -d) unlimited

scheduling priority (-e) 0

file size (blocks, -f) unlimited

pending signals (-i) 128553

max locked memory (kbytes, -l) unlimited

max memory size (kbytes, -m) unlimited

open files (-n) 65536

pipe size (512 bytes, -p) 8

POSIX message queues (bytes, -q) 819200

real-time priority (-r) 0

stack size (kbytes, -s) 8192

cpu time (seconds, -t) unlimited

max user processes (-u) 32000

virtual memory (kbytes, -v) unlimited

file locks (-x) unlimited

[root@worker2 etc]#

操作系统参数调整有如下两种方式,请根据自身需求选择其一进行配置:

7.2 配置参数临时生效

执行如下命令使新配置的资源限制值临时生效,重启操作系统后无效:

# ulimit -n 1048576

# ulimit -u 1048576

# ulimit -m unlimited

# ulimit -s 8192

7.3 配置参数永久生效

参数调整可以通过临时修改或永久写入/etc/security/limits.conf文件来实现。

执行如下命令将参数写入/etc/security/limits.conf文件,重启操作系统后参数永久生效:

[root@worker2 etc]# 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

[root@worker2 etc]#

7.4 重启服务器

[root@worker2 etc]# reboot

PolicyKit daemon disconnected from the bus.

We are no longer a registered authentication agent.

Socket error Event: 32 Error: 10053.

Connection closing...Socket close.

Connection closed by foreign host.

8、软件包准备

前往YashanDB的官方下载中心,获取对应版本的数据库软件包。

本文示例使用的 YashanDB 个人版 软件包名称为yashandb-personal-23.2.4.100-linux-x86_64.tar.gz。

个人版:YashanDB面向个人用户推出的免费试用版本,除不支持多模数据类型、高级安全能力、数据库集群等企业级功能,该版本包含YashanDB数据库所有基础核心能力,支持单机主备部署形态,配套开发者工具,供个人用户或开发者用于学习、测试、开发用途。

二、YashanDB服务端安装

1、创建安装目录

在服务器上创建一个用于存放YashanDB安装包的目录,例如install。

1.1 执行如下命令切换至yashan用户:

[root@worker2 ~]# su yashan

[yashan@worker2 root]$ cd ~

[yashan@worker2 ~]$

1.2执行如下命令创建目录install:

[yashan@worker2 ~]$ mkdir install

2、获取并解压安装包

执行如下命令进入目录install,此时用户所在路径为/home/yashan/install:

[yashan@worker2 ~]$ cd install/

[yashan@worker2 install]$ pwd

/home/yashan/install

[yashan@worker2 install]$

2.1 将下载好的YashanDB安装包上传至install目录中。

2.2 使用tar命令解压安装包,并查看解压后的文件结构。

[yashan@worker2 install]$ ls

yashandb-personal-23.2.4.100-linux-x86_64.tar.gz

[yashan@worker2 install]$ tar -zxf yashandb-personal-23.2.4.100-linux-x86_64.tar.gz

[yashan@worker2 install]$ ll

total 185444

drwxrwxr-x 6 yashan yashan 4096 Sep 4 17:28 admin

drwxrwxr-x 2 yashan yashan 4096 Sep 4 17:28 bin

drwxrwxr-x 2 yashan yashan 4096 Sep 4 17:28 conf

drwxrwxr-x 4 yashan yashan 4096 Sep 4 17:28 ext

-rw-rw-r-- 1 yashan yashan 10701 Sep 4 17:28 gitmoduleversion.dat

drwxrwxr-x 2 yashan yashan 4096 Sep 4 17:28 include

drwxrwxr-x 3 yashan yashan 4096 Sep 4 17:28 java

drwxrwxr-x 2 yashan yashan 4096 Sep 4 17:28 lib

-rw-r----- 1 yashan yashan 14989 Sep 4 17:28 LICENSE

drwxrwxr-x 3 yashan yashan 4096 Sep 4 17:28 plug-in

drwxrwxr-x 2 yashan yashan 4096 Sep 4 17:28 scripts

-rw-r--r-- 1 root root 189824423 Dec 6 15:49 yashandb-personal-23.2.4.100-linux-x86_64.tar.gz

[yashan@worker2 install]$

3、生成安装参数文件

执行yasboot命令生成安装参数文件。

执行如下命令生成安装参数文件,ssh登录密码为创建yashan用户时指定的密码,请将–ip参数后面的值更换成安装服务端所在服务器的IP地址(使用127.0.0.1会导致客户端无法连接至服务端):

[yashan@worker2 install]$ ./bin/yasboot package se gen --cluster yashandb -u yashan -p 密码 --ip 172.10.1.122 --port 22 --install-path /data/yashan/yasdb_home --data-path /data/yashan/yasdb_data --begin-port 1688

host host0001 openssl version: OpenSSL 1.1.1w 11 Sep 2023

OpenSSL version is 1.1.1 or greater

hostid | group | node_type | node_name | listen_addr | replication_addr | data_path

------------------------------------------------------------------------------------------------------------

host0001 | dbg1 | db | 1-1 | 172.10.1.122:1688 | 172.10.1.122:1689 | /data/yashan/yasdb_data

----------+-------+-----------+-----------+-------------------+-------------------+-------------------------

Generate config completed

[yashan@worker2 install]$

在生成过程中,需要指定服务器的IP地址、SSH登录密码、安装路径和数据路径等关键信息。

4、执行安装

执行如下命令安装YashanDB数据库,如实际安装数据库版本与示例中版本不同,请将-i参数后的软件包名称更改成实际名称:

[yashan@worker2 install]$

[yashan@worker2 install]$ ./bin/yasboot package install -t hosts.toml -i yashandb-personal-23.2.4.100-linux-x86_64.tar.gz

host host0001 openssl version: OpenSSL 1.1.1w 11 Sep 2023

OpenSSL version is 1.1.1 or greater

checking install package...

install version: yashandb 23.2.4.100

host0001 100% [====================================================================] 3s

update host to yasom...

[yashan@worker2 install]$

根据生成的参数文件,执行yasboot命令进行YashanDB数据库的安装。

安装过程中,系统会自动配置数据库环境并创建必要的目录和文件。此处创建目录报错了

[yashan@worker2 install]$ ./bin/yasboot package install -t hosts.toml -i yashandb-personal-23.2.4.100-linux-x86_64.tar.gz

host host0001 openssl version: OpenSSL 1.1.1w 11 Sep 2023

OpenSSL version is 1.1.1 or greater

checking install package...

install version: yashandb 23.2.4.100

host0001 0% [--------------------------------------------------------------------] ---

host0001 failed, 102, 创建远程文件夹失败:, Process exited with status 1:mkdir: cannot create directory ‘/data/yashan’: Permission denied

package install failed

解决办法创建目录重新安装

**目录加执行权限**

[root@worker2 yashan]# chown -R yashan /data/yashan/

**或重新创建目录**

[yashan@worker2 install]$ sudo mkdir /data/yashan

[yashan@worker2 install]$ sudo mkdir /data/yashan/yasdb_home

[yashan@worker2 install]$ sudo mkdir /data/yashan/yasdb_data

[yashan@worker2 install]$

5、执行部署

安装完成后,执行yasboot cluster deploy命令进行数据库的部署。

[yashan@worker2 install]$

[yashan@worker2 install]$ ./bin/yasboot cluster deploy -t yashandb.toml

type | uuid | name | hostid | index | status | return_code | progress | cost

------------------------------------------------------------------------------------------------------------

task | 3bddeff0501ba04d | DeployYasdbCluster | - | yashandb | SUCCESS | 0 | 100 | 8

------+------------------+--------------------+--------+----------+---------+-------------+----------+------

task completed, status: SUCCESS

[yashan@worker2 install]$

6、配置环境变量:

[yashan@worker2 install]$ cd /data/yashan/yasdb_home/yashandb/23.2.4.100/conf/

[yashan@worker2 conf]$ ls

database_options.json profile.toml sqlhtml.template yasreport.template yfs_options.json

monit sqlcollect.toml yashandb.bashrc ycs_options.json

[yashan@worker2 conf]$ cat yashandb.bashrc >> ~/.bashrc

[yashan@worker2 conf]$ source ~/.bashrc

[yashan@worker2 conf]$

如~/.bashrc中已存在YashanDB相关的环境变量,将其清除

执行如下命令设置YashanDB数据库中sys用户的密码(命令中的newpasswd请替换为实际密码):

[yashan@worker2 conf]$ yasboot cluster password set -n ******* -c yashandb

type | uuid | name | hostid | index | status | return_code | progress | cost

----------------------------------------------------------------------------------------------------------

task | e6e16ce480077220 | YasdbPasswordSet | - | yashandb | SUCCESS | 0 | 100 | 2

------+------------------+------------------+--------+----------+---------+-------------+----------+------

task completed, status: SUCCESS

[yashan@worker2 conf]$

7、查看YashanDB数据库状态

执行如下命令查看YashanDB数据库状态,如显示出数据库状态信息即为安装成功:

[yashan@worker2 conf]$ yasboot cluster status -c yashandb

host_id | node_type | nodeid | pid

---------------------------------------

host0001 | db | 1-1:1 | 56983

----------+-----------+--------+-------

[yashan@worker2 conf]$

8、查看YashanDB数据库状态

执行如下命令连接数据库(命令中的newpasswd请替换为实际密码):

[yashan@worker2 conf]$ yasql sys/sys@172.10.1.122:1688

YashanDB SQL Personal Edition Release 23.2.4.100 x86_64

YAS-02143 invalid username/password, login denied

please input user name: sys

please input password:

Connected to:

YashanDB Server Personal Edition Release 23.2.4.100 x86_64 - X86 64bit Linux

SQL>

部署过程中,系统会检查安装环境的完整性,并启动数据库服务。

三、YashanDB客户端安装

1、创建安装用户

在服务端所在服务器的另一用户中创建用于安装YashanDB客户端的用户。

1.1 切换至root用户,并执行如下命令创建新用户yasdb:

[root@worker2 ~]# useradd yasdb

[root@worker2 ~]#

1.2 执行如下命令为用户yasdb指定密码:

[root@worker2 ~]# passwd yasdb

Changing password for user yasdb.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

[root@worker2 ~]#

2、创建安装目录

为客户端安装包创建一个存放目录,例如yashandb_client。

2.1 执行如下命令切换至yasdb用户:

[root@worker2 ~]# su yasdb

[yasdb@worker2 root]$ cd ~

[yasdb@worker2 ~]$

2.2 执行如下命令创建目录 yashandb_client :

[yasdb@worker2 ~]$ mkdir yashandb_client

[yasdb@worker2 ~]$

3、解压安装包

3.1 将下载好的YashanDB客户端安装包上传至yashandb_client目录中。

3.2 使用tar命令解压安装包,并查看解压后的文件结构。

执行如下命令进入目录 yashandb_client,此时用户所在路径为/home/yasdb/yashandb_client:

[yasdb@worker2 ~]$ cd yashandb_client/

[yasdb@worker2 yashandb_client]$ pwd

/home/yasdb/yashandb_client

[yasdb@worker2 yashandb_client]$

3.3 将软件包上传至 yashandb_client 目录中。

执行如下命令解压软件包,并查看解压后目录中所有文件,解压命令后的软件包名称须更改为实际使用的软件包名称:

[yasdb@worker2 yashandb_client]$ ls

yashandb-client-23.3.1.100-linux-x86_64.tar.gz

[yasdb@worker2 yashandb_client]$ tar -zxf yashandb-client-23.3.1.100-linux-x86_64.tar.gz

[yasdb@worker2 yashandb_client]$ ll

total 9180

drwxrwxr-x 2 yasdb yasdb 4096 Sep 30 14:40 bin

drwxrwxr-x 2 yasdb yasdb 4096 Sep 30 14:40 include

drwxrwxr-x 2 yasdb yasdb 4096 Sep 30 14:40 lib

-rw-r--r-- 1 root root 9383139 Dec 6 17:17 yashandb-client-23.3.1.100-linux-x86_64.tar.gz

[yasdb@worker2 yashandb_client]$

配置环境变量

根据需要配置环境变量,以便在命令行中方便地调用YashanDB客户端工具。

执行如下命令使用vi编辑器打开文件~/.bashrc:

[yasdb@worker2 yashandb_client]$ vi ~/.bashrc

通过i键打开输入模式,并将如下内容输入至文件中:

export PATH=$PATH:/home/yasdb/yashandb_client/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/yasdb/yashandb_client/lib

通过Esc键退出输入模式,然后输入:wq保存并关闭文件:

执行如下命令生效环境变量:

[yasdb@worker2 yashandb_client]$ source ~/.bashrc

[yasdb@worker2 yashandb_client]$

连接YashanDB服务端

使用yasql工具连接至YashanDB服务端。

在连接过程中,需要指定服务端的IP地址、端口号以及sys用户的密码。

执行如下命令连接至YashanDB服务端,请将password更改成设置的sys用户密码,ip:port更换成服务端IP地址及端口号:

[yasdb@worker2 yashandb_client]$ yasql sys/sys@172.10.1.122:1688

YashanDB SQL Enterprise Edition Release 23.3.1.100 x86_64

YAS-02143 invalid username/password, login denied

please input user name: sys

please input password:

Connected to:

YashanDB Server Personal Edition Release 23.2.4.100 x86_64 - X86 64bit Linux

SQL>

服务端配置调整(如需要)

如果服务端的监听地址被修改为非本地地址,则需要确保客户端能够访问该地址。

如需修改监听地址,可以重启数据库服务端并指定新的监听地址。

如部署服务端时没有对监听地址参数进行修改,则服务端的监听地址默认为127.0.0.1:1688,即本地地址,此时仅支持同服务器不同用户下安装的YashanDB客户端进行连接,如位于不同服务器则无法连接至服务端,需要对服务端的监听地址进行修改。

于数据库服务端执行如下SQL命令查看监听地址参数值:

SQL>

SQL> show parameter LISTEN_ADDR;

NAME VALUE

---------------------------------------------------------------- ----------------------------------------------------------------

LISTEN_ADDR 172.10.1.122:1688

1 row fetched.

SQL>

如需要执行如下SQL命令更改监听地址,请将其修改为服务端所在IP地址及端口号:

ALTER SYSTEM SET LISTEN_ADDR = ip:port SCOPE=SPFILE;

Copied!

执行如下命令重启数据库服务端:

SQL>

SQL> SHUTDOWN;

Succeed.

SQL> exit

[yasdb@worker2 yashandb_client]$ yasboot cluster restart -c yashandb

四、YashanDB服务端和客户端的区别

YashanDB服务端和客户端安装的主要差别在于它们的目的、功能以及安装过程中的具体步骤。以下是两者之间的详细区别:

1、YashanDB 服务端安装

1.1 目的

提供数据库服务:服务端是整个数据库系统的核心,负责数据的存储、管理和处理请求。它为客户端应用程序提供了访问数据库的能力。

1.2 功能

数据存储与管理:处理数据的插入、查询、更新和删除操作。

并发控制:管理多个用户或应用对同一数据的同时访问。

事务管理:确保数据操作的一致性和完整性。

性能优化:通过索引、缓存等机制提升查询效率。

备份与恢复:定期进行数据备份,并能在故障时快速恢复。

2、YashanDB 客户端安装

2.1 目的

• 连接和服务交互:

客户端用于连接到YashanDB服务端,执行SQL语句或API调用来操作数据。

2.2 功能

• 用户界面或命令行工具:提供图形化界面或CLI供开发者和管理员操作数据库。

• 开发接口:支持多种编程语言的驱动程序,使应用程序能够与数据库交互。

• 结果展示:显示查询结果,帮助用户分析和理解数据。

简而言之,服务端安装关注于搭建一个可以独立运作的数据库系统,而客户端安装则是为了方便用户和开发者与这个系统进行交互。服务端通常部署在专用的服务器上,而客户端可以在任何需要访问数据库的位置安装,包括开发者的本地机器或是生产环境的应用服务器。两者都至关重要,共同构成了完整的数据库解决方案。

总结

本文详细介绍了YashanDB 23.2版本的安装部署过程,包括安装前准备、服务端安装以及客户端安装。通过遵循本文的步骤,用户可以快速上手并成功部署YashanDB数据库系统。在实际应用中,用户还可以根据具体需求进行进一步的配置和优化,以提高数据库的性能和稳定性。

此过程中,务必仔细阅读官方文档,严格遵守指导方针,以确保安装过程顺利进行。还有,实际安装时应参考最新的官方文档,因为软件更新可能会引入新的特性和变化。如果您遇到任何问题,不要犹豫,联系技术支持团队获取帮助。

相关推荐