卸载 Clean Room 环境

要从账户中完全卸载 Clean Room 环境,必须使用已安装 Clean Room 应用程序的 Snowflake 账户中的 ACCOUNTADMIN 角色。这将删除账户中所有用户(无论是 Clean Room 提供商还是 Clean Room 使用者)的 Clean Room 环境。

重要

该程序可完全卸载整个环境,而不仅仅是单个 Clean Room。

要为账户卸载 Clean Room 应用程序,请执行以下操作:

  1. 删除您作为提供商创建的所有 Clean Room。

  2. 卸载您作为使用者安装(联接)的所有 Clean Room。

  3. 联系 Snowflake 支持部门 以检索账户元数据。

  4. 收到 Snowflake 支持部门的指示后,运行以下清理脚本:

-- Drop created and installed (joined) clean rooms, if you have not done so.

USE ROLE ACCOUNTADMIN;

-- Drop listings
SHOW LISTINGS;
SELECT CONCAT('alter listing ', "name", ' unpublish; drop listing ', "name", ';') FROM TABLE(RESULT_SCAN(last_query_id()))
  WHERE "name" LIKE 'SAMOOHA_CLEANROOM_%';

-- Drop shares
SHOW SHARES;
SELECT CONCAT('drop share ', "name", ';') FROM TABLE(RESULT_SCAN(last_query_id()))
  WHERE "kind" = 'OUTBOUND' AND "name" LIKE 'SAMOOHA_CLEANROOM_%';

-- These three shares have to be dropped manually:
DROP SHARE SAMOOHA_INTERNAL_GOVERNANCE_SUMMARY_SHARE_NAV2;
DROP SHARE SAMOOHA_INTERNAL_LOGS_SHARE_NAV2;
DROP SHARE SAMOOHA_INTERNAL_PROVIDER_METADATA_NAV2;

-- Drop applications
SHOW APPLICATIONS;
SELECT CONCAT('drop application ', "name", ' cascade;') FROM TABLE(RESULT_SCAN(last_query_id())) WHERE "name" LIKE 'SAMOOHA_CLEANROOM_APP_%';

-- Drop application packages
SHOW APPLICATION PACKAGES;

SELECT CONCAT('drop application package ', "name", ' cascade;') FROM TABLE(RESULT_SCAN(last_query_id())) WHERE "name" LIKE 'SAMOOHA_CLEANROOM_%';

-- Drop databases
SHOW DATABASES;
SELECT CONCAT('drop database ', "name", ';') FROM TABLE(RESULT_SCAN(last_query_id()))
WHERE "name" = 'SAMOOHA_SAMPLE_DATABASE' OR
  "name" LIKE 'SAMOOHA_CLEANROOM_%' OR
  "name" = 'SAMOOHA_BY_SNOWFLAKE_LOCAL_DB' OR
  "name" LIKE 'SAMOOHA_INTERNAL_GOVERNANCE_%' AND NOT
  startswith("name", 'SAMOOHA_CLEANROOM_CONSUMER_');


-- Finally drop the Snowflake native app

DROP APPLICATION SAMOOHA_BY_SNOWFLAKE CASCADE;
Copy
语言: 中文