暂无图片
暂无图片
9
暂无图片
暂无图片
暂无图片

「YashanDB个人版体验」YashanDB 个人版安装初体验

原创 严少安 2023-10-31
1355

图片.png

从 YCA 第二期结课到现在已经过去三个月,当时学习课程时,并没有提供个人版安装包,只是提供了一个有时效性的远程访问端口,可以使用的功能也很局限,更多是理论上的感知和了解。

现在第四期的 YCA 培训已经开始,并提供了 YashanDB 个人版,可以自行下载、安装、测试,便利了很多。

YashanDB 的安装

安装包

从 YashanDB 官网找到下载页面: https://download.yashandb.com/download

这里选择【YashanDB 个人版】,安装包为:Yashandb Personal 23.1 for Linux x86-64

图片.png

下载后,解压缩:

[root@rocky9 yashan]# ls yashandb-personal-23.1.1.100-linux-x86_64.tar.gz [root@rocky9 yashan]# tar zxf yashandb-personal-23.1.1.100-linux-x86_64.tar.gz [root@rocky9 yashan]# ls admin bin conf ext gitmoduleversion.dat include java lib LICENSE plug-in scripts yashandb-personal-23.1.1.100-linux-x86_64.tar.gz [root@rocky9 yashan]# du -sh ./* -c 11M ./admin 62M ./bin 720K ./conf 26M ./ext 12K ./gitmoduleversion.dat 36K ./include 8.0K ./java 602M ./lib 16K ./LICENSE 980K ./plug-in 32K ./scripts 244M ./yashandb-personal-23.1.1.100-linux-x86_64.tar.gz 944M total [root@rocky9 yashan]#

在 scripts 路径下,提供了安装和初始化脚本,

[root@rocky9 yashan]$ ll scripts/ total 32 -rwxrwxr-x. 1 shawnyan shawnyan 3296 Oct 19 15:59 createResourceCgroup.sh -rwxrwxr-x. 1 shawnyan shawnyan 2934 Oct 19 15:59 initDB.sh -rwxrwxr-x. 1 shawnyan shawnyan 2104 Oct 19 15:59 initStandby.sh -rw-rw-r--. 1 shawnyan shawnyan 411 Oct 19 15:59 install.ini -rwxrwxr-x. 1 shawnyan shawnyan 1412 Oct 19 15:59 install.sh -rwxrwxr-x. 1 shawnyan shawnyan 1157 Oct 19 15:59 startup.sh -rwxrwxr-x. 1 shawnyan shawnyan 1157 Oct 19 15:59 stop.sh -rwxrwxr-x. 1 shawnyan shawnyan 667 Oct 19 15:59 yascheckStart.sh

安装、初始化

安装的配置文件使用默认的即可,无需修改,需要注意的是,YashanDB 默认监听端口:1688

分别执行安装脚本、初始化脚本:

[root@rocky9 yashan]# ./scripts/install.sh [root@rocky9 yashan]# ./scripts/initDB.sh process started! Database open succeed !

此时,数据库已经启动,可以看到 1688 端口已经被监听。

[root@rocky9 yashan]# ss -antpl | grep 1688 LISTEN 0 4096 0.0.0.0:1688 0.0.0.0:* users:(("yasdb",pid=70869,fd=15))

注意,
在安装完成后,会在 bashrc 文件末尾增加一行,所以需要导入环境变量。

[root@rocky9 yashan]# tail ~/.bashrc -n1 [ -f /root/yashandb/yasdb_home/conf/yasdb.bashrc ] && source /root/yashandb/yasdb_home/conf/yasdb.bashrc [root@rocky9 yashan]# source ~/.bashrc [root@rocky9 yashan]#

可以看到这里设置了几个环境变量:

[root@rocky9 yashan]# cat /root/yashandb/yasdb_home/conf/yasdb.bashrc export YASDB_HOME=/root/yashandb/yasdb_home export YASDB_DATA=/root/yashandb/yasdb_data export PATH=$YASDB_HOME/bin:$PATH export LD_LIBRARY_PATH=$YASDB_HOME/lib:$LD_LIBRARY_PATH [root@rocky9 yashan]#

设置 sys 超管用户口令

进入 YASDB_HOME,并使用 yaspwd 命令为超管用户设定密码。

[root@rocky9 yasdb_home]# yaspwd file=yasdb.pwd Enter password for SYS:dba1234!

这里需要注意的是,默认的密码校验规则较为复杂,密码至少8位,至少包含1个特殊字符,且不能包含用户名。

[root@rocky9 yasdb_home]# yaspwd file=yasdb.pwd Enter password for SYS:sys YASPW-00002 password complexity failed for SYS user : password must contain at least 8 characters [root@rocky9 yasdb_home]# yaspwd file=yasdb.pwd Enter password for SYS:sysdba123 YASPW-00002 password complexity failed for SYS user : password must contain at least 1 special character [root@rocky9 yasdb_home]# yaspwd file=yasdb.pwd Enter password for SYS:sysdba123! YASPW-00002 password complexity failed for SYS user : password must not contain the username

登录 YashanDB

这里为便于测试,直接将 YASDBA 用户组赋予 root 用户,如此便可以免密登录。

[root@rocky9 config]# yasql / as sysdba 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>

基础使用

登录后,查看数据库启动状态,和启动时间:

SQL> select status, startup_time from v$instance; STATUS STARTUP_TIME ------------- ---------------------------------------------------------------- OPEN 2023-10-31 01:12:59.760037 1 row fetched.

查看日志文件:

SQL> select * from v$logfile; THREAD# ID NAME BLOCK_SIZE BLOCK_COUNT USED_BLOCKS SEQUENCE# STATUS ------- ------------ ---------------------------------------------------------------- ------------ ------------ ------------ ------------ --------- 1 0 /root/yashandb/yasdb_data/dbfiles/redo0 4096 25600 9 1 INACTIVE 1 1 /root/yashandb/yasdb_data/dbfiles/redo1 4096 25600 5740 2 CURRENT 1 2 /root/yashandb/yasdb_data/dbfiles/redo2 4096 25600 0 0 INACTIVE 1 3 /root/yashandb/yasdb_data/dbfiles/redo3 4096 25600 0 0 INACTIVE 4 rows fetched.

查看 DBA 表:

SQL> select distinct owner, tablespace_name from dba_tables limit 10; OWNER TABLESPACE_NAME ---------------------------------------------------------------- ---------------------------------------------------------------- SYS SYSTEM SYS SYSAUX SYS TEMP MDSYS SYSTEM 4 rows fetched.

MySQL 兼容模式

YashanDB 通过 SQL 插件的形式兼容了部分 MySQL 特性,通过下面的命令可以启用 MySQL 兼容模式:

SQL> ALTER SYSTEM SET SQL_PLUGIN = 'MYSQL'; Succeed.

下面做些简单的测试:

SQL> create table t1 (id int); Succeed. SQL> insert t1 select 1; [1:8]YAS-04115 "INTO" expected but missing SQL> insert into t1 select 1; YAS-00004 feature "implict table" has not been implemented yet SQL> insert into t1 values (1); 1 row affected. SQL> select * from t1; ID ------------ 1 1 row fetched. SQL> desc t1; NAME NULL? DATATYPE ---------------------------------------------------------------- --------- --------------------------------- ID INTEGER SQL> show create table t1; YASQL-00010 unknown SHOW option SQL> delete from t1 ; 1 row affected. SQL> select * from t1; ID ------------ 0 rows fetched.

可以看到,这里只是兼容了一些最基础的语法,并不完善,也或许是个人版的功能并不完全。

总结

YashanDB 是国产数据库的一颗新星,“形”极其似 O 某,希望“神”不仅似,且能超越,最后遥遥领先。


🎉【直播预告】

11月2日,YashanDB 2023年度发布会将于云端直播开启,发布会以「惟实·励新」为主题,邀请企业用户、合作伙伴、广大开发者共同见证全新产品与解决方案。

惟实求真。YashanDB始终秉持着求真务实的态度,专注基础理论与底层技术的突破,选难题挑战、向实践求真;励新求变。YashanDB相信创新是推动发展的源动力,不断在产品技术、应用场景、用户体验方面寻求突破和创新,推动产业的革新。

本次发布会直播将在墨天轮同步进行,也将送出精美周边,欢迎大家报名!

[即将开始] 惟实·励新 | YashanDB 2023年度发布会

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

评论