zoukankan      html  css  js  c++  java
  • ClickHouse 运维相关部分命令记录

    利用clickhouse-client和linux管道命令结合,迁移数据。这个办法速度不是特别快,一下午大概迁移40亿数据的样子

    clickhouse-client --host 127.0.0.1 --password default -q "SELECT * FROM sgdatabase.historysignal2 FORMAT CSVWithNames" | clickhouse-client --host 127.0.0.1 --port 9000 --password default -q "INSERT INTO sgdatabase.historysignal FORMAT CSVWithNames"
    

    查看集群分布式信息

    select * from system.clusters;
    

    查看数据库版本信息等

    select * from system.build_options
    

    查看正在执行的sql

    select * from system.processes
    

    将TABLE1重命名为TABLE2

    rename table TABLE1 to TABLE2;
    

    删除数据

    ALTER TABLE db.test DELETE WHERE condition!=3;
    

    修改数据

    ALTER TABLE db.test UPDATE name='ccc' WHERE createTime='2020/2/13';
    

    从mysql插入数据到clickhouse

    clickhouse-client --host 192.168.1.155 --password default --database=DB-q "INSERT INTO historysignal (ROOMID, ROOMNAME, SAMPLERID, SAMPLERNAME, EQUIPMENTID, EQUIPMENTNAME, SIGNALID, SIGNALNAME, RECORDTIME, FLOATVALUE, STRINGVALUE, MEANINGS, STATIONNAME, STATIONID, UNIT, UNIQUID, RECORDTIMETOMIN, RECORDTIMEINORDER, ESNAME) select * from mysql('192.168.1.61:3306', 'DB', 'TABLE', 'mysql', 'mysql')"
    

    当前连接数(分为 TCP 和 HTTP )

    SELECT *
    FROM system.metrics
    WHERE metric LIKE '%Connection'
    
    

    当前正在执行的查询

    SELECT 
        query_id, 
        user, 
        address, 
        query
    FROM system.processes
    ORDER BY query_id ASC
    
    

    查询Mutation操作(ALTER DELETE 和 ALTER UPDATE)

    SELECT 
        database, 
        table, 
        mutation_id, 
        command, 
        create_time, 
        is_done
    FROM system.mutations
    
    

    终止语句

    KILL QUERY WHERE query_id = 'query_id';
    KILL MUTATION WHERE mutation_id = 'mutation_id';
    

    存储空间统计,查询 CH 各个存储路径的空间

    SELECT 
        name, 
        path, 
        formatReadableSize(free_space) AS free, 
        formatReadableSize(total_space) AS total, 
        formatReadableSize(keep_free_space) AS reserved
    FROM system.disks
    

    各数据库占用空间统计

    SELECT 
        database, 
        formatReadableSize(sum(bytes_on_disk)) AS on_disk
    FROM system.parts
    GROUP BY database
    
    

    个列字段占用空间统计
    每个列字段的压缩大小、压缩比率以及该列的每行数据大小的占比

    SELECT 
        database, 
        table, 
        column, 
        any(type), 
        sum(column_data_compressed_bytes) AS compressed, 
        sum(column_data_uncompressed_bytes) AS uncompressed, 
        round(uncompressed / compressed, 2) AS ratio, 
        compressed / sum(rows) AS bpr, 
        sum(rows)
    FROM system.parts_columns
    WHERE active AND database != 'system'
    GROUP BY 
        database, 
        table, 
        column
    ORDER BY 
        database ASC, 
        table ASC, 
        column ASC
    

    慢查询

    SELECT 
        user, 
        client_hostname AS host, 
        client_name AS client, 
        formatDateTime(query_start_time, '%T') AS started, 
        query_duration_ms / 1000 AS sec, 
        round(memory_usage / 1048576) AS MEM_MB, 
        result_rows AS RES_CNT, 
        result_bytes / 1048576 AS RES_MB, 
        read_rows AS R_CNT, 
        round(read_bytes / 1048576) AS R_MB, 
        written_rows AS W_CNT, 
        round(written_bytes / 1048576) AS W_MB, 
        query
    FROM system.query_log
    WHERE type = 2
    ORDER BY query_duration_ms DESC
    LIMIT 10
    

    副本预警监控
    通过下面的 SQL 语句对副本进行预警监控,其中各个预警的变量可以根据自身情况调整。

    SELECT database, table, is_leader, total_replicas, active_replicas 
      FROM system.replicas 
     WHERE is_readonly 
        OR is_session_expired 
        OR future_parts > 30 
        OR parts_to_check > 20 
        OR queue_size > 30 
        OR inserts_in_queue > 20 
        OR log_max_index - log_pointer > 20 
        OR total_replicas < 2 
        OR active_replicas < total_replicas
    

    centos 安装clickhosue 客户端

    sudo yum install yum-utils
    sudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG
    sudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_64
    sudo yum install clickhouse-server clickhouse-client
    
    

    ubuntu 安装clickhosue 客户端

    sudo apt-get install apt-transport-https ca-certificates dirmngr
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E0C56BD4
    echo "deb https://repo.clickhouse.tech/deb/stable/ main/" | sudo tee     /etc/apt/sources.list.d/clickhouse.list
    sudo apt-get update
    sudo apt-get install -y clickhouse-client
    

    https://cloud.tencent.com/developer/article/1654602

  • 相关阅读:
    C#多线程参数传递
    Delphi单元测试工具Dunit介绍
    使用javascript生成文件
    Windows自动登录源码
    [Win32]一个调试器的实现
    用MASM写一个简单的实现递归操作的汇编程序,所谓递归,上课已经跟大家说清楚了,如果我们只考虑简单的只分一次的递
    C#多线程编程(4)多线程与UI操作
    在Delphi中实现类型安全的容器,Delphi泛型库DGL引介(提供源码下载) .
    delphi 中几种多线程操作方式
    C#实现WEB服务器
  • 原文地址:https://www.cnblogs.com/hanfan/p/13389801.html
Copyright © 2011-2022 走看看