为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: DM8
【操作系统】:CentOS8
【CPU】:Linux amd64
【问题描述】*:我有一个表,里面有一千万条数据。可以使用下面的脚本复现我这个表:
drop table if exists t01;
create table t01(c1 varchar(100), c2 varchar(100));
begin
for i in 1..10000000 loop
insert into t01 values('a'||i, 'b'||i);
end loop;
end;
/
然后编写一个脚本,新增一个字段c3
,保存到本地的 test.sql
alter table T01 add column c3 VARCHAR(100) NOT NULL DEFAULT 'c3 test';
然后,通过以下命令,使用disql客户端执行这个脚本:
disql SYSDBA/SYSDBA001@10.9.1.1:7546 < test.sql
会发现,开始输出了执行成功的日志,接下来就疯狂输出以下日志并无法停止,除非直接关闭终端:
脚本不能有空行,如果是windows 编写的脚本还需要转换一下结尾的换行符
您好!在linux中使用disql命令中添加sql脚本时请按以下格式
./disql SYSDBA/SYSDBA:7236 '`/dmopt/test.sql'
即`/dmopt/test.sql外层需要加上单引号
如有帮助请采纳,谢谢~~
如果以下SQL没有提交
那么执行以下SQL
disql SYSDBA/SYSDBA@192.168.18.33:15236 < 'test.sql'
用strace命令去跟踪,其实刚开始的报错是一个锁超时
你换成这样执行
disql SYSDBA/SYSDBA001@10.9.1.1:7546 `test.sql