更新时间:2026-10-21 GMT+08:00
GS_COPY_ERROR_LOG
GS_COPY_ERROR_LOG系统表用于捕捉COPY FROM过程的相关错误行,以便后续查阅。
- 开启三权分立(即GUC参数enableSeparationOfDuty=on)时,使用者可以是数据库普通用户或管理员用户。
- 不开启三权分立(即GUC参数enableSeparationOfDuty=off)时,使用者可以是数据库普通用户或管理员用户。当使用者为普通用户的时候,需要管理员用户对普通用户赋权(该赋权动作需要allow_create_sysobject参数为on)。管理员用户可以直接使用。
| 名称 | 类型 | 描述 |
|---|---|---|
| relname | text | 表名称。以模式名/表名形式显示。 |
| begintime | timestamp with time zone | 出现数据格式错误的时间。 |
| filename | text | 出现数据格式错误的数据源文件名。 |
| lineno | bigint | 在数据源文件中,出现数据格式错误的行号。 |
| rawrecord | text | 在数据源文件中,出现数据格式错误的原始记录。 |
| detail | text | 详细错误信息。 |
| custom_id | text | 关联的COPY语法中copy_custom_id输入的值,表示本次导入的自定义标识信息。 |
- pg_catalog.gs_copy_error_log表当前没有自动清理机制,需要管理员用户手动执行TRUNCATE语句进行清理。
- pg_catalog.gs_copy_error_log表当前没有行级访问控制。
- 缩容后,被缩容DN节点上pg_catalog.gs_copy_error_log表中的数据会丢失。缩容前请先确认表内数据是否需要,如有需要则提前进行备份。
- 三权分立机制下,错误日志信息不会记录至pg_catalog.pgxc_copy_error_log和pg_catalog.gs_copy_error_log。若用户load_user需记录错误信息,需通过以下语句在其同名Schema下创建:
CREATE TABLE load_user.pgxc_copy_error_log (relname varchar, begintime timestamptz, filename varchar, lineno int8, rawrecord text, detail text); CREATE INDEX copy_error_log_relname_idx ON load_user.pgxc_copy_error_log(relname);
(可选)在表上添加custom_id列:
ALTER TABLE load_user.pgxc_copy_error_log ADD COLUMN custom_id varchar(64);
父主题: 其他系统表