[FEAT MERGE] 424 SQL compatibility patch 433

Co-authored-by: wjhh2008 <wjh2006-1@163.com>
Co-authored-by: GongYusen <986957406@qq.com>
Co-authored-by: hy-guo <fqboyg@gmail.com>
This commit is contained in:
jingtaoye35
2024-08-23 03:32:01 +00:00
committed by ob-robot
parent cb61323917
commit e537a0c479
296 changed files with 21588 additions and 4122 deletions

File diff suppressed because it is too large Load Diff

View File

@ -13,9 +13,9 @@ gbk_chinese_ci gbk 28 Yes Yes 1
gbk_bin gbk 87 Yes 1
utf16_general_ci utf16 54 Yes Yes 1
utf16_bin utf16 55 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf16_unicode_ci utf16 101 Yes 1
gb18030_chinese_ci gb18030 248 Yes Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf16_unicode_ci utf16 101 Yes 8
gb18030_chinese_ci gb18030 248 Yes Yes 2
gb18030_bin gb18030 249 Yes 1
latin1_swedish_ci latin1 8 Yes Yes 1
latin1_bin latin1 47 Yes 1
@ -26,6 +26,14 @@ gb18030_2022_radical_ci gb18030_2022 219 Yes 1
gb18030_2022_radical_cs gb18030_2022 220 Yes 1
gb18030_2022_stroke_ci gb18030_2022 221 Yes 1
gb18030_2022_stroke_cs gb18030_2022 222 Yes 1
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
ascii_general_ci ascii 11 Yes Yes 1
ascii_bin ascii 65 Yes 1
tis620_thai_ci tis620 18 Yes Yes 1
tis620_bin tis620 89 Yes 1
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
SHOW CHARACTER SET;
Charset Description Default collation Maxlen
binary Binary pseudo charset binary 1
@ -35,4 +43,6 @@ utf16 UTF-16 Unicode utf16_general_ci 2
gb18030 GB18030 charset gb18030_chinese_ci 4
latin1 cp1252 West European latin1_swedish_ci 1
gb18030_2022 GB18030-2022 charset gb18030_2022_chinese_ci 4
ascii US ASCII ascii_general_ci 1
tis620 TIS620 Thai tis620_thai_ci 1
SET NAMES latin1;

View File

@ -7,9 +7,9 @@ gbk_chinese_ci gbk 28 Yes Yes 1
gbk_bin gbk 87 Yes 1
utf16_general_ci utf16 54 Yes Yes 1
utf16_bin utf16 55 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf16_unicode_ci utf16 101 Yes 1
gb18030_chinese_ci gb18030 248 Yes Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf16_unicode_ci utf16 101 Yes 8
gb18030_chinese_ci gb18030 248 Yes Yes 2
gb18030_bin gb18030 249 Yes 1
latin1_swedish_ci latin1 8 Yes Yes 1
latin1_bin latin1 47 Yes 1
@ -20,6 +20,14 @@ gb18030_2022_radical_ci gb18030_2022 219 Yes 1
gb18030_2022_radical_cs gb18030_2022 220 Yes 1
gb18030_2022_stroke_ci gb18030_2022 221 Yes 1
gb18030_2022_stroke_cs gb18030_2022 222 Yes 1
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
ascii_general_ci ascii 11 Yes Yes 1
ascii_bin ascii 65 Yes 1
tis620_thai_ci tis620 18 Yes Yes 1
tis620_bin tis620 89 Yes 1
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
show collation;
Collation Charset Id Default Compiled Sortlen
utf8mb4_general_ci utf8mb4 45 Yes Yes 1
@ -29,9 +37,9 @@ gbk_chinese_ci gbk 28 Yes Yes 1
gbk_bin gbk 87 Yes 1
utf16_general_ci utf16 54 Yes Yes 1
utf16_bin utf16 55 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf16_unicode_ci utf16 101 Yes 1
gb18030_chinese_ci gb18030 248 Yes Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf16_unicode_ci utf16 101 Yes 8
gb18030_chinese_ci gb18030 248 Yes Yes 2
gb18030_bin gb18030 249 Yes 1
latin1_swedish_ci latin1 8 Yes Yes 1
latin1_bin latin1 47 Yes 1
@ -42,6 +50,14 @@ gb18030_2022_radical_ci gb18030_2022 219 Yes 1
gb18030_2022_radical_cs gb18030_2022 220 Yes 1
gb18030_2022_stroke_ci gb18030_2022 221 Yes 1
gb18030_2022_stroke_cs gb18030_2022 222 Yes 1
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
ascii_general_ci ascii 11 Yes Yes 1
ascii_bin ascii 65 Yes 1
tis620_thai_ci tis620 18 Yes Yes 1
tis620_bin tis620 89 Yes 1
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
show collation test;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use near 'test' at line 1
SHOW CHARACTER SET;
@ -53,6 +69,8 @@ utf16 UTF-16 Unicode utf16_general_ci 2
gb18030 GB18030 charset gb18030_chinese_ci 4
latin1 cp1252 West European latin1_swedish_ci 1
gb18030_2022 GB18030-2022 charset gb18030_2022_chinese_ci 4
ascii US ASCII ascii_general_ci 1
tis620 TIS620 Thai tis620_thai_ci 1
SHOW CHARACTER SET;
Charset Description Default collation Maxlen
binary Binary pseudo charset binary 1
@ -62,6 +80,8 @@ utf16 UTF-16 Unicode utf16_general_ci 2
gb18030 GB18030 charset gb18030_chinese_ci 4
latin1 cp1252 West European latin1_swedish_ci 1
gb18030_2022 GB18030-2022 charset gb18030_2022_chinese_ci 4
ascii US ASCII ascii_general_ci 1
tis620 TIS620 Thai tis620_thai_ci 1
SHOW CHARACTER SET test;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use near 'test' at line 1
set names utf8;

View File

@ -354,7 +354,8 @@ ERROR 42S02: 'view.v2' contains view recursion
select * from v3;
ERROR 42S02: 'view.v2' contains view recursion
SET optimizer_switch = (SELECT variable_value FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME = 'optimizer_switch');
ERROR 0A000: subqueries or stored function calls here not supported
Warnings:
Warning 1235 This system variable now is mock not supported
drop table if exists t1,t2;
drop view if exists v1;
create table t1(c1 int,c2 int);

View File

@ -435,7 +435,6 @@ select * from v3;
## 主要测试在非select语句引用select_stmt(view展开)的问题,select结果作为其它stmt的输入暂时不支持,
## 这里仅仅针对bug加入回归case
#
--error 1235
SET optimizer_switch = (SELECT variable_value FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME = 'optimizer_switch');
--disable_warnings
drop table if exists t1,t2;

View File

@ -234,7 +234,7 @@ collation(replace(null, b, 'a'))
binary
select collation(replace(uc, b, ub)) from coll_test;
collation(replace(uc, b, ub))
binary
utf8mb4_general_ci
select collation(replace(ub, uc, ub)) from coll_test;
collation(replace(ub, uc, ub))
utf8mb4_bin
@ -252,7 +252,7 @@ collation(replace(null, b, 'a'))
binary
select collation(replace(uc, b, ub)) from coll_test;
collation(replace(uc, b, ub))
binary
utf8mb4_general_ci
select collation(replace(ub, uc, ub)) from coll_test;
collation(replace(ub, uc, ub))
utf8mb4_bin

View File

@ -6348,9 +6348,9 @@ select 'a' collate gbk_chinese_ci regexp 'A' collate gbk_chinese_ci;
'a' collate gbk_chinese_ci regexp 'A' collate gbk_chinese_ci
1
select 'a' collate gbk_bin regexp 'A' collate gbk_chinese_ci;
ERROR HY000: Illegal mix of collations
ERROR HY000: Illegal mix of collations (gbk_bin,EXPLICIT), (gbk_chinese_ci,EXPLICIT)
select 'a' collate gbk_chinese_ci regexp 'A' collate gbk_bin;
ERROR HY000: Illegal mix of collations
ERROR HY000: Illegal mix of collations (gbk_chinese_ci,EXPLICIT), (gbk_bin,EXPLICIT)
set names latin1;
select 'a' collate latin1_bin regexp 'A';
'a' collate latin1_bin regexp 'A'
@ -6371,9 +6371,9 @@ select 'a' collate latin1_swedish_ci regexp 'A' collate latin1_swedish_ci;
'a' collate latin1_swedish_ci regexp 'A' collate latin1_swedish_ci
1
select 'a' collate latin1_bin regexp 'A' collate latin1_swedish_ci;
ERROR HY000: Illegal mix of collations
ERROR HY000: Illegal mix of collations (latin1_bin,EXPLICIT), (latin1_swedish_ci,EXPLICIT)
select 'a' collate latin1_swedish_ci regexp 'A' collate latin1_bin;
ERROR HY000: Illegal mix of collations
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,EXPLICIT), (latin1_bin,EXPLICIT)
drop database ly;
create database ly character set GB18030;
use ly;

View File

@ -27,6 +27,16 @@ alert_log_level
all_server_list
arbitration_timeout
archive_lag_target
audit_log_buffer_size
audit_log_compression
audit_log_enable
audit_log_format
audit_log_max_size
audit_log_path
audit_log_prune_seconds
audit_log_query_sql
audit_log_rotate_on_size
audit_log_strategy
audit_sys_operations
audit_trail
autoinc_cache_refresh_interval

View File

@ -8,6 +8,8 @@ utf16 utf16_general_ci UTF-16 Unicode 2
gb18030 gb18030_chinese_ci GB18030 charset 4
latin1 latin1_swedish_ci cp1252 West European 1
gb18030_2022 gb18030_2022_chinese_ci GB18030-2022 charset 4
ascii ascii_general_ci US ASCII 1
tis620 tis620_thai_ci TIS620 Thai 1
select character_set_name, default_collate_name, description, maxlen from character_sets;
character_set_name default_collate_name description maxlen
binary binary Binary pseudo charset 1
@ -17,6 +19,8 @@ utf16 utf16_general_ci UTF-16 Unicode 2
gb18030 gb18030_chinese_ci GB18030 charset 4
latin1 latin1_swedish_ci cp1252 West European 1
gb18030_2022 gb18030_2022_chinese_ci GB18030-2022 charset 4
ascii ascii_general_ci US ASCII 1
tis620 tis620_thai_ci TIS620 Thai 1
select maxlen from character_sets;
maxlen
1
@ -26,6 +30,8 @@ maxlen
4
1
4
1
1
select * from character_sets where character_set_name like '%binary%';
CHARACTER_SET_NAME DEFAULT_COLLATE_NAME DESCRIPTION MAXLEN
binary binary Binary pseudo charset 1

View File

@ -8,9 +8,9 @@ gbk_chinese_ci gbk 28 Yes Yes 1
gbk_bin gbk 87 Yes 1
utf16_general_ci utf16 54 Yes Yes 1
utf16_bin utf16 55 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf16_unicode_ci utf16 101 Yes 1
gb18030_chinese_ci gb18030 248 Yes Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf16_unicode_ci utf16 101 Yes 8
gb18030_chinese_ci gb18030 248 Yes Yes 2
gb18030_bin gb18030 249 Yes 1
latin1_swedish_ci latin1 8 Yes Yes 1
latin1_bin latin1 47 Yes 1
@ -21,6 +21,14 @@ gb18030_2022_radical_ci gb18030_2022 219 Yes 1
gb18030_2022_radical_cs gb18030_2022 220 Yes 1
gb18030_2022_stroke_ci gb18030_2022 221 Yes 1
gb18030_2022_stroke_cs gb18030_2022 222 Yes 1
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
ascii_general_ci ascii 11 Yes Yes 1
ascii_bin ascii 65 Yes 1
tis620_thai_ci tis620 18 Yes Yes 1
tis620_bin tis620 89 Yes 1
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
select collation_name, character_set_name, id, is_default, is_compiled, sortlen from collations;
collation_name character_set_name id is_default is_compiled sortlen
utf8mb4_general_ci utf8mb4 45 Yes Yes 1
@ -30,9 +38,9 @@ gbk_chinese_ci gbk 28 Yes Yes 1
gbk_bin gbk 87 Yes 1
utf16_general_ci utf16 54 Yes Yes 1
utf16_bin utf16 55 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf16_unicode_ci utf16 101 Yes 1
gb18030_chinese_ci gb18030 248 Yes Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf16_unicode_ci utf16 101 Yes 8
gb18030_chinese_ci gb18030 248 Yes Yes 2
gb18030_bin gb18030 249 Yes 1
latin1_swedish_ci latin1 8 Yes Yes 1
latin1_bin latin1 47 Yes 1
@ -43,11 +51,23 @@ gb18030_2022_radical_ci gb18030_2022 219 Yes 1
gb18030_2022_radical_cs gb18030_2022 220 Yes 1
gb18030_2022_stroke_ci gb18030_2022 221 Yes 1
gb18030_2022_stroke_cs gb18030_2022 222 Yes 1
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
ascii_general_ci ascii 11 Yes Yes 1
ascii_bin ascii 65 Yes 1
tis620_thai_ci tis620 18 Yes Yes 1
tis620_bin tis620 89 Yes 1
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
select * from collations where collation_name like '%utf8%';
COLLATION_NAME CHARACTER_SET_NAME ID IS_DEFAULT IS_COMPILED SORTLEN
utf8mb4_general_ci utf8mb4 45 Yes Yes 1
utf8mb4_bin utf8mb4 46 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 1
utf8mb4_unicode_ci utf8mb4 224 Yes 8
utf8mb4_croatian_ci utf8mb4 245 Yes 8
utf8mb4_unicode_520_ci utf8mb4 246 Yes 8
utf8mb4_czech_ci utf8mb4 234 Yes 8
utf8mb4_0900_ai_ci utf8mb4 255 Yes 1
show create table collations;
View Create View character_set_client collation_connection
COLLATIONS CREATE VIEW `COLLATIONS` AS select collation as COLLATION_NAME, charset as CHARACTER_SET_NAME, id as ID, `is_default` as IS_DEFAULT, is_compiled as IS_COMPILED, sortlen as SORTLEN from oceanbase.__tenant_virtual_collation utf8mb4 utf8mb4_general_ci

View File

@ -164,7 +164,7 @@ TABLE_ROWS bigint(20) unsigned NO
AVG_ROW_LENGTH bigint(21) unsigned NO
DATA_LENGTH bigint(20) unsigned NO
MAX_DATA_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(21) unsigned NO
DATA_FREE bigint(0) unsigned NO
AUTO_INCREMENT bigint(0) unsigned NO
CREATE_TIME datetime NO
@ -295,6 +295,42 @@ SOURCE_LINE bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.PROFILING limit 1);
cnt
1
desc information_schema.OPTIMIZER_TRACE;
Field Type Null Key Default Extra
QUERY varchar(200) NO
TRACE varchar(200) NO
MISSING_BYTES_MAX_MEM_SIZE bigint(20) NO
INSUFFICIENT_PRIVILEGES bigint(1) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.OPTIMIZER_TRACE limit 1);
cnt
1
desc information_schema.PLUGINS;
Field Type Null Key Default Extra
PLUGIN_NAME varchar(64) NO
PLUGIN varchar(20) NO
PLUGIN_STATUS varchar(10) NO
PLUGIN_TYPE varchar(80) NO
PLUGIN_TYPE_VERSION varchar(20) NO
PLUGIN_LIBRARY varchar(64) NO
PLUGIN_LIBRARY_VERSION varchar(20) NO
PLUGIN_AUTHOR varchar(64) NO
PLUGIN_DESCRIPTION varchar(200) NO
PLUGIN_LICENSE varchar(80) NO
LOAD_OPTION varchar(64) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.PLUGINS limit 1);
cnt
1
desc information_schema.INNODB_SYS_COLUMNS;
Field Type Null Key Default Extra
TABLE_ID bigint(21) unsigned NO
NAME varchar(193) NO
POS bigint(21) unsigned NO
MTYPE bigint(11) NO
PRTYPE bigint(11) NO
LEN bigint(11) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.INNODB_SYS_COLUMNS limit 1);
cnt
1
desc information_schema.INNODB_FT_BEING_DELETED;
Field Type Null Key Default Extra
DOC_ID bigint(21) unsigned NO
@ -4456,6 +4492,10 @@ PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_CREATE_TABLESPACE varchar(3) NO
PRIV_SHUTDOWN varchar(3) NO
PRIV_RELOAD varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_CREATE_ROLE varchar(3) NO
PRIV_DROP_ROLE varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.DBA_OB_USERS limit 1);
cnt
1
@ -4480,6 +4520,8 @@ PRIV_SHOW_VIEW varchar(3) NO
PRIV_EXECUTE varchar(3) NO
PRIV_ALTER_ROUTINE varchar(3) NO
PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.DBA_OB_DATABASE_PRIVILEGE limit 1);
cnt
1
@ -4761,9 +4803,9 @@ PARTITION_DESCRIPTION text NO
SUBPARTITION_DESCRIPTION text NO
TABLE_ROWS bigint(20) unsigned NO NULL
AVG_ROW_LENGTH bigint(21) unsigned NO NULL
DATA_LENGTH bigint(0) unsigned NO
DATA_LENGTH bigint(20) unsigned NO
MAX_DATA_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(21) unsigned NO
DATA_FREE bigint(0) unsigned NO
CREATE_TIME timestamp(6) YES NULL
UPDATE_TIME datetime NO
@ -5872,7 +5914,7 @@ Db varchar(64) NO NULL
User varchar(32) NO NULL
Routine_name varchar(64) NO NULL
Routine_type varchar(9) NO
Grantor varchar(93) YES NULL
Grantor varchar(93) NO
Proc_priv varchar(27) NO
Timestamp date YES
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.procs_priv limit 1);
@ -5974,6 +6016,21 @@ DEFAULT_ROLE_USER varchar(128) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.default_roles limit 1);
cnt
1
desc mysql.audit_log_filter;
Field Type Null Key Default Extra
NAME varchar(64) NO
FILTER longtext NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.audit_log_filter limit 1);
cnt
1
desc mysql.audit_log_user;
Field Type Null Key Default Extra
USER varchar(128) NO
HOST varchar(128) NO NULL
FILTERNAME varchar(64) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.audit_log_user limit 1);
cnt
1
desc mysql.columns_priv;
Field Type Null Key Default Extra
Host varchar(255) NO
@ -6662,6 +6719,52 @@ SPEED_MBPS bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.V$OB_NIC_INFO limit 1);
cnt
1
desc information_schema.ROLE_TABLE_GRANTS;
Field Type Null Key Default Extra
GRANTOR varchar(97) YES NULL
GRANTOR_HOST varchar(256) YES NULL
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
TABLE_CATALOG varchar(3) NO
TABLE_SCHEMA varchar(64) NO NULL
TABLE_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(90) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_TABLE_GRANTS limit 1);
cnt
1
desc information_schema.ROLE_COLUMN_GRANTS;
Field Type Null Key Default Extra
GRANTOR null NO
GRANTOR_HOST null NO
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
TABLE_CATALOG varchar(3) NO
TABLE_SCHEMA varchar(64) NO NULL
TABLE_NAME varchar(64) NO NULL
COLUMN_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(31) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_COLUMN_GRANTS limit 1);
cnt
1
desc information_schema.ROLE_ROUTINE_GRANTS;
Field Type Null Key Default Extra
GRANTOR varchar(97) YES NULL
GRANTOR_HOST varchar(256) YES NULL
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
SPECIFIC_CATALOG varchar(3) NO
SPECIFIC_SCHEMA varchar(64) NO NULL
SPECIFIC_NAME varchar(64) NO NULL
ROUTINE_CATALOG varchar(3) NO
ROUTINE_SCHEMA varchar(64) NO NULL
ROUTINE_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(27) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_ROUTINE_GRANTS limit 1);
cnt
1
desc mysql.func;
Field Type Null Key Default Extra
name varchar(64) NO NULL

View File

@ -165,7 +165,7 @@ TABLE_ROWS bigint(20) unsigned NO
AVG_ROW_LENGTH bigint(21) unsigned NO
DATA_LENGTH bigint(20) unsigned NO
MAX_DATA_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(21) unsigned NO
DATA_FREE bigint(0) unsigned NO
AUTO_INCREMENT bigint(0) unsigned NO
CREATE_TIME datetime NO
@ -296,6 +296,42 @@ SOURCE_LINE bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.PROFILING limit 1);
cnt
1
desc information_schema.OPTIMIZER_TRACE;
Field Type Null Key Default Extra
QUERY varchar(200) NO
TRACE varchar(200) NO
MISSING_BYTES_MAX_MEM_SIZE bigint(20) NO
INSUFFICIENT_PRIVILEGES bigint(1) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.OPTIMIZER_TRACE limit 1);
cnt
1
desc information_schema.PLUGINS;
Field Type Null Key Default Extra
PLUGIN_NAME varchar(64) NO
PLUGIN varchar(20) NO
PLUGIN_STATUS varchar(10) NO
PLUGIN_TYPE varchar(80) NO
PLUGIN_TYPE_VERSION varchar(20) NO
PLUGIN_LIBRARY varchar(64) NO
PLUGIN_LIBRARY_VERSION varchar(20) NO
PLUGIN_AUTHOR varchar(64) NO
PLUGIN_DESCRIPTION varchar(200) NO
PLUGIN_LICENSE varchar(80) NO
LOAD_OPTION varchar(64) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.PLUGINS limit 1);
cnt
1
desc information_schema.INNODB_SYS_COLUMNS;
Field Type Null Key Default Extra
TABLE_ID bigint(21) unsigned NO
NAME varchar(193) NO
POS bigint(21) unsigned NO
MTYPE bigint(11) NO
PRTYPE bigint(11) NO
LEN bigint(11) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.INNODB_SYS_COLUMNS limit 1);
cnt
1
desc information_schema.INNODB_FT_BEING_DELETED;
Field Type Null Key Default Extra
DOC_ID bigint(21) unsigned NO
@ -6203,6 +6239,10 @@ PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_CREATE_TABLESPACE varchar(3) NO
PRIV_SHUTDOWN varchar(3) NO
PRIV_RELOAD varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_CREATE_ROLE varchar(3) NO
PRIV_DROP_ROLE varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.DBA_OB_USERS limit 1);
cnt
1
@ -6254,6 +6294,10 @@ PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_CREATE_TABLESPACE varchar(3) NO
PRIV_SHUTDOWN varchar(3) NO
PRIV_RELOAD varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_CREATE_ROLE varchar(3) NO
PRIV_DROP_ROLE varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.CDB_OB_USERS limit 1);
cnt
1
@ -6278,6 +6322,8 @@ PRIV_SHOW_VIEW varchar(3) NO
PRIV_EXECUTE varchar(3) NO
PRIV_ALTER_ROUTINE varchar(3) NO
PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.DBA_OB_DATABASE_PRIVILEGE limit 1);
cnt
1
@ -6303,6 +6349,8 @@ PRIV_SHOW_VIEW varchar(3) NO
PRIV_EXECUTE varchar(3) NO
PRIV_ALTER_ROUTINE varchar(3) NO
PRIV_CREATE_ROUTINE varchar(3) NO
PRIV_REFERENCES varchar(3) NO
PRIV_TRIGGER varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.CDB_OB_DATABASE_PRIVILEGE limit 1);
cnt
1
@ -6605,9 +6653,9 @@ PARTITION_DESCRIPTION text NO
SUBPARTITION_DESCRIPTION text NO
TABLE_ROWS bigint(20) unsigned NO NULL
AVG_ROW_LENGTH bigint(21) unsigned NO NULL
DATA_LENGTH bigint(0) unsigned NO
DATA_LENGTH bigint(20) unsigned NO
MAX_DATA_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(21) unsigned NO
DATA_FREE bigint(0) unsigned NO
CREATE_TIME timestamp(6) YES NULL
UPDATE_TIME datetime NO
@ -8352,7 +8400,7 @@ Db varchar(64) NO NULL
User varchar(32) NO NULL
Routine_name varchar(64) NO NULL
Routine_type varchar(9) NO
Grantor varchar(93) YES NULL
Grantor varchar(93) NO
Proc_priv varchar(27) NO
Timestamp date YES
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.procs_priv limit 1);
@ -8551,6 +8599,21 @@ LAST_USED varchar(128) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.CDB_INDEX_USAGE limit 1);
cnt
1
desc mysql.audit_log_filter;
Field Type Null Key Default Extra
NAME varchar(64) NO
FILTER longtext NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.audit_log_filter limit 1);
cnt
1
desc mysql.audit_log_user;
Field Type Null Key Default Extra
USER varchar(128) NO
HOST varchar(128) NO NULL
FILTERNAME varchar(64) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from mysql.audit_log_user limit 1);
cnt
1
desc mysql.columns_priv;
Field Type Null Key Default Extra
Host varchar(255) NO
@ -9469,6 +9532,52 @@ SPEED_MBPS bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.V$OB_NIC_INFO limit 1);
cnt
1
desc information_schema.ROLE_TABLE_GRANTS;
Field Type Null Key Default Extra
GRANTOR varchar(97) YES NULL
GRANTOR_HOST varchar(256) YES NULL
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
TABLE_CATALOG varchar(3) NO
TABLE_SCHEMA varchar(64) NO NULL
TABLE_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(90) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_TABLE_GRANTS limit 1);
cnt
1
desc information_schema.ROLE_COLUMN_GRANTS;
Field Type Null Key Default Extra
GRANTOR null NO
GRANTOR_HOST null NO
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
TABLE_CATALOG varchar(3) NO
TABLE_SCHEMA varchar(64) NO NULL
TABLE_NAME varchar(64) NO NULL
COLUMN_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(31) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_COLUMN_GRANTS limit 1);
cnt
1
desc information_schema.ROLE_ROUTINE_GRANTS;
Field Type Null Key Default Extra
GRANTOR varchar(97) YES NULL
GRANTOR_HOST varchar(256) YES NULL
GRANTEE varchar(32) NO NULL
GRANTEE_HOST varchar(255) NO
SPECIFIC_CATALOG varchar(3) NO
SPECIFIC_SCHEMA varchar(64) NO NULL
SPECIFIC_NAME varchar(64) NO NULL
ROUTINE_CATALOG varchar(3) NO
ROUTINE_SCHEMA varchar(64) NO NULL
ROUTINE_NAME varchar(64) NO NULL
PRIVILEGE_TYPE varchar(27) NO
IS_GRANTABLE varchar(3) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from information_schema.ROLE_ROUTINE_GRANTS limit 1);
cnt
1
desc mysql.func;
Field Type Null Key Default Extra
name varchar(64) NO NULL

View File

@ -9431,6 +9431,29 @@ last_flush_time timestamp(6) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_index_usage_info;
IF(count(*) >= 0, 1, 0)
1
desc oceanbase.__all_virtual_audit_log_filter;
Field Type Null Key Default Extra
tenant_id bigint(20) NO PRI NULL
filter_name varbinary(256) NO PRI NULL
gmt_create timestamp(6) NO NULL
gmt_modified timestamp(6) NO NULL
definition longtext NO NULL
is_deleted bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_audit_log_filter;
IF(count(*) >= 0, 1, 0)
1
desc oceanbase.__all_virtual_audit_log_user;
Field Type Null Key Default Extra
tenant_id bigint(20) NO PRI NULL
user_name varbinary(512) NO PRI NULL
host varchar(128) NO PRI NULL
gmt_create timestamp(6) NO NULL
gmt_modified timestamp(6) NO NULL
filter_name varbinary(256) NO NULL
is_deleted bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_audit_log_user;
IF(count(*) >= 0, 1, 0)
1
desc oceanbase.__all_virtual_column_privilege;
Field Type Null Key Default Extra
tenant_id bigint(20) NO PRI NULL

View File

@ -290,6 +290,8 @@ select 0xffffffffff & table_id, table_name, table_type, database_id, part_num fr
499 __all_transfer_partition_task_history 0 201001 1
500 __all_tenant_snapshot_job 0 201001 1
502 __all_trusted_root_certificate 0 201001 1
503 __all_audit_log_filter 0 201001 1
504 __all_audit_log_user 0 201001 1
505 __all_column_privilege 0 201001 1
506 __all_column_privilege_history 0 201001 1
507 __all_tenant_snapshot_ls_replica_history 0 201001 1
@ -740,6 +742,8 @@ select 0xffffffffff & table_id, table_name, table_type, database_id, part_num fr
12456 __all_virtual_dbms_lock_allocated 2 201001 1
12458 __all_virtual_ls_snapshot 2 201001 1
12459 __all_virtual_index_usage_info 2 201001 1
12460 __all_virtual_audit_log_filter 2 201001 1
12461 __all_virtual_audit_log_user 2 201001 1
12462 __all_virtual_column_privilege 2 201001 1
12463 __all_virtual_column_privilege_history 2 201001 1
12464 __all_virtual_tenant_snapshot_ls_replica_history 2 201001 1
@ -773,6 +777,9 @@ select 0xffffffffff & table_id, table_name, table_type, database_id, part_num fr
20014 ENGINES 1 201002 1
20015 ROUTINES 1 201002 1
20016 PROFILING 1 201002 1
20017 OPTIMIZER_TRACE 1 201002 1
20018 PLUGINS 1 201002 1
20019 INNODB_SYS_COLUMNS 1 201002 1
20020 INNODB_FT_BEING_DELETED 1 201002 1
20021 INNODB_FT_CONFIG 1 201002 1
20022 INNODB_FT_DELETED 1 201002 1
@ -1150,6 +1157,8 @@ select 0xffffffffff & table_id, table_name, table_type, database_id, part_num fr
21511 role_edges 1 201003 1
21512 default_roles 1 201003 1
21513 CDB_INDEX_USAGE 1 201001 1
21514 audit_log_filter 1 201003 1
21515 audit_log_user 1 201003 1
21516 columns_priv 1 201003 1
21517 GV$OB_LS_SNAPSHOTS 1 201001 1
21518 V$OB_LS_SNAPSHOTS 1 201001 1
@ -1203,6 +1212,9 @@ select 0xffffffffff & table_id, table_name, table_type, database_id, part_num fr
21579 INNODB_METRICS 1 201002 1
21580 EVENTS 1 201002 1
21581 V$OB_NIC_INFO 1 201001 1
21582 ROLE_TABLE_GRANTS 1 201002 1
21583 ROLE_COLUMN_GRANTS 1 201002 1
21584 ROLE_ROUTINE_GRANTS 1 201002 1
21585 func 1 201003 1
21586 GV$OB_NIC_INFO 1 201001 1
21589 DBA_SCHEDULER_JOB_RUN_DETAILS 1 201001 1

View File

@ -6,9 +6,17 @@ FROM __all_sys_variable a, __all_virtual_sys_parameter_stat b
WHERE a.name = b.name
GROUP BY a.name;
para_name var_name
range_optimizer_max_mem_size range_optimizer_max_mem_size
connection_control_max_connection_delay connection_control_max_connection_delay
connection_control_min_connection_delay connection_control_min_connection_delay
connection_control_failed_connections_threshold connection_control_failed_connections_threshold
###### case2: under mysql tenant ######
SELECT a.name as para_name, b.name as var_name
FROM V$OB_PARAMETERS a, __all_sys_variable b
WHERE a.name = b.name;
para_name var_name
range_optimizer_max_mem_size range_optimizer_max_mem_size
connection_control_max_connection_delay connection_control_max_connection_delay
connection_control_min_connection_delay connection_control_min_connection_delay
connection_control_failed_connections_threshold connection_control_failed_connections_threshold

View File

@ -2,9 +2,9 @@ drop table if exists pt1;
create table pt1 (c1 int primary key, c2 int) partition by key(c1) partitions 3;
select * from information_schema.partitions where table_name = 'pt1' order by TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, PARTITION_NAME;
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION SUBPARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
def test pt1 p0 NULL 1 NULL KEY NULL c1 NULL NULL NULL NULL NULL NULL NULL NULL NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
def test pt1 p1 NULL 2 NULL KEY NULL c1 NULL NULL NULL NULL NULL NULL NULL NULL NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
def test pt1 p2 NULL 3 NULL KEY NULL c1 NULL NULL NULL NULL NULL NULL NULL NULL NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
def test pt1 p0 NULL 1 NULL KEY NULL c1 NULL NULL NULL NULL NULL 0 NULL 0 NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
def test pt1 p1 NULL 2 NULL KEY NULL c1 NULL NULL NULL NULL NULL 0 NULL 0 NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
def test pt1 p2 NULL 3 NULL KEY NULL c1 NULL NULL NULL NULL NULL 0 NULL 0 NULL YYYY-MM-DD hh:mm:ss NULL NULL NULL default NULL
select table_schema, table_name from information_schema.partitions where table_name = 'pt1' order by TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, PARTITION_NAME;
table_schema table_name
test pt1
@ -27,9 +27,9 @@ PARTITION_DESCRIPTION text NO
SUBPARTITION_DESCRIPTION text NO
TABLE_ROWS bigint(20) unsigned NO NULL
AVG_ROW_LENGTH bigint(21) unsigned NO NULL
DATA_LENGTH bigint(0) unsigned NO
DATA_LENGTH bigint(20) unsigned NO
MAX_DATA_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(0) unsigned NO
INDEX_LENGTH bigint(21) unsigned NO
DATA_FREE bigint(0) unsigned NO
CREATE_TIME timestamp(6) YES NULL
UPDATE_TIME datetime NO

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -6,10 +6,12 @@ def mysql time_zone_transition SELECT time_zone_id as Time_zone_id,
def mysql time_zone_name SELECT name as Name, time_zone_id as Time_zone_id FROM oceanbase.__all_tenant_time_zone_name NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql time_zone SELECT time_zone_id as Time_zone_id, use_leap_seconds as Use_leap_seconds FROM oceanbase.__all_tenant_time_zone NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql role_edges SELECT cast(from_user.host AS char(255)) FROM_HOST, cast(from_user.user_name AS char(128)) FROM_USER, cast(to_user.host AS char(255)) TO_HOST, cast(to_user.user_name AS char(128)) TO_USER, cast(CASE role_map.admin_option WHEN 1 THEN 'Y' ELSE 'N' END AS char(1)) WITH_ADMIN_OPTION FROM oceanbase.__all_tenant_role_grantee_map role_map, oceanbase.__all_user from_user, oceanbase.__all_user to_user WHERE role_map.tenant_id = from_user.tenant_id AND role_map.tenant_id = to_user.tenant_id AND role_map.grantee_id = to_user.user_id AND role_map.role_id = from_user.user_id; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql procs_priv SELECT cast(b.host as char(60)) as Host, cast(a.database_name as char(64)) as Db, cast(b.user_name as char(32)) as User, cast(a.routine_name as char(64)) as Routine_name, case when a.routine_type = 1 then 'PROCEDURE' else 'FUNCTION' end as Routine_type, cast(c.priv_user as char(93)) as Grantor, substr(concat(case when (a.all_priv & 1) > 0 then ',Execute' else '' end, case when (a.all_priv & 2) > 0 then ',Alter Routine' else '' end, case when (a.all_priv & 4) > 0 then ',Grant' else '' end), 2) as Proc_priv, cast(a.gmt_modified as date) as Timestamp FROM oceanbase.__all_routine_privilege a, oceanbase.__all_user b, oceanbase.__all_routine c, oceanbase.__all_database d WHERE a.tenant_id = b.tenant_id AND a.user_id = b.user_id AND a.tenant_id = d.tenant_id and a.database_name = d.database_name AND a.tenant_id = c.tenant_id AND a.routine_name = c.routine_name AND a.routine_type = c.routine_type AND c.database_id = d.database_id AND c.package_id = -1; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql procs_priv SELECT cast(b.host as char(60)) as Host, cast(a.database_name as char(64)) as Db, cast(b.user_name as char(32)) as User, cast(a.routine_name as char(64)) as Routine_name, case when a.routine_type = 1 then 'PROCEDURE' else 'FUNCTION' end as Routine_type, cast(concat(a.grantor, '@', a.grantor_host) as char(93)) as Grantor, substr(concat(case when (a.all_priv & 1) > 0 then ',Execute' else '' end, case when (a.all_priv & 2) > 0 then ',Alter Routine' else '' end, case when (a.all_priv & 4) > 0 then ',Grant' else '' end), 2) as Proc_priv, cast(a.gmt_modified as date) as Timestamp FROM oceanbase.__all_routine_privilege a, oceanbase.__all_user b WHERE a.tenant_id = 0 and a.tenant_id = b.tenant_id AND a.user_id = b.user_id; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql func SELECT name, ret, dl, type FROM oceanbase.__all_func NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql default_roles SELECT cast(to_user.host AS char(255)) HOST, cast(to_user.user_name AS char(128)) USER, cast(from_user.host AS char(255)) DEFAULT_ROLE_HOST, cast(from_user.user_name AS char(128)) DEFAULT_ROLE_USER FROM oceanbase.__all_tenant_role_grantee_map role_map, oceanbase.__all_user from_user, oceanbase.__all_user to_user WHERE role_map.tenant_id = from_user.tenant_id AND role_map.tenant_id = to_user.tenant_id AND role_map.grantee_id = to_user.user_id AND role_map.role_id = from_user.user_id AND role_map.disable_flag = 0; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql columns_priv SELECT cast(b.host as char(255)) as Host, cast(a.database_name as char(128)) as Db, cast(b.user_name as char(128)) as User, cast(a.table_name as char(128)) as Table_name, cast(a.column_name as char(128)) as Column_name, substr(concat(case when (a.all_priv & 1) > 0 then ',Select' else '' end, case when (a.all_priv & 2) > 0 then ',Insert' else '' end, case when (a.all_priv & 4) > 0 then ',Update' else '' end, case when (a.all_priv & 8) > 0 then ',References' else '' end), 2) as Column_priv, cast(a.gmt_modified as datetime) as Timestamp FROM oceanbase.__all_column_privilege a, oceanbase.__all_user b WHERE a.tenant_id = 0 and a.tenant_id = b.tenant_id AND a.user_id = b.user_id NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql audit_log_user SELECT CAST(user_name AS CHAR(128)) collate utf8mb4_bin as USER, host as HOST, CAST(filter_name AS CHAR(64)) collate utf8mb4_bin as FILTERNAME FROM oceanbase.__all_audit_log_user WHERE tenant_id = 0 and is_deleted = 0; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
def mysql audit_log_filter SELECT CAST(filter_name AS CHAR(64)) collate utf8mb4_bin as NAME, definition as FILTER FROM oceanbase.__all_audit_log_filter WHERE tenant_id = 0 and is_deleted = 0; NONE NO NONE NONE utf8mb4 utf8mb4_general_ci
show create view views;
View Create View character_set_client collation_connection
VIEWS CREATE VIEW `VIEWS` AS select cast('def' as CHAR(64)) AS TABLE_CATALOG, d.database_name collate utf8mb4_name_case as TABLE_SCHEMA, t.table_name collate utf8mb4_name_case as TABLE_NAME, t.view_definition as VIEW_DEFINITION, case t.view_check_option when 1 then 'LOCAL' when 2 then 'CASCADED' else 'NONE' end as CHECK_OPTION, case t.view_is_updatable when 1 then 'YES' else 'NO' end as IS_UPDATABLE, cast((case t.define_user_id when -1 then 'NONE' else concat(u.user_name, '@', u.host) end) as CHAR(288)) as DEFINER, cast('NONE' as CHAR(7)) AS SECURITY_TYPE, cast((case t.collation_type when 45 then 'utf8mb4' else 'NONE' end) as CHAR(64)) AS CHARACTER_SET_CLIENT, cast((case t.collation_type when 45 then 'utf8mb4_general_ci' else 'NONE' end) as CHAR(64)) AS COLLATION_CONNECTION from oceanbase.__all_table as t join oceanbase.__all_database as d on t.tenant_id = d.tenant_id and t.database_id = d.database_id left join oceanbase.__all_user as u on t.tenant_id = u.tenant_id and t.define_user_id = u.user_id and t.define_user_id != -1 where t.tenant_id = 0 and t.table_type in (1, 4) and t.table_mode >> 12 & 15 in (0,1) and d.in_recyclebin = 0 and d.database_name != '__recyclebin' and d.database_name != 'information_schema' and d.database_name != 'oceanbase' and 0 = sys_privilege_check('table_acc', effective_tenant_id(), d.database_name, t.table_name) utf8mb4 utf8mb4_general_ci

View File

@ -3,7 +3,7 @@ alter system flush plan cache global;
set ob_enable_plan_cache = 0;
set block_encryption_mode = 0;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-ecb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -295,7 +295,7 @@ select aes_decrypt(aes_encrypt('没有什么好恐惧的, 除了恐惧本身', '
| 没有什么好恐惧的, 除了恐惧本身 |
+----------------------------------------------------------------------------------------+
set block_encryption_mode = 1;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-ecb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -587,7 +587,7 @@ select aes_decrypt(aes_encrypt('没有什么好恐惧的, 除了恐惧本身', '
| 没有什么好恐惧的, 除了恐惧本身 |
+----------------------------------------------------------------------------------------+
set block_encryption_mode = 2;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-ecb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -879,7 +879,7 @@ select aes_decrypt(aes_encrypt('没有什么好恐惧的, 除了恐惧本身', '
| 没有什么好恐惧的, 除了恐惧本身 |
+----------------------------------------------------------------------------------------+
set block_encryption_mode = 3;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-cbc
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -985,7 +985,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 4;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-cbc
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1091,7 +1091,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 5;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-cbc
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1197,7 +1197,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 6;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-cfb1
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1303,7 +1303,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 7;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-cfb1
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1409,7 +1409,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 8;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-cfb1
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1515,7 +1515,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 9;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-cfb8
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1621,7 +1621,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 10;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-cfb8
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1727,7 +1727,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 11;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-cfb8
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1833,7 +1833,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 12;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-cfb128
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -1939,7 +1939,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 13;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-cfb128
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -2045,7 +2045,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 14;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-cfb128
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -2151,7 +2151,7 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 15;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-128-ofb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
@ -2256,4 +2256,231 @@ select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asda
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 16;
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-192-ofb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
+------+
| flag |
+------+
| 1 |
+------+
select hex(aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+--------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+--------------------------------------------------------------------------------------------------+
| 923FA777D4A67CCFE6280ADC |
+--------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('asdas123123dasdasd', '12312313123', '$$&$(*&(%*&(*%&($&*%&(dkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+-------------------------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdas123123dasdasd', '12312313123', '$$&$(*&(%*&(*%&($&*%&(dkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+-------------------------------------------------------------------------------------------------------------------------+
| 0EBF15EF11345391A512133D7D5EB76C5536 |
+-------------------------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938')) from dual;
+-------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938')) |
+-------------------------------------------------------------------+
| 909F82502BCB6342EEE03CF7 |
+-------------------------------------------------------------------+
select hex(aes_encrypt('', 'abc', '121903810293801289301298301982301928')) from dual;
+---------------------------------------------------------------------+
| hex(aes_encrypt('', 'abc', '121903810293801289301298301982301928')) |
+---------------------------------------------------------------------+
| |
+---------------------------------------------------------------------+
select hex(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830')) from dual;
+------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830')) |
+------------------------------------------------------------------------------------+
| 8FADC5A29B35D81339D014FB |
+------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938'), '','1290380129038129038012938') from dual;
+-----------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938'), '','1290380129038129038012938') |
+-----------------------------------------------------------------------------------------------------------+
| asdasdasdasd |
+-----------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('', 'abc', '121903810293801289301298301982301928'), 'abc', '121903810293801289301298301982301928') from dual;
+----------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('', 'abc', '121903810293801289301298301982301928'), 'abc', '121903810293801289301298301982301928') |
+----------------------------------------------------------------------------------------------------------------------------+
| |
+----------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830'),'asdasdas', '1230121231230381209380913820912830') from dual;
+---------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830'),'asdasdas', '1230121231230381209380913820912830') |
+---------------------------------------------------------------------------------------------------------------------------------------------+
| asdasdasdasd |
+---------------------------------------------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+------------------------------------------------------------------------------------------------------+
| FF9FCD4F8E34B3066B313EA0CD085F39B498F6AA26 |
+------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+------------------------------------------------------------------------------------------+
| hex(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+------------------------------------------------------------------------------------------+
| 9AFB77C281C9 |
+------------------------------------------------------------------------------------------+
select hex(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+---------------------------------------------------------------------------------------+
| hex(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+---------------------------------------------------------------------------------------+
| D619E761CA78 |
+---------------------------------------------------------------------------------------+
select hex(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+---------------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+---------------------------------------------------------------------------------------------------------------+
| A9ECD837A6EFDBD963BD8485768F46B6C4C0643F3A50EEA6 |
+---------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'), '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'), '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 中文字符加一点 |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'是不是','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'是不是','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 测试 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'周三','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'周三','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| 意义 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'莎士比亚','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'莎士比亚','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 17;
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode aes-256-ofb
select 1 as flag from dual where aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') = aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj');
+------+
| flag |
+------+
| 1 |
+------+
select hex(aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+--------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', '12312313123', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+--------------------------------------------------------------------------------------------------+
| AE03F339448F21267D753840 |
+--------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('asdas123123dasdasd', '12312313123', '$$&$(*&(%*&(*%&($&*%&(dkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+-------------------------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdas123123dasdasd', '12312313123', '$$&$(*&(%*&(*%&($&*%&(dkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+-------------------------------------------------------------------------------------------------------------------------+
| 4AB0F361AA50F93A6525E8E2052806F06A7D |
+-------------------------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938')) from dual;
+-------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938')) |
+-------------------------------------------------------------------+
| 89F0DDEB484970BAFF2B986D |
+-------------------------------------------------------------------+
select hex(aes_encrypt('', 'abc', '121903810293801289301298301982301928')) from dual;
+---------------------------------------------------------------------+
| hex(aes_encrypt('', 'abc', '121903810293801289301298301982301928')) |
+---------------------------------------------------------------------+
| |
+---------------------------------------------------------------------+
select hex(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830')) from dual;
+------------------------------------------------------------------------------------+
| hex(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830')) |
+------------------------------------------------------------------------------------+
| 66C922BF6A279AFEE1A68181 |
+------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938'), '','1290380129038129038012938') from dual;
+-----------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('asdasdasdasd', '', '1290380129038129038012938'), '','1290380129038129038012938') |
+-----------------------------------------------------------------------------------------------------------+
| asdasdasdasd |
+-----------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('', 'abc', '121903810293801289301298301982301928'), 'abc', '121903810293801289301298301982301928') from dual;
+----------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('', 'abc', '121903810293801289301298301982301928'), 'abc', '121903810293801289301298301982301928') |
+----------------------------------------------------------------------------------------------------------------------------+
| |
+----------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830'),'asdasdas', '1230121231230381209380913820912830') from dual;
+---------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('asdasdasdasd', 'asdasdas', '1230121231230381209380913820912830'),'asdasdas', '1230121231230381209380913820912830') |
+---------------------------------------------------------------------------------------------------------------------------------------------+
| asdasdasdasd |
+---------------------------------------------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+------------------------------------------------------------------------------------------------------+
| 69B7A8070388FFFDADF1AAE36B93E9FB4D3AF7DC20 |
+------------------------------------------------------------------------------------------------------+
select hex(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+------------------------------------------------------------------------------------------+
| hex(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+------------------------------------------------------------------------------------------+
| EBED2E7879EE |
+------------------------------------------------------------------------------------------+
select hex(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+---------------------------------------------------------------------------------------+
| hex(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+---------------------------------------------------------------------------------------+
| BDE73DC257C5 |
+---------------------------------------------------------------------------------------+
select hex(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) from dual;
+---------------------------------------------------------------------------------------------------------------+
| hex(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj')) |
+---------------------------------------------------------------------------------------------------------------+
| 23FF28E7C58064F51F757F8C44C049652F70167B765EE07C |
+---------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'), '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('中文字符加一点', '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'), '你好', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 中文字符加一点 |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'是不是','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('测试', '是不是', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'是不是','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 测试 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'周三','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('意义', '周三', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'周三','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
| 意义 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------+
select aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'莎士比亚','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') from dual;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| aes_decrypt(aes_encrypt('午后的天气还不错', '莎士比亚', 'asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj'),'莎士比亚','asdasdkljasdkljalskdjaklsdjaklsjdaklsdjlaksdj') |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 午后的天气还不错 |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
set block_encryption_mode = 18;
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode sm4-ecb
select hex(aes_encrypt('abcd', 'asd')) from dual;
ERROR 0A000: using aes_encrypt with not aes block_encryption_mode not supported
set block_encryption_mode = 21;
show variables like 'block_encryption_mode';
Variable_name Value
block_encryption_mode sm4-ofb
select hex(aes_encrypt('abcd', 'asd')) from dual;
ERROR 0A000: using aes_encrypt with not aes block_encryption_mode not supported
set block_encryption_mode = 0;

View File

@ -885,7 +885,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 AND 2 AND 3 AND t1.col_int]), filter(nil), rowset=16
0 - output([(T_OP_AND, 1, 2, 3, t1.col_int)]), filter(nil), rowset=16
access([t1.col_int]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -905,7 +905,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 AND t1.col_null AND 3 AND t1.col_int]), filter(nil), rowset=16
0 - output([(T_OP_AND, 1, t1.col_null, 3, t1.col_int)]), filter(nil), rowset=16
access([t1.col_null], [t1.col_int]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -925,7 +925,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 AND t1.col_null AND 3 AND t1.col_zero]), filter(nil), rowset=16
0 - output([(T_OP_AND, 1, t1.col_null, 3, t1.col_zero)]), filter(nil), rowset=16
access([t1.col_null], [t1.col_zero]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -945,7 +945,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 AND t1.col_null AND 3 AND cast(t1.col_empty_str, DOUBLE(-1, -1))]), filter(nil), rowset=16
0 - output([(T_OP_AND, 1, t1.col_null, 3, cast(t1.col_empty_str, DOUBLE(-1, -1)))]), filter(nil), rowset=16
access([t1.col_null], [t1.col_empty_str]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -967,7 +967,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 OR 2 OR t1.col_int]), filter(nil), rowset=16
0 - output([(T_OP_OR, 1, 2, t1.col_int)]), filter(nil), rowset=16
access([t1.col_int]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -987,7 +987,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([1 OR 2 OR t1.col_null]), filter(nil), rowset=16
0 - output([(T_OP_OR, 1, 2, t1.col_null)]), filter(nil), rowset=16
access([t1.col_null]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true
@ -1007,7 +1007,7 @@ Query Plan
===============================================
Outputs & filters:
-------------------------------------
0 - output([cast('', DOUBLE(-1, -1)) OR 0 OR t1.col_null]), filter(nil), rowset=16
0 - output([(T_OP_OR, cast('', DOUBLE(-1, -1)), 0, t1.col_null)]), filter(nil), rowset=16
access([t1.col_null]), partitions(p0)
is_index_back=false, is_global_index=false,
range_key([t1.__pk_increment]), range(MIN ; MAX)always true

View File

@ -208,7 +208,7 @@ select _utf8mb4'a' collate gbk_bin;
ERROR 42000: COLLATION 'gbk_bin' is not valid for CHARACTER SET 'utf8mb4'
// 下面的是等号表达式在类型推导时,进行aggregate collation发现collation不一致报错
select _utf8mb4'a' collate utf8mb4_general_ci = _utf8mb4'A' collate utf8mb4_bin;
ERROR HY000: Illegal mix of collations
ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,EXPLICIT), (utf8mb4_bin,EXPLICIT)
select _utf8mb4'a' collate utf8mb4_general_ci = _utf8mb4'A' collate utf8mb4_general_ci;
+---------------------------------------------------------------------------------+
| _utf8mb4'a' collate utf8mb4_general_ci = _utf8mb4'A' collate utf8mb4_general_ci |

View File

@ -1,7 +1,6 @@
# owner: peihan.dph
# owner group: sql2
--disable_abort_on_error
--result_format 4
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,oceanbase,$OBMYSQL_PORT);
connection conn_admin;
@ -11,55 +10,72 @@ sleep 2;
set ob_enable_plan_cache = 0;
#basic test
set block_encryption_mode = 0;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
--source mysql_test/test_suite/security/include/aes_two_param.inc
set block_encryption_mode = 1;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
--source mysql_test/test_suite/security/include/aes_two_param.inc
set block_encryption_mode = 2;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
--source mysql_test/test_suite/security/include/aes_two_param.inc
set block_encryption_mode = 3;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 4;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 5;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 6;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 7;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 8;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 9;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 10;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 11;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 12;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 13;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 14;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 15;
show variables like '%encrypt%mode';
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 16;
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 17;
show variables like 'block_encryption_mode';
--source mysql_test/test_suite/security/include/aes_three_param.inc
set block_encryption_mode = 18;
show variables like 'block_encryption_mode';
--error 1235
select hex(aes_encrypt('abcd', 'asd')) from dual;
set block_encryption_mode = 21;
show variables like 'block_encryption_mode';
--error 1235
select hex(aes_encrypt('abcd', 'asd')) from dual;
set block_encryption_mode = 0;
sleep 2;