暂无图片
MogDB数据库从零到上生产:3、MogDB数据库BRM定时备份
最近更新:2022-03-11 14:21:05

BRM备份恢复工具的全称为:Backup and Recovery Manager。它主要设计目的是为了应对MogDB数据库集中式备份和恢复管理工作,同时提供CLI命令行工具和Web图形管理界面。

MogDB安装环境

|节点 |主机名|IP|数据库端口| |-|-|-|-| |主节点|mogdb1|192.168.26.89, 192.168.8.178|26000 |从节点|mogdb2|192.168.26.164, 192.168.8.11|26000

安装环境及系统

操作系统:CentOS 7.6 内存:16G 交换空间:8G(大内存建议关闭) 硬盘:500G 网络:可访问外网(用于下载MogDB及相关软件安装包)

备节点安装BRM

1、创建brm目录
[root@mogdb2 ~]# mkdir -p /opt/brm/
2、把压缩包上传到/opt/brm目录下
3、解压压缩包
[root@mogdb2 brm]# unzip brm_0.0.10_linux_amd64.zip 
Archive:  brm_0.0.10_linux_amd64.zip
  inflating: LICENSE                 
  inflating: README.md               
  inflating: brm.1                   
  inflating: completions/brm.bash    
  inflating: completions/brm.fish    
  inflating: completions/brm.zsh     
  inflating: conf/brm.yaml           
  inflating: brm 

[root@mogdb2 brm]# chown -R omm. brm
4、配置brm初始化参数文件

omm在/home/omm/下创建目录.brm并将配置文件复制到/home/omm/.brm目录下

[omm@mogdb2 ~]$ mkdir -p /home/omm/.brm

[omm@mogdb2 ~]$ cp /opt/brm/conf/brm.yaml /home/omm/.brm/

修改配置文件brm.yaml,指定备份文件存放的路径和日志存放路径,所写路径需要omm用户具有创建目录权限。

备份文件存放路径:[root@mogdb2 brm]# mkdir -p /mogdb_brm_bak/data

备份日志存放路径:[root@mogdb2 brm]# mkdir -p /mogdb_brm_bak/log

[root@mogdb2 brm]# chmod -R 755 /mogdb_brm_bak

[root@mogdb2 brm]# chown -R omm.  /mogdb_brm_bak

[omm@mogdb2 ~]$ cat /home/omm/.brm/brm.yaml 

# 没有启用
backup_user: omm
# 备份文件存放目录
backup_home: /mogdb_brm_bak/data
# 日志目录
log_file: /mogdb_brm_bak/log
# 日志级别
log_level: DEBUG
# 没有启用
lock_directory: /var/lib/run
# wal全局备份几次 default 1
wal_retention_redundancy: 1
# 是否允许主库进行备份. default:false
no_allow_primary_backup: false
network_limit_rate: 10m
# default on
enable_backup_wal_file_check: on
## 启动备份文件中心同步
#enable_backup_push: on
## 当前Brm节点名称,当enable_backup_center_push为on时此项为必填
#brm_node_name: 127.0.0.1:5434
## brm 备份文件集中存储配置
#backup_center:
#  - host: 127.0.0.1
#    port: 44332
#  - host: 127.0.0.1
#    port: 44333
5、验证brm工具命令是否可以使用

查看当前工具版本。

[omm@mogdb2 ~]$ /opt/brm/brm version
time="2021-12-24 15:29:35.582999" level=info msg="Using config file:/home/omm/.brm/brm.yaml"
Release version: 0.0.10
Git Commit hash: 5e96dcf
Git Tag        : v0.0.10
Build timestamp: 2021-06-15T03:31:55ZZ

BRM备份

1、 帮助使用:使用-h 在任何命令后直接获取帮助
[omm@mogdb2 ~]$ /opt/brm/brm -h
Backup and Recovery Manager.

Usage:
  brm [command]

Available Commands:
  add-server         add backup instance server
  backup             perform backup for the instance server
  backup-wal         perform backup wal for the instance server
  check              check backup instance server
  del-server         delete backup instance server
  delete             delete backup for the instance server
  gen                A collection of several useful generators
  help               Help about any command
  list-server        list backup instance server.
  receive-wal        receive wal for the instance server
  restore            restore a server at a given time, name, LSN or xid
  set-server         set backup instance server
  show-backup        list available backups for the instance server
  show-wal           list available WAL backups for the instance server
  switch-wal         execute the switch-wal command on the instance server
  sync               sync backup and wal file to the data center
  version            print version

Flags:
  -c, --config string   config file (default is /etc/brm/brm.yaml,/etc/brm.yaml,$HOME/.brm/brm.yaml)
      --debug string    debug
  -h, --help            help for brm
  -t, --toggle          Help message for toggle

Use "brm [command] --help" for more information about a command.


[omm@mogdb2 ~]$ /opt/brm/brm add-server -h
add backup instance server.

Usage:
  brm add-server [flags]

Aliases:
  add-server, add-instance

Examples:

  # add opengauss instance
  brm add-instance -i testdb -D /var/lib/opengauss/data
  # add opengauss instance with database name and port
  brm add-instance -i testdb -D /var/lib/opengauss/data -d postgres -p 26000

Flags:
  -i, --instance string                name of the new backup instance server
  -D, --pgdata string                  location of the database storage area
  -d, --pgdatabase string              the openGauss database name (default "postgres")
      --pghost string                  database server host or socket directory (default "localhost")
  -p, --pgport int                     the openGauss database port
......