GUC参数说明

dolphin.sql_mode

取值范围:字符串

默认值:'sql_mode_strict,sql_mode_full_group,pipes_as_concat,ansi_quotes,no_zero_date,pad_char_to_full_length,auto_recompile_function,error_for_division_by_zero'

参数说明:参数值为逗号间隔的字符串,仅允许合法字符串设定,不合法情况下,启动后报warning。同样,设置时候,如果新值非法,则报warning并且不修改老值。当前有几种场景会用到sql_mode:

  • sql_mode_strict:严格模式控制openGauss在执行会产生数据变化的SQL时(如INSERT、UPDATE、DELETE等),如何处理无效值或者空值。插入不符合当前列类型的值时,会进行数据转换;分两种场景,insert into table values(…) 和insert into table select … 主要涉及到各种数据类型之间的互相转换,目前涉及的类型有tinyint[unsigned],smallint[unsigned],int[unsigned],bigint[unsigned],float,double,numeric,clob,char和varchar;

  • sql_mode_strict:插入的列值长度超过此列所限定的长度时,赋予该列最大或最小值,涉及的类型有tinyint[unsigned],smallint[unsigned],int[unsigned],bigint[unsigned],float,double,numeric,clob,char和varchar;

  • sql_mode_strict:insert时,属性是非空且没有默认值的列,且没有在insert的列表中,则为其添加默认值;(涉及的类型同上面sql_mode_strict的描述)

  • sql_mode_strict:支持对属性是非空且没有默认值的列显式插入default;(涉及的类型同上面sql_mode_strict的描述)

  • sql_mode_strict:对于不会改变数据的SQL语句,如SELECT,在严格模式下处理无效值或者空值时仅产生告警,不会报错。效果等同于没有开启严格模式。

  • sql_mode_full_group:

    • 出现在select列表中的列(不使用聚合函数),是否一定要出现在group by子句中。当处在sql_mode_full_group模式(默认模式)下,如果select列表中的列没有使用聚合函数,也没有出现在group by子句,那么会报错,如果不在此模式下,则会执行成功,并在所有符合条件的元组中选取第一个元组。
    • 出现在order by中的列,是否一定要出现在distinct中(注意是distinct,不是distinct on)。当处在sql_mode_full_group模式(默认模式)下,不允许没有出现在distinct中的列出现在order by子句中,否则允许。
  • pipes_as_concat:控制 || 当成连接符还是或操作符

  • ansi_quotes:主要是针对出现在各种需要使用双引号表示字符串值的地方。当ansi_quotes打开,就表示此时的双引号中的内容要作为对象引用看待;当ansi_quotes关闭时,表示双引号中的内容要作为字符串的值看待。

  • no_zero_date:控制 '0000-00-00' 是否为合法日期,支持DATE、DATETIME类型

    参数表现
    no_zero_date, sql_mode_strict非法日期,报错(使用update/insert ignore时告警)
    no_zero_date非法日期,告警
    sql_mode_strict合法日期,无告警
    --合法日期,无告警
  • pad_char_to_full_length:控制char类型查询时是否删除尾部空格。

  • auto_recompile_function:控制严格模式下,在执行会产生数据变化的SQL时(如INSERT、UPDATE、DELETE等),如果SQL中包含用户自定义的存储过程或函数,是否自动对存储过程或函数进行重编译,自动重编译能够让opengauss正确处理存储过程或函数中的无效值,但是对存储过程或函数的执行性能会带来一定的影响。

  • error_for_division_by_zero:控制除数为0时是否报错(包含 /moddiv等除法含义的操作符),最终除0的表现还受严格模式的控制。

    参数表现
    error_for_division_by_zero, sql_mode_strict除数为0,在SELECT场景下告警,其余场景报错
    error_for_division_by_zero除数为0,告警
    sql_mode_strict除数为0,无报错,无告警
    --除数为0,无报错,无告警
  • block_return_multi_results: 控制在使用CALL语法调用存储过程时,存储过程中可以使用select语句进行查询并返回查询语句的结果。当不设置此参数时,存储过程中的查询语在执行时会报错,开启参数后,可以正常执行并立刻返回此查询语句的结果集,不等待存储过程执行完毕。开启后,使用CALL语法调用存储过程时,限制出参必须为用户自定义变量的格式。

  • treat_bxconst_as_binary: 控制b''、x''字符串在词法分析时的默认类型。当设置此参数时,将b''、x''数据作为binary类型进行存储和使用。当不设置此参数时,将b''、x''数据作为bit类型进行存储和使用。

    语句不设置treat_bxconst_as_binary表现设置treat_bxconst_as_binary表现Mysql表现
    select b'110010'50'2'2
    select conv(b'110010', 16, 10)5022
    select b'110010' + 1;51351
    create table t_bit(a bit(16));
    insert into t_bit values(b'11001000110010');
    select conv(a, 16, 10) from t_bit;
    128503412850
  • not_escape_zero_in_binary:对于binary类型是否取消将\0字符转义成\000字符输出,该参数只影响JDBC的输出结果,具体表现如下所示:

    select cast('2024' as binary(10))
    --开启not_escape_zero_in_binary时候的输出结果结果如下:
    32303234000000000000
    
    --关闭not_escape_zero_in_binary时候的输出结果结果如下:
    323032345C3030305C3030305C3030305C3030305C3030305C303030
    

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

示例

--创建表test1。
openGauss=# CREATE TABLE test1
(
  a1 smallint not null,
  a2 int not null,
  a3 bigint not null,
  a4 float not null,
  a5 double not null,
  a6 numeric not null,
  a7 varchar(5) not null
);
CREATE TABLE
--向表中插入记录失败。
openGauss=# insert into test1(a1,a2) values(123412342342314,3453453453434324);
ERROR:  smallint out of range
CONTEXT:  referenced column: a1
--查询表失败
openGauss=# select a1,a2 from test1 group by a1;
ERROR:  column "test1.a2" must appear in the GROUP BY clause or be used in an aggregate function
LINE 1: select a1,a2 from test1 group by a1;

--向表中插入记录成功。
openGauss=# set dolphin.sql_mode = '';
SET
openGauss=# insert into test1(a1,a2) values(123412342342314,3453453453434324);
WARNING:  invalid input syntax for numeric: ""
CONTEXT:  referenced column: a6
WARNING:  smallint out of range
CONTEXT:  referenced column: a1
WARNING:  integer out of range
CONTEXT:  referenced column: a2
INSERT 0 1
--查询表成功
openGauss=# select a1,a2 from test1 group by a1;
  a1   |     a2
-------+------------
 32767 | 2147483647
(1 row)

--删除表
openGauss=# DROP TABLE test1;
DROP TABLE

--ansi_quotes效果展示
openGauss=# create database test_db dbcompatibility 'B';
CREATE DATABASE
openGauss=# \c test_db 
Non-SSL connection (SSL connection is recommended when requiring high-security)
You are now connected to database "test_db" as user "luozihao".
test_db=# show dolphin.sql_mode ;
                                           dolphin.sql_mode                                           
------------------------------------------------------------------------------------------------------
 sql_mode_strict,sql_mode_full_group,pipes_as_concat,ansi_quotes,no_zero_date,pad_char_to_full_length
(1 row)

test_db=# create table test(a varchar(20));
CREATE TABLE
test_db=# insert into test values('test');
INSERT 0 1
test_db=# select "a" from test;
  a   
------
 test
(1 row)

test_db=# set dolphin.sql_mode to 'sql_mode_strict,sql_mode_full_group,pipes_as_concat,no_zero_date,pad_char_to_full_length';
SET
test_db=# select "a" from test;
 ?column? 
----------
 a
(1 row)

-- block_return_multi_results 效果展示 

test_db=# set dolphin.sql_mode to 'block_return_multi_results';
SET
test_db=# create table tab_1143768(id int,pid int,a1 char(8));
CREATE TABLE
test_db=# insert into tab_1143768 values(1,2,'s'),(2,3,'b'),(3,4,'c'),(4,5,'d');
INSERT 0 4
--创建存储过程,包含查询语句

test_db=# create or replace procedure pro_1143768()
 as
 begin
 select * from tab_1143768 ;
 end;
 /
CREATE PROCEDURE
test_db=# call pro_1143768();
 id | pid | a1
----+-----+----
  1 |   2 | s
  2 |   3 | b
  3 |   4 | c
  4 |   5 | d
(4 rows)

CALL

dolphin.b_db_timestamp

参数说明:参数值为浮点数,该参数影响dolphin中的curdate/current_time/curtime/current_timestamp/localtime/localtimestamp/now函数。当此参数值为0时,以上函数返回当前日期或时间;若参数值位于区间[1,2147483647],则上述函数以该GUC参数的值作为秒数偏移,返回1970年01月01日 00:00:00 UTC + 秒数偏移 + 当前时区偏移的对应日期或时间。设置此参数时,若值不在上述合法区间内,会报错。

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:0∪[1.0, 2147483647.0]

默认值:0

示例

openGauss=# show dolphin.b_db_timestamp;
 b_db_timestamp
----------------
 0
(1 row)

openGauss=# select now();
        now()
---------------------
 2022-09-18 19:52:23
(1 row)

openGauss=# set dolphin.b_db_timestamp = 1.0;
SET
openGauss=# select now();
        now()
---------------------
 1970-01-01 08:00:01
(1 row)

dolphin.default_week_format

参数说明:参数值为整数,该参数影响dolphin插件中的week函数,该参数的取值范围为[0,7],分别对应8种不同的计算策略,这些策略的详细内容参见时间/日期函数中的week函数说明。当此GUC参数设置的值超过对应边界值时,会报warning,并且将此GUC参数的值设置为对应边界值。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围:[0, 7]

默认值:0

示例

openGauss=# show dolphin.default_week_format;
dolphin.default_week_format
---------------------
0
(1 row)

openGauss=# select week('2000-1-1');
week
------
    0
(1 row)

openGauss=# alter system set dolphin.default_week_format = 2;
ALTER SYSTEM SET

openGauss=# select week('2000-1-1');
week
------
52
(1 row)

dolphin.lc_time_names

参数说明:参数值为字符串,该参数控制dolphin插件中dayname/monthname函数以何种语言输出结果。该参数的取值有111种。设置参数时,若值不在合法取值范围内,则会报错。

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

取值范围: lc_time_names语言集有如下可供选择的值:

参数值语言集
ar_AEArabic - United Arab Emirates
ar_BHArabic - Bahrain
ar_DZArabic - Algeria
ar_EGArabic - Egypt
ar_INArabic - India
ar_IQArabic - Iraq
ar_JOArabic - Jordan
ar_KWArabic - Kuwait
ar_LBArabic - Lebanon
ar_LYArabic - Libya
ar_MAArabic - Morocco
ar_OMArabic - Oman
ar_QAArabic - Qatar
ar_SAArabic - Saudi Arabia
ar_SDArabic - Sudan
ar_SYArabic - Syria
ar_TNArabic - Tunisia
ar_YEArabic - Yemen
be_BYBelarusian - Belarus
bg_BGBulgarian - Bulgaria
ca_ESCatalan - Spain
cs_CZCzech - Czech Republic
da_DKDanish - Denmark
de_ATGerman - Austria
de_BEGerman - Belgium
de_CHGerman - Switzerland
de_DEGerman - Germany
de_LUGerman - Luxembourg
el_GRGreek - Greece
en_AUEnglish - Australia
en_CAEnglish - Canada
en_GBEnglish - United Kingdom
en_INEnglish - India
en_NZEnglish - New Zealand
en_PHEnglish - Philippines
en_USEnglish - United States
en_ZAEnglish - South Africa
en_ZWEnglish - Zimbabwe
es_ARSpanish - Argentina
es_BOSpanish - Bolivia
es_CLSpanish - Chile
es_COSpanish - Colombia
es_CRSpanish - Costa Rica
es_DOSpanish - Dominican Republic
es_ECSpanish - Ecuador
es_ESSpanish - Spain
es_GTSpanish - Guatemala
es_HNSpanish - Honduras
es_MXSpanish - Mexico
es_NISpanish - Nicaragua
es_PASpanish - Panama
es_PESpanish - Peru
es_PRSpanish - Puerto Rico
es_PYSpanish - Paraguay
es_SVSpanish - El Salvador
es_USSpanish - United States
es_UYSpanish - Uruguay
es_VESpanish - Venezuela
et_EEEstonian - Estonia
eu_ESBasque - Spain
fi_FIFinnish - Finland
fo_FOFaroese - Faroe Islands
fr_BEFrench - Belgium
fr_CAFrench - Canada
fr_CHFrench - Switzerland
fr_FRFrench - France
fr_LUFrench - Luxembourg
gl_ESGalician - Spain
gu_INGujarati - India
he_ILHebrew - Israel
hi_INHindi - India
hr_HRCroatian - Croatia
hu_HUHungarian - Hungary
id_IDIndonesian - Indonesia
is_ISIcelandic - Iceland
it_CHItalian - Switzerland
it_ITItalian - Italy
ja_JPJapanese - Japan
ko_KRKorean - Republic of Korea
lt_LTLithuanian - Lithuania
lv_LVLatvian - Latvia
mk_MKMacedonian - North Macedonia
mn_MNMongolia - Mongolian
ms_MYMalay - Malaysia
nb_NONorwegian(Bokmål) - Norway
nl_BEDutch - Belgium
nl_NLDutch - The Netherlands
no_NONorwegian - Norway
pl_PLPolish - Poland
pt_BRPortugese - Brazil
pt_PTPortugese - Portugal
rm_CHRomansh - Switzerland
ro_RORomanian - Romania
ru_RURussian - Russia
ru_UARussian - Ukraine
sk_SKSlovak - Slovakia
sl_SISlovenian - Slovenia
sq_ALAlbanian - Albania
sr_RSSerbian - Serbia
sv_FISwedish - Finland
sv_SESwedish - Sweden
ta_INTamil - India
te_INTelugu - India
th_THThai - Thailand
tr_TRTurkish - Turkey
uk_UAUkrainian - Ukraine
ur_PKUrdu - Pakistan
vi_VNVietnamese - Vietnam
zh_CNChinese - China
zh_HKChinese - Hong Kong
zh_TWChinese - Taiwan

默认值:'en_US'

示例

openGauss=# select dayname('2000-1-1');
dayname
----------
Saturday
(1 row)

openGauss=# alter system set dolphin.lc_time_names = 'zh_CN';
ALTER SYSTEM SET

openGauss=# select dayname('2000-1-1');
dayname
---------
星期六
(1 row)

dolphin.b_compatibility_mode

参数说明:参数值为布尔类型,该参数影响dolphin插件中的部分冲突的函数和操作符等,参数开启时这些函数和操作符会执行兼容性逻辑,关闭时则保持openGauss原有的逻辑。

当前影响的操作符有:

  1. 四则运算操作符兼容
  2. (字符类型异或) ^
  3. (数字类型异或) ^
  4. &&
  5. #
  6. !
  7. JSON操作符

影响的函数有:

  1. LAST_DAY
  2. TIMESTAMPDIFF
  3. FORMAT
  4. EXTRACT
  5. CAST
  6. exp
  7. convert
  8. json_object

其他影响的功能:

  1. ?
  2. CREATE INDEX
  3. TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB的输入功能
  4. 影响日期类型时间类型(Date、Time、Timestamp、DateTime等)显式转换或者Function转换时输入值为非法值时的输出值
  5. 默认排序功能:控制ORDER BY排序中NULL是否为最小值。ON表示NULL为最小值,OFF表示保持内核原有能力:NULL为最大值。
  6. 数据类型转换
  7. CREAET DATABASE
  8. ALTER DATABASE
  9. DROP DATABASE
  10. SELECT
  11. IS [NOT] UNKNOWN子句:该子句含义为判断是否为空,参数控制是否转换为bool类型之后再判断。ON表示不转换,OFF表示转换。
  12. 布尔类型

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:布尔型

  • on表示使用新增兼容性功能。
  • off表示关闭兼容性功能,使用内核原有功能。

默认值:on

version_comment

参数说明:该参数目前为只读参数,且未实现其具体意义。参数值为字符串类型,表示数据库服务端及许可证信息。

该参数目前属于INTERNAL类型参数,用户无法对其进行设置。

取值范围:字符串

默认值:openGauss Server(MulanPSL-2.0)

auto_increment_increment

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示自增列的自增步长。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1, 65535]

默认值:1

示例

--设置auto_increment_increment为1
openGauss=# set auto_increment_increment = 1;
WARNING:  Variable 'auto_increment_increment' has no actual meaning.
SET
--设置auto_increment_increment为default
openGauss=# set auto_increment_increment = default;
SET

character_set_client

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示客户端使用该字符集。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:utf8

示例

--设置character_set_client为uft8
openGauss=# set character_set_client = uft8;
WARNING:  Variable 'character_set_client' has no actual meaning.
SET
--设置character_set_client为default
openGauss=# set auto_increment_increment = default;
SET

character_set_results

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示服务端使用该字符集向客户端返回查询结果。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:utf8

示例

--设置character_set_results为utf8
openGauss=# set character_set_results = utf8;
set lower_case_table_names = default;
SETWARNING:  Variable 'character_set_results' has no actual meaning.
SET
--设置character_set_results为default
openGauss=# set character_set_results = default;
SET

character_set_server

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示服务端使用该字符集。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:latin1

示例

--设置character_set_server为latin1
openGauss=# set character_set_server = latin1;
WARNING:  Variable 'character_set_server' has no actual meaning.
SET
--设置character_set_server为default
openGauss=# set character_set_server = default;
SET

collation_server

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示服务端使用该排序规则。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:latin1_swedish_ci

示例

--设置collation_server为latin1_swedish_ci
openGauss=# set collation_server = latin1_swedish_ci;
WARNING:  Variable 'collation_server' has no actual meaning.
SET
--设置collation_server为defalut
openGauss=# set collation_server = default;
SET

init_connect

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示连接初始化时执行的SQL语句。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:无

示例

--设置init_connect为'init_connect'
openGauss=# set init_connect = 'init_connect';
WARNING:  Variable 'init_connect' has no actual meaning.
SET
--设置init_connect为default
openGauss=# set init_connect = default;
SET

interactive_timeout

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示交互式连接在持续无活动该秒数后,服务端会将其关闭。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1, 31536000]

默认值:28800

示例

--设置interactive_timeout为28800
openGauss=# set interactive_timeout = 28800;
WARNING:  Variable 'interactive_timeout' has no actual meaning.
SET
--设置interactive_timeout为default
openGauss=# set interactive_timeout = default;
SET

license

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示服务端使用该许可证。

该参数目前属于USERSET类型参数,但设置参数值时会报错(将参数设置为default时不会报错)。

取值范围:字符串

默认值:MulanPSL-2.0

示例

--设置license为'MulanPSL-2.0'
openGauss=# set license = 'MulanPSL-2.0';
ERROR:  Variable 'license' is a read only variable.
--设置license为default
openGauss=# set license = default;
SET

max_allowed_packet

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示数据包的大小上限(字节)。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1024, 1073741824]

默认值:4194304

示例

--设置max_allowed_packet为4194304
openGauss=# set max_allowed_packet = 4194304;
WARNING:  Variable 'max_allowed_packet' has no actual meaning.
SET
--设置max_allowed_packet为default
openGauss=# set max_allowed_packet = default;
SET

net_buffer_length

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示缓冲区的默认大小,缓冲区的大小可以动态的扩张到max_allowed_packet,并在SQL语句结束后还原。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1024, 1048576]

默认值:16384

示例

--设置net_buffer_length为16384
openGauss=# set net_buffer_length = 16384;
WARNING:  Variable 'net_buffer_length' has no actual meaning.
SET
--设置net_buffer_length为default
openGauss=# set net_buffer_length = default;
SET

net_write_timeout

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示在等待写入该秒数后,服务端会将其中止。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1, 31536000]

默认值:60

示例

--设置net_write_timeout为60
openGauss=# set net_write_timeout = 60;
WARNING:  Variable 'net_write_timeout' has no actual meaning.
SET
--设置net_write_timeout为default
openGauss=# set net_write_timeout = default;
SET

query_cache_size

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示在缓存查询结果时,分配的内存大小(字节)。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[0, 9223372036854775807]

默认值:1048576

示例

--设置query_cache_size为1048576
openGauss=# set query_cache_size = 1048576;
WARNING:  Variable 'query_cache_size' has no actual meaning.
SET
--设置query_cache_size为default
openGauss=# set query_cache_size = default;
SET

query_cache_type

参数说明:该参数目前未实现其具体意义。参数值为整数类型,表示查询缓存的类型。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[0, 2]

默认值:0

示例

--设置query_cache_type为0
openGauss=# set query_cache_type = 0;
WARNING:  Variable 'query_cache_type' has no actual meaning.
SET
--设置query_cache_type为default
openGauss=# set query_cache_type = default;
SET

system_time_zone

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示服务器系统时区。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

默认值:无

示例

--设置system_time_zone为'system_time_zone'
openGauss=# set system_time_zone = 'system_time_zone';
WARNING:  Variable 'system_time_zone' has no actual meaning.
SET
--设置system_time_zone为default
openGauss=# set system_time_zone = default;
SET

time_zone

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示当前时区。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[-12:59, +13:00]

默认值:SYSTEM

示例

--设置time_zone为SYSTEM
openGauss=# set time_zone = SYSTEM;
WARNING:  Variable 'time_zone' has no actual meaning.
SET
--设置time_zone为default
openGauss=# set time_zone = default;
SET

wait_timeout

参数说明:该参数目前未实现其具体意义。参数值为字符串类型,表示非交互式连接在持续无活动该秒数后,服务端会将其关闭。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[1, 31536000]

默认值:28800

示例

--设置wait_timeout为28800
openGauss=# set wait_timeout = 28800;
WARNING:  Variable 'wait_timeout' has no actual meaning.
SET
--设置wait_timeout为default
openGauss=# set wait_timeout = default;
SET

dolphin.lower_case_table_names

参数说明:该参数用于控制用户名、表名、视图名、模式名的大小写敏感;为0时大小写敏感,>0时为大小写不敏感

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[0, 2]

默认值:1

dolphin.default_database_name

参数说明:dolphin协议插件默认使用的opengauss数据库实例名称

该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。

须知:

  • 当加载了dophin插件,并且开启了dolphin数据库协议后,可以使用此功能。
  • 由于opengauss的database同mysql的database体系不一致,因此dophin需要选择一个opengauss的数据库实例。

取值范围:字符串

默认值:加载dolphin协议插件时,当前会话的database_name

dolphin.optimizer_switch

参数说明:控制优化器行为,该参数是一系列控制选项的集合。当前支持的控制选项如下:

选项名默认功能
use_invisible_indexoff控制是否使用不可见索引

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:字符串

有效取值: 各选项以逗号隔开,如下。

optimizer_switch='command[,command]…'

command描述
default将所有控制选项设为其默认值
opt_name = default将指定控制选项设为其默认值
opt_name = off将指定控制选项设为关闭
opt_name = on将指定控制选项设为打开

默认值:default

示例

-- 设置use_invisible_index为on
openGauss=# set dolphin.optimizer_switch = 'use_invisible_index = on';

-- 设置dolphin.optimizer_switch为defalut,表示所有控制选项都设置为默认值
openGauss=# set dolphin.optimizer_switch = 'default';

-- 表示仅设置use_invisible_index选项为默认值
openGauss=# set dolphin.optimizer_switch = 'use_invisible_index = default';

dolphin.div_precision_increment

参数说明:此变量指定使用/运算符执行除法运算的结果的小数位数。

该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

须知:

该参数用于提供除法运算结果的小数位数,在通过该参数以及入参计算出小数位数之后,与openGauss原生计算的小数位数进行对比,获取两者中的较大值作为计算结果的小数位数。大多数情况下openGauss的小数位数会比MySQL高,所以该参数在设置的值不大的情况下效果暂时不明显。

取值范围:[0, 30]

默认值:4

sql_note

参数说明:设置show warnings是否显示Note级别的信息开关。

取值范围:布尔型

默认值:ON

示例

openGauss=# show sql_note;
 sql_note
----------
 on
(1 row)

sql_mode

参数说明:该参数目前未实现其具体意义。请使用dolphin.sql_mode。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

示例

--设置sql_mode为'sql_mode_strict,sql_mode_full_group,pipes_as_concat,ansi_quotes,no_zero_date,pad_char_to_full_length'
openGauss=# set sql_mode = 'sql_mode_strict,sql_mode_full_group,pipes_as_concat,ansi_quotes,no_zero_date,pad_char_to_full_length';
WARNING:  Variable 'sql_mode' has no actual meaning, please use variable 'dolphin.sql_mode'.
SET
--设置sql_mode为default
openGauss=# set sql_mode = default;
SET

lower_case_table_names

参数说明:该参数目前未实现其具体意义。请使用dolphin.lower_case_table_names。

该参数目前属于USERSET类型参数,请参考表1中对应设置方法进行设置。

取值范围:[0, 2]

默认值:1

示例

--设置lower_case_table_names为1
openGauss=# set lower_case_table_names = 1;
WARNING:  Variable 'lower_case_table_names' has no actual meaning, please use variable 'dolphin.lower_case_table_names'.
SET
--设置lower_case_table_names为default
openGauss=# set lower_case_table_names = default;
SET

b_compatibility_show_warning_count

参数说明:控制show warnings/erros语句,输出的error, warning, note信息的最大数量,默认值是64,该参数范围是0~65535。

取值范围:整数型

默认值:64

示例

openGauss=# show max_error_count;
 max_error_count
-----------------
 64
(1 row)
意见反馈
编组 3备份
    openGauss 2024-04-21 00:42:28
    取消