返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

GBA-02IS-0005
错误码
错误标识
错误信息
GBA-02IS-0005

Query is stopped by user
错误出现原因
Ctrl + C 或网络中断导致此次操作被终止。
分析与建议
用户终止了此次操作,或者由于网络中断导致此次操作被终止。

API)
随同 admin() 或 task() 函数,使用 drop log 参数删除指定的逻辑日志。
语法

元素
描述
关键考虑
log_number
逻辑日志文件编号。 该编号必须是一个大于或等于 0 的无符号整数。

用法
使用这个函数来删除单个逻辑日志文件。
数据库服务器随时都要求最少三个逻辑日志文件。如果数据库服务器仅有三个逻辑日志文
件,则您不可删除日志文件。
重要: 在您可删除前三个逻辑日志文件的任何一个之前,必须添加新的逻辑日志文件并运
行逻辑日志文件的备份。必须使用 ontape -a 命令或 ontape -c 命令运行备份。在您添
加新的逻辑日志文件并运行备份之后,您可使用 onparams -d -llognum 来删除前三个逻
辑日志文件。
日志文件的状态决定能否删除日志文件,还决定当删除日志文件时数据库服务器采取的行
动:
 如果您删除一个还没有写过的日志文件,状态为新“添加的”(A),则数据库服
务器删除日志文件并立即释放空间。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 735 -
 如果您删除一个状态为“用户”(U)或“释放”(F)的已使用过的日志文件,则
数据库服务器将日志文件标记为
“删除的”
(D)

在您对包含日志文件的 dbspace
和 root
dbspace 进行 0 级备份之后,
数据库服务器删除该日志文件并释放空间。

 您不可删除当前在用(C)或包含最后检查点记录(L)的日志文件。
您可从 onstat -l 命令的编号域获取日志编号。日志编号可能是无序的。
这个函数等同于 onparams -d -l lognum 命令。
示例
下列示例删除文件编号为 2 的逻辑日志:
EXECUTE FUNCTION task("drop log","2");
下列示例通过根据 chunk 编号查找日志编号来删除特定 chunk 的日志:
SELECT task("drop log", number) FROM sysmaster:syslogfil WHERE chunk = 1;

示例中用到的表及数据:
DROP TABLE IF EXISTS gs;
CREATE TABLE gs (a int DEFAULT NULL, b varchar(20) DEFAULT NULL);
INSERT INTO gs VALUES(NULL,NULL);
INSERT INTO gs VALUES(1, 'GBase');
示例1:如果FIELDS ESCAPED BY ''中的字符是空字符,则NULL 被作为NULL
输出,而不是作为“\N”输出。
gbase>
SELECT
*
FROM
gs
INTO
OUTFILE
'/home/gbase/temp/esp_1.txt'
FIELDS
ESCAPED
BY
'';
Query OK, 2 rows affected
查看导出文件:
$ cat esp_1.txt
NULL NULL
1 GBase
注意
hive 表如果设置FIELDS ESCAPED BY ''是空字符,则NULL 还是作为\N 输出。

gbase> select * from r3 INTO OUTFILE '/home/gbase/4.txt' FIELDS ESCAPED BY '';
Query OK
# cat 000000_0
2 tod 2001-01-01 00:00:00
\N \N \N
示例2:如果在导出语句中指定了字段包围符,仍对NULL 值不起作用。
gbase> SELECT * FROM gs INTO OUTFILE '/home/gbase/temp/esp_2.txt' FIELDS ESCAPED BY

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 243
'' ENCLOSED BY '"';
Query OK, 2 rows affected
查看导出文件:
$ cat esp_2.txt
NULL NULL
"1" "GBase"