簧横 发表于 2025-6-11 09:08:25

【YashanDB知识库】审计表UNIFIED_AUDIT_TRAIL出现YAS-00220 utf8 sequence is wrong

【问题分类】功能使用
【关键字】UNIFIED_AUDIT_TRAIL,YAS-00220
【问题描述】当审计对象的SQL语句包含非标准中文字符时,出现YAS-00220 utf8 sequence is wrong,影响审计记录。
--第一步:打开审计开关

SQL> ALTER SYSTEM SET UNIFIED_AUDITING = true;



Succeed.



--创建审计策略

CREATE AUDIT POLICY up2

ACTIONS DROP TABLE,DELETE ON sales.area,INSERT ON sales.area,UPDATE ON sales.area,ALL ON sales.sales_info;



AUDIT POLICY up2;



--第二步:执行操作被正常记录

SQL> conn sales/sales



Connected to:

YashanDB Server Enterprise Edition Release 23.2.7.100 x86_64 - Linux



SQL> UPDATE area SET DHQ='guangzhou' WHERE area_no='01';



1 row affected.



SQL> commit;



Succeed.



SQL> SELECT dbusername,event_timestamp,sql_text,object_schema

FROM UNIFIED_AUDIT_TRAIL

WHERE dbusername='SALES'; 2 3



DBUSERNAME EVENT_TIMESTAMP SQL_TEXT OBJECT_SCHEMA

---------------------------------------------------------------- ---------------------------------------------------------------- ---------------------------------------------------------------- ----------------------------------------------------------------

SALES 2024-12-11 09:52:27.602837 UPDATE area SET DHQ='guangzhou' WHERE area_no='01' SALES



1 row fetched.



--第三步:其中 '广.' 为非正常中文字段,查看审计表出现报错

SQL> UPDATE area SET DHQ='广.' WHERE area_no='01';



1 row affected.



SQL> commit;



Succeed.



SQL> SELECT dbusername,event_timestamp,sql_text,object_schema

FROM UNIFIED_AUDIT_TRAIL

WHERE dbusername='SALES'; 2 3



DBUSERNAME EVENT_TIMESTAMP SQL_TEXT OBJECT_SCHEMA

---------------------------------------------------------------- ---------------------------------------------------------------- ---------------------------------------------------------------- ----------------------------------------------------------------

SALES 2024-12-11 09:52:27.602837 UPDATE area SET DHQ='guangzhou' WHERE area_no='01' SALES



YAS-00220 utf8 sequence is wrong



--第四步:执行操作无法被正常记录

SQL> UPDATE area SET DHQ='guangzhou' WHERE area_no='01';



1 row affected.



SQL> commit;



Succeed.



SQL> SELECT dbusername,event_timestamp,sql_text,object_schema FROM UNIFIED_AUDIT_TRAIL WHERE dbusername='SALES';



DBUSERNAME EVENT_TIMESTAMP SQL_TEXT OBJECT_SCHEMA

---------------------------------------------------------------- ---------------------------------------------------------------- ---------------------------------------------------------------- ----------------------------------------------------------------

SALES 2024-12-11 09:52:27.602837 UPDATE area SET DHQ='guangzhou' WHERE area_no='01' SALES



YAS-00220 utf8 sequence is wrong【问题原因分析】数据库BUG
【解决/规避方法】避免包含非正常中文字符,重新清理审计表。
BEGIN

DBMS_AUDIT_MGMT.CLEAN_AUDIT_TRAIL (

      DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,

      true);

END;

/【影响范围】23.2.9.xxx前的所有版本
【修复版本】-

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

慕疼 发表于 2025-11-6 09:22:10

东西不错很实用谢谢分享

请蒂 发表于 2025-12-12 04:00:04

yyds。多谢分享

庞环 发表于 2025-12-25 14:11:59

懂技术并乐意极积无私分享的人越来越少。珍惜

勉欤铅 发表于 2026-1-4 09:28:22

yyds。多谢分享

全叶农 发表于 2026-1-16 19:02:53

这个有用。

侧胥咽 发表于 2026-1-19 22:29:34

懂技术并乐意极积无私分享的人越来越少。珍惜

伯绮梦 发表于 2026-1-21 11:14:14

感谢发布原创作品,程序园因你更精彩

撷监芝 发表于 2026-1-21 13:37:51

东西不错很实用谢谢分享

缢闸 发表于 2026-1-25 04:02:30

鼓励转贴优秀软件安全工具和文档!

百杲憔 发表于 2026-1-28 07:31:23

感谢发布原创作品,程序园因你更精彩

颓哀 发表于 2026-1-28 08:40:06

懂技术并乐意极积无私分享的人越来越少。珍惜

羊舌正清 发表于 2026-1-29 05:40:15

感谢,下载保存了

浅皮懔 发表于 2026-2-2 05:06:32

鼓励转贴优秀软件安全工具和文档!

揉幽递 发表于 2026-2-3 08:08:17

过来提前占个楼

顾星 发表于 2026-2-4 08:44:33

谢谢分享,辛苦了

恿榫 发表于 2026-2-5 07:17:33

谢谢分享,试用一下

谲脾 发表于 2026-2-6 04:54:14

新版吗?好像是停更了吧。

喙审 发表于 2026-2-6 05:28:46

东西不错很实用谢谢分享

黎瑞芝 发表于 2026-2-7 22:01:41

分享、互助 让互联网精神温暖你我
页: [1] 2
查看完整版本: 【YashanDB知识库】审计表UNIFIED_AUDIT_TRAIL出现YAS-00220 utf8 sequence is wrong