通过墨天轮实训平台,体验了一把YashanDB,表空间、索引、事务都有很好的支持,很丝滑~
关于YashanDB个人版
崖山数据库管理系统(YashanDB)是深圳计算科学研究院在经典数据库理论基础上,融入新的原创理论,自主设计、研发的新型数据库管理系统,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,为客户提供一站式的企业级融合数据管理解决方案。
本次试用的是YashanDB的试用版,YashanDB提供了个人版
、标准版
、企业版
三种。
个人版:YashanDB面向个人用户推出的免费试用版本,除不支持多模数据类型、高级安全能力、数据库集群等企业级功能,该版本包含YashanDB数据库所有基础核心能力,支持单机主备部署形态,配套开发者工具,供个人用户或开发者用于学习、测试、开发用途。
标准版:YashanDB面向小规模用户推出的商业版本,该版本价格适中,除不支持多模数据类型、高级安全能力等企业级功能,该版本包含YashanDB数据库所有基础核心能力,支持单机主备、分布式、共享集群部署形态,配套完整数据迁移和监控运维工具,可以为政府或中小企业提供支撑其业务所需的基本能力。
企业版:YashanDB面向大规模用户推出的商业版本,该版本包含YashanDB数据库完整核心能力,支持PB级海量数据存储和大量的并发用户,支持多模数据类型、高级安全能力,支持单机主备、分布式、共享集群部署形态,配套完整数据迁移和监控运维工具,可以满足支撑各类企业应用
一、连接环境
Tips:为了更好的保护用户隐私YashanDB对密码做了强度控制,这个连接命令的sys密码也是遵循了这个强度控制规则
开启密码强度控制后,YashanDB将在密码设置时进行强度校验,输入的密码需要满足(1)至少八位长度(2)数字+大小写+特殊字符组合的条件后才能设置成功
bin/yasql sys/admin-123@127.0.0.1:1688
二、数据库操作
create database yashandb;
三、SQL基本操作
3.1、表空间操作
表空间是数据库的逻辑存储结构,所有数据库对象均存储于指定的表空间内
-
创建表空间
CREATE TABLESPACE ts_yashan;
-
查看表空间
SELECT TABLESPACE_NAME FROM DBA_TABLESPACES;
-
修改表空间
-- 收缩ts_yashan表空间大小 ALTER TABLESPACE ts_yashan SHRINK SPACE;
-
删除表空间
DROP TABLESPACE ts_yashan;
3.2、表操作
表是数据库用来存放数据的一个集合,一般与实体对象一一对应,如人员表、部门表、公司表等,一般由行和列这两个二维信息来组织表数据
-
创建表
CREATE TABLE tb_yashan(c1 INT,c2 VARCHAR(10));
-
查看表
SELECT TABLE_NAME,TABLE_TYPE FROM USER_TABLES;
-
修改表
-- 重命名 ALTER TABLE tb_yashan RENAME TO tab_yashan; -- 新增字段 ALTER TABLE tab_yashan ADD(c3 NUMBER); -- 修改字段类型 ALTER TABLE tab_yashan MODIFY c3 FLOAT;
-
删除表
DROP TABLE tab_yashan;
3.3、索引操作
索引是一种物理的对数据库表中一列或多列的值进行排序的存储结构,它是某个表中一列或若干列值的集合,是指向表中物理标识这些值所在行的逻辑指针清单
-
创建索引
-- 创建表 CREATE TABLE tb_index(c1 INT,c2 INT); -- 创建索引 CREATE INDEX index1 ON tb_index(c1);
-
查看索引
SELECT INDEX_NAME, INDEX_TYPE, TABLE_NAME FROM USER_INDEXES where INDEX_NAME = 'INDEX1';
-
删除索引
DROP INDEX index1;
3.4、数据操作
接下来是作为CRUD工程师本人最爱的CRUD~
-
插入数据
-- 创建表 CREATE TABLE insert_tb(c1 INT,c2 CHAR(10)); -- 插入一条数据 INSERT INTO insert_tb VALUES(4,'hello'); -- 插入多条数据 INSERT INTO insert_tb VALUES(1,'world'),(2,'nihao'),(3,'shijie'); -- 查询数据 SELECT * FROM insert_tb;
-
更新数据
-- 更新数据 UPDATE insert_tb SET c1=5 WHERE c1=1; -- 查询数据 SELECT * FROM insert_tb; -- 更新多条数据 UPDATE insert_tb SET (c1,c2) = (7,'newvalue') WHERE c1=3; -- 查询数据 SELECT * FROM insert_tb;
-
删除数据
-- 删除数据 DELETE FROM insert_tb WHERE c1 = 7; -- 查询数据 SELECT * FROM insert_tb;
3.5、事务操作
提交事务前,用户在事务过程做的任何修改只有自己能看到,其他用户无法看到,并可以通过回滚操作将数据恢复。
提交事务后,其他用户可看到修改后的数据,此时无法通过回滚操作将数据恢复。
-
提交事务
CREATE TABLE COM_TB(c1 INT); INSERT INTO COM_TB VALUES(1),(2),(3); -- 提交事务 COMMIT;
-
回退事务
-- 插入数据 INSERT INTO COM_TB VALUES(6); SELECT * FROM COM_TB; -- 回退至修改前状态 ROLLBACK; SELECT * FROM COM_TB;
总结
1、整体使用下来YashanDB的CRUD比较丝滑
2、墨天轮的这个实训平台蛮好,对于非DBA人员来说非常友好。很轻松的能体验新的数据库,还能参考YashanDB的文档体验更多的功能。
3、YashanDB的参考文档很不错,思路很清晰,参看文档很容易上手。YashanDB参考文档
有个别不规范的小问题
但是值的好评的是,参考文档提供了反馈功能,选取一段文字,就可以进行反馈