本章将对YashanDB内置数据导入工具yasldr进行介绍及提供基础示例。

yasldr是YashanDB提供的客户端导入工具,可用于执行CSV格式的数据文件导入。

导入前准备

1.准备导入数据文件:

  • 以安装用户登录数据库所在服务器,在HOME路径下执行如下命令创建datafile文件:
    $ vi datafile
  • 将如下内容写入datafile文件中:
    `1|load|101
    2|load|201`
  • 按Esc,输入:wq保存并退出文件编辑。

2.准备导入用户:

  • 执行如下命令连接YashanDB数据库,请将password更改成设置的sys用户密码:

    $ yasql sys/password
    YashanDB SQL Personal Edition Release 23.3.1.100 x86_64
    
    Connected to:
    YashanDB Server Personal Edition Release 23.3.1.100 x86_64 - Linux
    
    SQL> 
  • 执行如下SQL语句创建用户yasldr_user,并为其指定密码yasldr:
CREATE USER yasldr_user IDENTIFIED BY yasldr;
  • 执行如下SQL语句为yasldr_user用户授予登录会话和创建资源的权限:
GRANT CONNECT TO yasldr_user;
GRANT RESOURCE TO yasldr_user;
  • 执行如下SQL语句切换至yasldr_user用户:
conn yasldr_user/yasldr

Connected to:
YashanDB Server Personal Edition Release 23.3.1.100 x86_64 - Linux

3.准备数据文件导入的目标表,本文以创建表loadData为例:

CREATE TABLE loadData (c1 INT,c2 CHAR(10),c3 INT);

4.执行如下命令退出YashanDB数据库:

SQL> exit
$ 

数据导入

1.在数据库所在服务器中执行如下命令,将datafile文件中数据导入至yasldr_user用户的loadData表中:

$ yasldr yasldr_user/yasldr batch_size=4032 control_text="'LOAD DATA OPTIONS(DEGREE_OF_PARALLELISM=2) INFILE '/home/yashan/datafile' FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '\"' APPEND INTO TABLE loadData(c1,c2,c3) '"

YashanDB Loader Enterprise Edition Release 23.3.1.100 x86_64 297f388
2 rows successfully loaded.
Check /home/yashan/datafile.log for more info.
[YASLDR] execute succeeded

如上命令将datafile文件中数据根据|进行分隔,分别导入loadData表中的c1、c2和c3列字段中。

验证数据

1.执行如下命令登录数据库:

$ yasql yasldr_user/yasldr
YashanDB SQL Personal Edition Release 23.3.1.100 x86_64

Connected to:
YashanDB Server Personal Edition Release 23.3.1.100 x86_64 - Linux

SQL> 

2.执行如下SQL语句查看表loadData中数据:

SELECT c1,c2,c3 FROM loadData;

          C1 C2                      C3
------------ ------------- ------------
           1 load                   101
           2 load                   201

YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...