ITPub博客

首页 > 数据库 > 国内数据库 > 【YashanDB知识库】审计表UNIFIED_AUDIT_TRAIL出现YAS-00220

【YashanDB知识库】审计表UNIFIED_AUDIT_TRAIL出现YAS-00220

原创 国内数据库 作者:qiaoyikefu 时间:2025-03-22 13:41:38 0 删除 编辑

【问题分类】功能使用

【关键字】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

【影响范围】23.2.9.xxx前的所有版本

【修复版本】-

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70043300/viewspace-3078460/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2025-01-14

  • 博文量
    206
  • 访问量
    188338