背景介紹
作為一名資深軟件人,數據安全一定要放到第一位,要保證生產庫壞了,也要很快恢復,數據冗余是常用手段,數據轉儲是必備的,下面說一下我clickhouse的數據備份方式。
本方式適用於億級別的數據,因為是全量備份;如果是百億級別的數據,建議增量備份。
准備
准備一台服務器,性能不要求很高,因為這是存儲一些數據 ,我是搞了一個docker容器;
安裝clickhouse ,在docker 容器里安裝,分分鍾搞定;
創建數據庫、創建需要備份的表;
CREATE DATABASE IF NOT EXISTS dbname;
CREATE TABLE dbname.tablename(
ts
Date DEFAULT toDate(now()),
ID
UInt32 COMMENT '主鍵id',
OIL_FACTORY_ID
UInt32 COMMENT '',
DEPT_ID
UInt32 COMMENT '部門ID',
DEPT_name
String COMMENT '部門名字'
) ENGINE = MergeTree() PARTITION BY toYYYYMMDD(ts) ORDER BY ts SETTINGS index_granularity = 8192;
開始轉儲數據
insert into 目的數據庫.表 select * from remote('數據源的ip',數據庫.表,'登錄名','登錄密碼')