注册
DISQL及DMFLDR的学习与简单应用
技术分享/ 文章详情 /

DISQL及DMFLDR的学习与简单应用

雾岛听风 2026/08/07 202 0 0

DISQL及DMFLDR的学习与简单应用

disql的学习与应用

1、首先切换到dmdba用户下,打开到dmdbms的bin目录

su - dmdba cd /home/dmdba/dmdbms/bin

128784

2、先把数据库DmServiceDMTEST打开

./DmServiceDMTEST start ./DmServiceDMTEST status //显示running即可

128785

3、登录disql

这里因为我当时设置的数据库端口为5237 所以选择第二种方式进行,第一种默认是5236端口

./disql 用户名/密码 //第一种本地登录 ./disql SYSDBA/Sysdba123.@127.0.0.1:5237 //第二种远程指定ip和端口

128782

4、进行sql语句编写测试

select table_name from user_tables; //查看当前SYSDBA用户下的所有表 create table test(id int primary key,name varchar(255) not null,age int); //创建test表 有id(唯一主键)、name(非空)、age等属性 insert into test values(1,'name1',25); insert into test values(2,'name2',26); insert into test values(3,'',27); //输入为空也算 不是null即可 insert into test values(4,null,28); //此时会因为name不为空的规定报错 commit; //提交 select *from test; desc test; //查看表结构

128787

5、同时可以使用离线脚本执行--即不打开交互界面的方式

./disql SYSDBA/Sysdba123.@127.0.0.1:5237 <<EOF INSERT INTO TEST VALUES(4,'NAME4',28); INSERT INTO TEST VALUES(4,'NAME4',28); COMMIT; EOF ./disql SYSDBA/Sysdba123.@127.0.0.1:5237 SELECT *FROM TEST; //此时可以看到刚才离线写的数据也已经在test表中

128781

dmfldr学习与应用

我这里是把上面自己插入的数据进行导出工作,然后再新创建test1表作为导入时的表

1、导出(同样是在/home/dmdba/dmdbms/bin目录下 需要先开启disql再进行导出工作)

./dmfldr USERID=SYSDBA/Sysdba123.@127.0.0.1:5237 MDOE=\'OUT\' DATA=\'/tmp/test_export.csv\' TABLE=TEST cat /tmp/test_export.csv

128780

2、导入

create table TEST1(id int,name varchar(255),age int); //在数据库disql中创建TEST1表 select table_name from user_tables; //查看创建的TEST1表是否存在 host //在disql里用host即可到bin目录下 且不用推出数据库 想返回数据库时输入exit即可 ./dmfldr USERID=SYSDBA/Sysdba123.@127.0.0.1:5237 MDOE=\'in\' DATA=\'/tmp/test_export.csv\' TABLE=TEST select *from test1;

128783

128788

不理解为什么官网给的命令一直不能跑的通

官网给出的导出时需要ctl文件 但是加上ctl文件作为命令时就会显示参数分析出错

128786

https://eco.dameng.com

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服