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;
相关推荐
倒头就睡的小比特3 天前
算法竞赛C++常用的STL
c++·算法
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003963 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
伞伞悦读3 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
猎头南楼3 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
这个DBA有点耶3 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G3 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备3 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
C语言小火车3 天前
C/C++ 为什么需要编译器?
开发语言·c++