Clickhouse导出库的表、视图、用户和角色定义的SQL语句

导出所有用户和角色设置

sql 复制代码
SELECT SQL FROM (
SELECT
    concat('CREATE USER IF NOT EXISTS ', name, ' IDENTIFIED WITH ', auth_type[1], ' BY \'', '<password>', '\';') AS SQL,
    1 AS ord
FROM
system.users
UNION ALL
SELECT
    concat('CREATE ROLE IF NOT EXISTS ', name, ';') AS SQL,
    2 AS ord
FROM
system.roles
UNION ALL
SELECT
    concat('GRANT ', role_name, ' TO ', user_name, ';') AS SQL,
    3 AS ord
FROM
system.role_grants
WHERE role_name IS NOT NULL
UNION ALL
SELECT
    concat('GRANT ', access_type, ' ON ', COALESCE(database, ''), ' TO ', COALESCE(role_name, 'UnknownRole'), ';') AS SQL,
    4 AS ord
FROM
system.grants
WHERE role_name IS NOT NULL
) A
ORDER BY ord;

导出所有表和视图定义

sql 复制代码
SELECT SQL FROM (
SELECT 
concat(create_table_query, ';') AS SQL,
1 AS ord
FROM
system.tables
WHERE engine IN ('Log', 'TinyLog', 'StripeLog', 'Memory', 'MergeTree', 'ReplacingMergeTree', 'SummingMergeTree', 'AggregatingMergeTree', 'Distributed', 'Memory', 'Buffer')
AND database NOT IN ('system', 'information_schema', 'INFORMATION_SCHEMA')
UNION ALL
SELECT 
concat(create_table_query, ';') AS SQL,
2 AS ord
FROM
system.tables
WHERE engine IN ('View', 'MaterializedView')
AND database NOT IN ('system', 'information_schema', 'INFORMATION_SCHEMA')
) A
ORDER BY ord;
相关推荐
那个村的李富贵17 分钟前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
二十雨辰18 分钟前
[python]-AI大模型
开发语言·人工智能·python
power 雀儿26 分钟前
Scaled Dot-Product Attention 分数计算 C++
算法
Yvonne爱编码28 分钟前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚29 分钟前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂37 分钟前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas1361 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐1 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
renhongxia11 小时前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了1 小时前
数据结构之树(Java实现)
java·算法