作伪墨天轮论坛很少发言的老用户,近期看到YashanDB的相关活动,决定动手参与一下。正好看到YashanDB崖山认证工程师YCA培训,也顺便提交了报名,报名链接:https://www.yashandb.com/YCA_courses,有兴趣的朋友可以参与一下!
目录
YashanDB介绍
YashanDB环境准备
YashanDB下载
YashanDB验证安装是否成功
YashanDB连接DBeaver
YashanDB介绍
崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,经工信部下属机构权威检测,内核代码自主率100%。在经典数据库理论基础上,融入原创的有界计算理论、近似计算理论、并行可扩展理论和跨模融合计算理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,全面兼容私有化及云基础设施,为客户提供一站式的企业级融合数据管理解决方案,满足金融、政府、电信、能源等关键行业对高性能、高并发及高安全性的要求。
多的就不说了,看过官方的培训教材,感觉很厉害,下面放几张截图,大家自己上手体验。
YashanDB环境准备
个人版单机形态YashanDB服务端安装部署所需的前期准备:
CentOS 7.9 | 2C | 4G |
生产环境可以参考官方文档调整系统ulimit参数,本文章只做个人版测试。
YashanDB下载
官方YashanDB 个人版下载连接,下载YashanDB Personal 23.1 (Linux X86)安装包。
https://download.yashandb.com/download
mkdir YashanDB && cd YashanDB
wget https://linked.yashandb.com/resource/yashandb-personal-23.1.1.100-linux-x86_64.tar.gz
复制
YashanDB解压安装
tar -zxf yashandb-personal-23.1.1.100-linux-x86_64.tar.gz
[root@localhost YashanDB]# ll
总用量 171312
drwxrwxr-x. 6 1000 1000 70 11月 9 18:16 admin
drwxrwxr-x. 2 1000 1000 188 11月 9 18:16 bin
drwxrwxr-x. 2 1000 1000 152 11月 9 18:16 conf
drwxrwxr-x. 5 1000 1000 60 11月 9 18:16 ext
-rw-rw-r--. 1 1000 1000 11632 11月 9 18:16 gitmoduleversion.dat
drwxrwxr-x. 2 1000 1000 65 11月 9 18:16 include
drwxrwxr-x. 3 1000 1000 17 11月 9 18:16 java
drwxrwxr-x. 2 1000 1000 4096 11月 9 18:16 lib
-rw-r-----. 1 1000 1000 14989 11月 9 18:16 LICENSE
drwxrwxr-x. 3 1000 1000 21 11月 9 18:16 plug-in
drwxrwxr-x. 2 1000 1000 170 11月 9 18:16 scripts
-rw-r--r--. 1 root root 175386922 11月 9 20:25 yashandb-personal-23.1.1.100-linux-x86_64.tar.gz
复制
在 scripts 路径下,提供了安装和初始化脚本,如果想了解具体的安装和初始化过程,可以查看脚本具体内容:
[root@localhost YashanDB]# ll scripts/
总用量 32
-rwxrwxr-x. 1 1000 1000 3296 11月 9 18:16 createResourceCgroup.sh
-rwxrwxr-x. 1 1000 1000 2934 11月 9 18:16 initDB.sh
-rwxrwxr-x. 1 1000 1000 2104 11月 9 18:16 initStandby.sh
-rw-rw-r--. 1 1000 1000 411 11月 9 18:16 install.ini
-rwxrwxr-x. 1 1000 1000 1412 11月 9 18:16 install.sh
-rwxrwxr-x. 1 1000 1000 1157 11月 9 18:16 startup.sh
-rwxrwxr-x. 1 1000 1000 1157 11月 9 18:16 stop.sh
-rwxrwxr-x. 1 1000 1000 667 11月 9 18:16 yascheckStart.sh
复制
initDB.sh 初始化脚本,只用于此脚本会创建并启动数据库,依赖于install.sh脚本先执行。
initStandby.sh 初始化脚本,只用于高可用主备的备库,此脚本会创建并启动备库,依赖于install.sh脚本先执行。
install.ini 初始化脚本在初始化数据库过程中依赖于此配置文件完成数据库初始化。
install.sh 创建数据库软件目录,配置数据库环境变量。
startup.sh 数据库启动脚本。此脚本简化和封装了启动数据库命令。
stop.sh 数据库关闭脚本。此脚本简化和封装了关闭数据库命令。
注意:只有当服务器中有一个实例运行时运行此脚本才生效。
下面安装使用默认配置 scripts/install.ini,YashanDB 默认监听端口:1688
分别执行安装脚本、初始化脚本:
[root@localhost YashanDB]# ./scripts/install.sh
[root@localhost YashanDB]# ./scripts/initDB.sh
process started!
Database open succeed !
复制
现在,我们看到数据库已经启动,使用ss命令可以看到 1688 端口已经被监听。
[root@localhost YashanDB]# ss -antpl | grep 1688
LISTEN 0 128 *:1688 *:* users:(("yasdb",pid=4665,fd=15))
复制
生效环境变量
source ~/.bashrc
复制
YashanDB验证安装是否成功
默认配置初始化后,默认默认系统超管为:sys/yasdb_123
[root@localhost ~]# yasql sys/yasdb_123
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 from v$instance ;
STATUS
-------------
OPEN
1 row fetched.
SQL> select database_name from v$database ;
DATABASE_NAME
----------------------------------------------------------------
yasdb
1 row fetched.
SQL> exit
复制
YashanDB连接DBeaver
DBeaver是很多人喜欢的数据库连接工具,下面使用DBeaver工具连接YashanDB:
1. 下载连接驱动
下载地址https://linked.yashandb.com/resource/yashandb-jdbc-1.5.1.jar
2. 创建“YashanDB”驱动
3. 配置JDBC连接数据库
连接时一直提示连接超时,想起来忘记关闭服务器的防火墙了,大家也可以放行1688端口,这里一定要注意。
4. 连接成功,就可以在DBeaver操作了
5. YashanDB DBeaver工具
此外,YashanDB还提供了YashanDB DBeaver工具,大家可以直接下载使用。(需满足JDK17)
https://download.yashandb.com/download
YashanDB常用SQL操作
1.创建示例表
-- 创建示例用户,后续案例,都是在power用户下操作。
SQL> CREATE USER power IDENTIFIED BY "power2023";
Succeed.
SQL> GRANT DBA TO power;
Succeed.
SQL> conn power
please input password:
Connected to:
YashanDB Server Personal Edition Release 23.1.1.100 x86_64 - X86 64bit Linux
-- 创建示例表area
-- 列名:area_no 区域编号。
-- 列名:area_name 区域名称。
-- 列名:DHQ 区域总部。
SQL> CREATE TABLE area (area_no CHAR(2) NOT NULL PRIMARY KEY, area_name VARCHAR2(60), DHQ VARCHAR2(20) DEFAULT 'ShenZhen' NOT NULL );
Succeed.
-- 插入示例数据
SQL> INSERT INTO area VALUES ('01' , '华东' , 'Shanghai');
1 row affected.
SQL> INSERT INTO area VALUES ('02' , '华西' , 'Chengdu');
1 row affected.
SQL> INSERT INTO area VALUES ('03' , '华南' , 'Guangzhou');
1 row affected.
SQL> INSERT INTO area VALUES ('04' , '华北' , 'Beijing');
1 row affected.
SQL> INSERT INTO area VALUES ('05' , '华中' , 'Wuhan');
1 row affected.
SQL> COMMIT;
Succeed.
复制
2.查询操作
-- 查询单列
SQL> SELECT area_name FROM area;
AREA_NAME
-------------------------------------------------------------
华东
华西
华南
华北
华中
5 rows fetched.
-- 查询多列
SQL> SELECT area_no,area_name FROM area;
AREA_NO AREA_NAME
------- -----------------------------------------------------
01 华东
02 华西
03 华南
04 华北
05 华中
5 rows fetched.
-- 查询所有列
SQL> SELECT * FROM area;
AREA_NO AREA_NAME DHQ
------- ------------------------------------------------------------- ---------------------
01 华东 Shanghai
02 华西 Chengdu
03 华南 Guangzhou
04 华北 Beijing
05 华中 Wuhan
5 rows fetched.
-- 使用条件查询
SQL> SELECT * FROM area WHERE area_name='华东';
AREA_NO AREA_NAME DHQ
------- ------------------------------------------------------------- ---------------------
01 华东 Shanghai
1 row fetched.
-- 查询结果排序
SQL> SELECT * FROM area ORDER BY dhq;
AREA_NO AREA_NAME DHQ
------- ------------------------------------------------------------- ---------------------
04 华北 Beijing
02 华西 Chengdu
03 华南 Guangzhou
01 华东 Shanghai
05 华中 Wuhan
5 rows fetched.
-- 对结果进行降序排序
SQL> SELECT * FROM area ORDER BY dhq DESC;
AREA_NO AREA_NAME DHQ
------- ------------------------------------------------------------- ---------------------
05 华中 Wuhan
01 华东 Shanghai
03 华南 Guangzhou
02 华西 Chengdu
04 华北 Beijing
5 rows fetched.
复制
3.删除表
SQL> DROP table area;
Succeed.
复制
总结一下YashanDB的使用感受,本文只做了个人版的安装体验,整体安装流程是比较方便的,而且配备完善的文档,有机会做更深度的使用体验报告。
别忘了报名YashanDB崖山认证工程师YCA培训,报名链接:https://www.yashandb.com/YCA_courses,最近一期的培训将在12月5号开始,快快报名吧!