zoukankan      html  css  js  c++  java
  • etcd单节点数据备份与恢复

    插入测试数据

    # etcdctl put  smith  7369
    # etcdctl put  allen  7499
    # etcdctl put  ward   7521
    # etcdctl put  jones  7566
    # etcdctl put  martin 7654
    # etcdctl put  blake  7698
    # etcdctl put  clark  7782
    # etcdctl put  scott  7788
    # etcdctl put  king   7839
    # etcdctl put  turner 7844
    # etcdctl put  adams  7876
    # etcdctl put  james  7900
    # etcdctl put  ford   7902
    # etcdctl put  miller 7934

    查看数据

    # etcdctl get --prefix ""
    adams
    7876
    allen
    7499
    blake
    7698
    clark
    7782
    ford
    7902
    james
    7900
    jones
    7566
    king
    7839
    martin
    7654
    miller
    7934
    scott
    7788
    smith
    7369
    turner
    7844
    ward
    7521

    做快照

    # etcdctl snapshot save backup.db
    {"level":"info","ts":1570085496.5022638,"caller":"snapshot/v3_snapshot.go:109","msg":"created temporary db file","path":"backup.db.part"}
    {"level":"warn","ts":"2019-10-03T14:51:36.503+0800","caller":"clientv3/retry_interceptor.go:116","msg":"retry stream intercept"}
    {"level":"info","ts":1570085496.5036564,"caller":"snapshot/v3_snapshot.go:120","msg":"fetching snapshot","endpoint":"127.0.0.1:2379"}
    {"level":"info","ts":1570085496.5214782,"caller":"snapshot/v3_snapshot.go:133","msg":"fetched snapshot","endpoint":"127.0.0.1:2379","took":0.018938519}
    {"level":"info","ts":1570085496.521635,"caller":"snapshot/v3_snapshot.go:142","msg":"saved","path":"backup.db"}
    Snapshot saved at backup.db

    查看快照信息

    # etcdctl snapshot status backup.db --write-out=table
    +----------+----------+------------+------------+
    |   HASH   | REVISION | TOTAL KEYS | TOTAL SIZE |
    +----------+----------+------------+------------+
    | 6d1803a9 |      110 |        146 |      37 kB |
    +----------+----------+------------+------------+

    清空数据

    # etcdctl del --prefix ""
    14

    删除当前etcd的data目录,否则会报错目录已存在

    # rm -rf /usr/local/etcd/data

    恢复数据

    # etcdctl snapshot restore backup.db --data-dir="/usr/local/etcd/data"
    {"level":"info","ts":1570085656.639806,"caller":"snapshot/v3_snapshot.go:286","msg":"restoring snapshot","path":"backup.db","wal-dir":"/usr/local/etcd/data/member/wal","data-dir":"/usr/local/etcd/data","snap-dir":"/usr/local/etcd/data/member/snap"}
    {"level":"info","ts":1570085656.7266932,"caller":"membership/cluster.go:392","msg":"added member","cluster-id":"cdf818194e3a8c32","local-member-id":"0","added-peer-id":"8e9e05c52164694d","added-peer-peer-urls":["http://localhost:2380"]}
    {"level":"info","ts":1570085656.7834268,"caller":"snapshot/v3_snapshot.go:299","msg":"restored snapshot","path":"backup.db","wal-dir":"/usr/local/etcd/data/member/wal","data-dir":"/usr/local/etcd/data","snap-dir":"/usr/local/etcd/data/member/snap"}

    恢复完成后需要将从备份重新生成的data目录的属主和属组修改为etcd系统服务中的对应属主和属组

    # chown -R tnuser.dba /usr/local/etcd/data

    重启etcd系统服务

    # systemctl stop etcd
    # systemctl start etcd

    再次查看恢复的数据

    # etcdctl get --prefix ""
    adams
    7876
    allen
    7499
    blake
    7698
    clark
    7782
    ford
    7902
    james
    7900
    jones
    7566
    king
    7839
    martin
    7654
    miller
    7934
    scott
    7788
    smith
    7369
    turner
    7844
    ward
    7521
  • 相关阅读:
    Android BroadcastAnyWhere(Google Bug 17356824)漏洞具体分析
    读写Word的组件DocX介绍与入门
    2015年终总结,忙碌与有所收获的一年,2016年继续努力!
    数据库题——高于部门平均工资查询问题
    Oracle 简单的列转行
    行香子·过尽千山
    ZOJ2599:Graduated Lexicographical Ordering(很经典的数位DP)
    【oracle11g,18】存储结构:暂时表,手工条带化,表/索引迁移表空间,删除表,外部表
    联想S820 MIUI刷机包 MIUI 4.4.30 流畅执行 在线主题破解
    android开发艺术探索学习 之 结合Activity的生命周期了解Activity的LaunchMode
  • 原文地址:https://www.cnblogs.com/ilifeilong/p/11619795.html
Copyright © 2011-2022 走看看