---
title: "SQL 为 set NCHARACTER_SET_CONNECTION=&#x27;UTF16&#x27; 日志报错 -5044 的原因和解决方法-OceanBase数据库使用指南"
description: "了解OceanBase数据库在实际应用中关于 SQL 为 set NCHARACTER_SET_CONNECTION=&#x27;UTF16&#x27; 日志报错 -5044 的原因和解决方法相关的常见问题和使用技巧，帮助您快速解决 SQL 为 set NCHARACTER_SET_CONNECTION=&#x27;UTF16&#x27; 日志报错 -5044 的原因和解决方法的难题。"
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# SQL 为 set NCHARACTER_SET_CONNECTION='UTF16' 日志报错 -5044 的原因和解决方法

更新时间：2026-05-18 09:11

适用版本： V1.4.x、V2.1.x、V2.2.x、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

## 问题现象

OCP 界面发现报错次数达到 36w 次的 SQL 语句，SQL 文本内容为 `set NCHARACTER_SET_CONNECTION='UTF16'`，同时 OBServer 日志中打印 `ORA-00600: internal error code, arguments: -5044` 报错信息，之后检查发现是 Oracle 模式下 OceanBase JDBC V2.4.7.1 版本的驱动自动发出的 SQL。

**OCP 界面报错信息：**

![image001](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/sql/20241031sqlerrorncharcter0001.png)

**OBServer 日志报错信息：**

1. 通过查询性能视图 `GV$OB_SQL_AUDIT` 获取 TRACE_ID。

   ```shell
   -- V3.x 版本视图为 GV$SQL_AUDIT，V4.x 版本视图为 GV$OB_SQL_AUDIT。
   obclient> SELECT /*+ PARALLEL (8) */ * FROM GV$OB_SQL_AUDIT WHERE SQL_ID='XXXXXXXXXXXX' AND ROWNUM < 100;

   ```
 2. 通过获取的 TRACE_ID 过滤 OBServer 日志信息。

   ```shell
   ## -- 此处 $TRACE_ID 为 xxxxx-xxxxx-xxxxx-xxxxx。
   grep 'xxxxx-xxxxx-xxxxx-xxxxx' observer.log

   ```

   输出结果如下：

   ```shell
   [2024-03-18 15:13:40.568318] WDIAG [SQL.SESSION] find_sys_var_id_by_name (ob_system_variable_factory.cpp:874) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=7][errcode=-4182] sys var name not found(sys_var_name=ncharacter_set_connection, lower_idx=92, ObSysVarFactory::ALL_SYS_VARS_COUNT=234, lbt()="0x10dc8800 0xe6dd864 0xafaf5d4 0xc8605d4 0xc86738c 0xc081698 0xa377a2c 0xaf05554 0xadffba8 0xadfd9ac 0xaf9744c 0xad5b594 0xad55a34 0xad4d14c 0xad490f8 0x87a7820 0x11049914 0xfffc590587ac 0xfffc58ee60fc")
   [2024-03-18 15:13:40.568355] WDIAG [SQL.SESSION] inner_get_sys_var (ob_basic_session_info.cpp:1196) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=20][errcode=-5044] fail to find sys var id by name(ret=-5044, sys_var_name=ncharacter_set_connection, lbt()="0x10dc8800 0xc8607a4 0xc8606a8 0xc86738c 0xc081698 0xa377a2c 0xaf05554 0xadffba8 0xadfd9ac 0xaf9744c 0xad5b594 0xad55a34 0xad4d14c 0xad490f8 0x87a7820 0x11049914 0xfffc590587ac 0xfffc58ee60fc")
   [2024-03-18 15:13:40.568366] WDIAG [SQL.SESSION] get_sys_variable_by_name (ob_basic_session_info.cpp:1917) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=10][errcode=-5044] fail to inner get sys var(var=ncharacter_set_connection, ret=-5044)
   [2024-03-18 15:13:40.569018] WDIAG execute (ob_variable_set_executor.cpp:181) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=50][errcode=-5044] ORA-00600: internal error code, arguments: -5044, Unknown system variable 'ncharacter_set_connection'
   [2024-03-18 15:13:40.569078] WDIAG [SQL] open_cmd (ob_result_set.cpp:98) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=12][errcode=-5044] execute cmd failed(ret=-5044)
   [2024-03-18 15:13:40.569089] WDIAG [SQL] open (ob_result_set.cpp:157) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=11][errcode=-5044] execute plan failed(ret=-5044)
   [2024-03-18 15:13:40.569316] WDIAG [SERVER] response_result (ob_sync_cmd_driver.cpp:145) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=224][errcode=-5044] close result set fail(cret=-5044)
   [2024-03-18 15:13:40.569377] WDIAG [SERVER] after_func (ob_query_retry_ctrl.cpp:932) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=58][errcode=-5044] [RETRY] check if need retry(v={force_local_retry:false, stmt_retry_times:0, local_retry_times:0, err_:-5044, err_:"OB_ERR_SYS_VARIABLE_UNKNOWN", retry_type:0, client_ret:-5044}, need_retry=false, THIS_WORKER.can_retry()=true, v.ctx_.multi_stmt_item_={is_part_of_multi_stmt:false, seq_num:0, sql:"set NCHARACTER_SET_CONNECTION = 'UTF16'", batched_queries:NULL, is_ps_mode:false, ab_cnt:0})
   [2024-03-18 15:13:40.569394] WDIAG [SERVER] response_result (ob_sync_cmd_driver.cpp:151) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=16][errcode=-5044] result set open failed, check if need retry(ret=-5044, cli_ret=-5044, retry_ctrl_.need_retry()=0)
   [2024-03-18 15:13:40.569458] INFO  [SERVER] send_error_packet (obmp_packet_sender.cpp:315) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=44] sending error packet(ob_error=-5044, client error=600, extra_err_info=NULL, lbt()="0x10dc8800 0x88ce1a0 0x887dc84 0xaf97984 0xad5b594 0xad55a34 0xad4d14c 0xad490f8 0x87a7820 0x11049914 0xfffc590587ac 0xfffc58ee60fc")
   [2024-03-18 15:13:40.569489] INFO  [SERVER] send_error_packet (obmp_packet_sender.cpp:498) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=9] dump txn free route audit_record(value=5, session->get_sessid()=3221502091, session->get_proxy_sessid()=789316784766577871)
   [2024-03-18 15:13:40.569501] WDIAG [SERVER] do_process (obmp_query.cpp:808) [4034385][T1004_L0_G0][T1004][xxxxx-xxxxx-xxxxx-xxxxx] [lt=10][errcode=-5044] execute query fail(ret=-5044, timeout_timestamp=1710749620567951)

   ```

   使用 $TRACE_ID 过滤 OBServer 日志其中有报错信息 `ORA-00600: internal error code, arguments: -5044, Unknown system variable 'ncharacter_set_connection'`。

## 问题原因

Oracle 模式下 OceanBase JDBC 版本的驱动自动发出的 SQL（该字符集兼容命令），执行失败不影响业务逻辑。

## 问题的风险及影响

无业务影响。

## 影响租户

影响 OceanBase 数据库中的 Oracle 租户，对于 SYS 租户和 MySQL 租户无影响。

## 适用版本

OceanBase 数据库 V4.2.1 BP2（oceanbase-4.2.1.2-102010012023120119）之前版本。

## 解决方法及规避方式

- 解决方法：

  无需干预，不影响业务，统计数据时可忽略该 SQL 的执行失败。
 - 规避方式：

  升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库 V4.2.1 BP2（oceanbase-4.2.1.2-102010012023120119）及之后版本。

上一篇

[执行 DDL 报错 ERROR 1235，不支持更改字符集或字符序](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000207750)

下一篇

[在设置 character_set_results=NULL 情况下执行 show create table 出现 Invalid argument 报错的原因和解决方法](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002398330) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
