开发者社区 > 数据库 > 关系型数据库 > 正文

docker安装polardb-x,脱敏函数不能使用?

mysql -h127.0.0.1 -P8527 -upolardbx_root -p123456
create table tb_masking(col1 text, col2 text, col3 text, col4 text, col5 text, col6 text, col7 text, col8 text);
insert into tb_masking select '4880-9898-4545-2525',null,null,null,null,null,null,null;
CREATE DATA_MASKING_RULE number_masking_rule WITH (MASKING_FUNCTION = 'partial',PARAMETERS = 'start_position=1, masking_character="#", mask_length=14');
select mask_inner(col1,1,14,'X')from tb_masking ;报错信息为:ERROR 4500 (HY000): [17ba0c3355000000][172.17.0.2:8527][polarx_example]ERR-CODE: [PXC-4500][ERR_PARSER] failed to split sql

展开
收起
1933861294861598 2024-03-27 13:51:43 39 0
4 条回答
写回答
取消 提交回答
  • 阿里云大降价~

    根据您提供的信息,报错信息显示为"failed to split sql",这通常意味着在解析SQL语句时出现了问题。在这种情况下,可能的原因是脱敏函数的语法不正确或者与PolarDB-X不兼容。

    首先,请确保您使用的是正确的脱敏函数和参数。根据您的描述,您正在尝试使用名为mask_inner的脱敏函数,并传递了四个参数:col1114'X'。请检查这些参数是否正确,以及它们是否与PolarDB-X的要求相符。

    其次,您可以尝试使用其他脱敏函数或方法来解决问题。PolarDB-X可能提供了其他内置的脱敏功能,您可以查阅官方文档以获取更多信息。此外,您还可以考虑使用第三方工具或库来实现脱敏功能。

    最后,如果您仍然无法解决问题,建议您联系阿里云的技术支持团队,向他们提供详细的错误信息和您的操作步骤,以便他们能够为您提供更

    2024-03-27 17:20:50
    赞同 展开评论 打赏
  • 根据您提供的信息,报错信息显示为 "failed to split sql",这通常意味着 SQL 语句的语法存在问题。在您的示例中,问题出现在 select mask_inner(col1,1,14,'X')from tb_masking 这一行。

    问题在于函数调用的括号不匹配。正确的写法应该是:

    
    SELECT mask_inner(col1, 1, 14, 'X') FROM tb_masking;
    

    请注意,这里的括号是英文字符,而不是中文字符。请尝试使用这个修正后的 SQL 语句,看看是否能解决问题。

    2024-03-27 14:56:50
    赞同 展开评论 打赏
  • image.png

    2024-03-27 14:53:39
    赞同 展开评论 打赏
  • 根据您提供的信息,报错信息显示为 "failed to split sql",这通常意味着 SQL 语句的语法存在问题。在您的查询中,mask_inner(col1,1,14,'X') 这部分似乎存在语法错误。

    请尝试将查询修改为以下形式:

    SELECT mask_inner(col1, 1, 14, 'X');
    

    这将确保 SQL 语句的语法正确,并且应该能够解决您遇到的问题。

    2024-03-27 13:59:09
    赞同 展开评论 打赏

相关产品

  • 云原生分布式数据库 PolarDB-X
  • 云原生数据库 PolarDB
  • 相关电子书

    更多
    PolarDB-X分布式数据库解决方案 立即下载
    PolarDB-X 2.0 全局 Binlog 与备份恢复能 立即下载
    分布式数据库DRDS全新升级 立即下载