💡 好消息!YashanDB个人版已正式向所有用户和开发者全面开放下载,该版本已在官网同步上线,欢迎大家前往官网下载体验!
前言
上一篇已经写了YashanDB个人版安装,可以参考:【个人版安装】。本篇想写写参考官方文档如何操作。另外有一件好事,官方提供了YashanDB在线实训环境。
环境准备
操作系统: CentOS 9
CPU:4C
内存:8G
硬盘:60G
文件系统:SSD
YashanDB版本:v23.1 个人版
数据库操作
连接到控制台
[root@localhost yashan]# yasql sys/\"YashanDB@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>
SQL>
注意,v23.1版本输入密码方式的区别,如果密码忘记或者想修改密码,可以参考密码策略,yasdb.pwd文件不存在时,才能生成新的密码文件,因此修改密码前应该先将yasdb.pwd删除或改名,详细操作请参考工具手册。
查询数据库
查询在安装时的初始化的数据库。
SQL> SELECT database_name FROM v$database;
DATABASE_NAME
----------------------------------------------------------------
yashandb
1 row fetched.
SQL>
创建数据库
创建一个单实例的数据库,这里使用默认参数方式创建一个数据库,数据库名称为db_learn。此时数据库已经挂载,不允许创建。
SQL> create database db_learn;
数据库命名规范请参考官网提供方案
创建表
步骤如下:
1、检查是否存在表,存在则删除
SQL> DROP TABLE IF EXISTS it_db_test;
2、创建名称为it_db_test的表
SQL> CREATE TABLE it_db_test
(
id INT,
product_name VARCHAR(128),
cost_total NUMBER(10,2)
);
插入数据
插入测试数据
SQL> insert into it_db_test values (1, '111', 30), (2, '222', 20);
在插入时,这里选择了VARCHAR这个数据类型,在YashanDB中,是按照字符型来处理,YashanDB中的字符型包括英文字母、中文汉字、数字字符和特殊字符等,多用于存储文本数据。此外,该类型还能通过隐式数据转换,灵活地参与到数值型、日期型的运算场景之中。字符型具体可分为CHAR、VARCHAR、NCHAR和NVARCHAR四种数据类型。执行结果如下:
查询数据
执行如下命令:
SQL> select * from it_db_test;
更新数据
我想要将上面产品名称为“111”的价格上涨,改为40,执行更新语句和再次执行查询SQL如下:
SQL> update it_db_test set COST_TOTAL = 40 where id = 1;
SQL> select * from it_db_test;
清空表
执行SQL脚本结果如下:
SQL>
SQL> truncate table it_db_test;
Succeed.
SQL>
SQL> select * from it_db_test;
ID PRODUCT_NAME COST_TOTAL
------------ ---------------------------------------------------------------- -----------
0 rows fetched.
SQL>
删除表
执行SQL脚本命令如下
SQL> drop table it_db_test;
Succeed.
SQL>
SQL> select * from it_db_test;
[1:15]YAS-02012 table or view does not exist
SQL>
数据导入
我有一张空表,sys_user_info,创表语句如下:
create table sys_user_info(
id int,
username varchar(128),
age int,
birth date
);
需要导入的CSV文件,这里需要注意下,ID列我一开始使用的字符串,导入失败,后来修改为数字即可。
增加一个控制器如下:
[root@localhost imp_data]# yasldr sys/\"Yashan@123\"@192.168.3.80:1688 batch_size=20 mode=batch packet_size=131072 control_file=/home/yashan/imp_data/sys_user_info.ctl
YashanDB Loader Personal Edition Release 23.1.1.100 x86_64 0e623bd
5 rows successfully loaded.
Check /home/yashan/imp_data/it_sys_user_info.log for more info.
[YASLDR] execute succeeded with info
总结
从操作上面来说,YashanDB与其他的SQL语法基本相同,但在某些方面存在一些差异。数据类型方面,YashanDB支持更多的数据类型,例如JSON、BLOB、CLOB等;而MySQL则支持更多的数值类型和日期类型。
YashanDB数据库在安装、配置在上一篇已经讲到,比较简单,官方也提供了清晰的文档和操作指南,使得初次使用者可以快速上手。一旦安装完成,用户可以立即体验到其强大的性能。该数据库采用了多种优化技术,如内存计算、异步IO和零拷贝等,保证了高效稳定的运行,即使在处理大量数据和高并发访问时也能保持出色的表现。
YashanDB数据库支持多种灵活的数据模型,包括Key-Value、Hash、List、Set和Sorted Set等,使用户能够根据不同的应用场景选择合适的数据模型进行存储和查询。此外,数据库提供了可靠的数据保护机制,包括数据备份和恢复功能,以及数据加密和访问控制等安全机制,确保数据的安全性和隐私性。总体而言,YashanDB数据库提供了卓越的性能和良好的易用性。
参考文档
[1] YashanDB实例启停
[2] 表管理