关闭Snowflake客户端遥测执行ALTER USER语句报错如何解决
问题原因
USER级别的参数修改不支持PARAMETER_EXPIRY_DAYS、PARAMETER_COMMENT两个属性,这两个属性仅适用于ACCOUNT级别的参数设置,原文档给出的示例实际是账号级参数的写法,所以你在修改用户参数时会触发无效属性报错。
解决方案
方案1:仅针对指定用户关闭遥测
直接删除不支持的两个属性,执行如下SQL即可,Snowsql、网页控制台Worksheet都可以运行:
-- 替换TESTUSER为实际要修改的用户名 ALTER USER TESTUSER SET CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED = FALSE;
如果修改其他用户的参数,需要提前切换到拥有ALTER USER权限的角色(如ACCOUNTADMIN、USERADMIN):
USE ROLE ACCOUNTADMIN; ALTER USER TESTUSER SET CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED = FALSE;
方案2:全局关闭所有用户的遥测
如果你需要对整个账号下的所有用户生效,可以直接修改账号级别的参数,此时可以保留文档中的两个属性:
USE ROLE ACCOUNTADMIN; ALTER ACCOUNT SET CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED=FALSE PARAMETER_COMMENT='disabling due to JDBC issue' PARAMETER_EXPIRY_DAYS=0;
验证配置是否生效
执行如下语句确认参数已修改成功:
-- 验证用户级参数 SHOW PARAMETERS LIKE 'CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED' IN USER TESTUSER; -- 验证账号级参数 SHOW PARAMETERS LIKE 'CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED' IN ACCOUNT;
内容的提问来源于stack exchange,提问作者JohnDoe
相关产品推荐
相关产品推荐

