问题现象
在 MySQL 租户下,通过 CTAS 的方式查询 information_schema 信息数据库表报错。
obclient > create table t_1 as select * from information_schema.tables where 1=2;
ERROR 4179 (HY000): Access tables from multiple tenants not allowed
问题原因
出现该异常的原因在于跨租户的 SQL 请求导致,一般符合预期,常见的问题触发场景为在业务租户下,查询 information_schema 下的视图,并同时将查询的数据写入业务租户下的表导致,因为业务租户的 information_schema 视图取自 sys 租户视图信息。
适用版本
OceanBase 数据库 V2.x、V3.x 版本。
解决方法
避免将 information_schema 下的视图数据直接写入到业务租户的表中。