暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

GoldenDB基于云平台的备份恢复

张芝 2024-07-22
172

云平台简介

COS云平台简介

对象存储(Cloud Object Storage,COS)是腾讯云提供的一种存储海量文件的分布式存储服务,用户可通过网络随时存储和查看数据。腾讯云 COS 使所有用户都能使用具备高扩展性、低成本、可靠和安全的数据存储服务。

S3云平台简介

Amazon Simple Storage Service(Amazon S3)是一种对象存储服务,提供行业领先的可扩展性、数据可用性、安全性和性能。Amazon S3 云存储服务提供了一种持久安全可扩展的云存储解决方案来备份、存储大量数据,为各种各样的应用场景提供低成本高效的对象存储服务。

云备份恢复基本原理

将数据库产生的数据、binlog等文件备份到云平台,不存储在本地,减少本地的存储空间,增加本地磁盘空间的利用率。恢复过程中,通过拉取需要的备份文件恢复到任意时刻。

备份操作

备份环境准备

首先在insight页面(资源管理→存储配置→新增)中新增对应平台的存储配置;然后在(租户管理→集群实例→备份恢复→配置→编辑)指定各个租户使用的存储配置;注意实例级存储配置必须配置,MDS和GTM使用实例级存储配置,数据节点可以使用实例、分片、机房、节点级存储配置,根据需要配置。

配置完成后,检查管理节点、GTM和DN节点下是否安装coscmd/s3cmd,切换到三类组件下,输入coscmd/s3cmd -h检查coscmd是否正常显示。

命令行备份操作

管理节点用户下,执行备份数据命令,具体参考帮助说明。

dbtool -mds -backup -c[luster]=1 [-full] [-master] [-user= -password= -host="127.0.0.1:6406"]

管理节点用户下,执行备份binlog命令,具体参考帮助说明。

dbtool -cm -realtime-backup-binlog -clusterid=1

Insight界面备份

同本地备份步骤。

恢复操作

恢复环境准备

同备份环境准备,另确保有备份文件。

命令行恢复

执行下述命令可进行集群恢复操作,默认指定备份结果文件恢复到任意时刻(不包括备份开始时刻)。

dbtool -mds -restore -b[ackup]c[luster]= -r[estore]c[luster]= -[restore]t[ime]= -[backup]d[ir]= [-[restore]f[ile]=] [-no-check-binlog-time] [-no-active-rollback] [-auto/-bakstart] [-user= -password= -host="127.0.0.1:6406"]

其中,-[backup]d[ir]指的是桶名,[-[restore]f[ile]=]指的是备份结果文件。

Insight界面恢复

同本地恢复步骤。

关于配置文件的说明

关于COS配置文件的说明

当整个数据库系统选择支持备份到COS时,COS相关的配置文件部署在管理节点、GTM和所有的DN节点下,路径为$HOME/etc/storage/cos.ini,内容具体如下:

[common]段名

# The secret id is used to verify user information when connecting to cos platform. 用户(aes+base64加密)

secret_id = N0s/3uvPbwA8FBGENzeSRAbBRNm6+e++qNajkE/KntB3rffqqrtWpiWyVSo8u5Bl


# The secret key is used to verify user information when connecting to cos platform. 密码 (aes+base64加密)

secret_key = 0h/+UtyN9+bJRVEvnhF05uoeqK9gsV40JZpNIvSyPoc=


# The bucket is similar to a root directory where data is stored. 桶名

bucket = zteccbtest-1302829559


# The region of the bucket, such as bj, wh. 地区

region = ap-nanjing


# The number of concurrency in file upload. 文件上传并发数

# unit: NA, range: {1~50}, default: 1

file_up_con = 1


# The size of each block in file upload.

# unit: M, range: {1~1000}, default: 60

file_up_size = 60


# The number of concurrency in stream upload. 流式上传并发数,用于数据备份文件的上传

# unit: NA, range: {1~50}, default: 1

stream_up_con = 1


# The size of each block in stream upload.

# unit: M, range: {1~1000}, default: 60

stream_up_size = 60


# The number of concurrency in file download. 文件下载并发数

# unit: NA, range: {1~50}, default: 1

file_down_con = 1


# The size of each block in file download.

# unit: M, range: {1~1000}, default: 60

file_down_size = 60


# The number of concurrency in stream download.流式下载并发数,用于数据备份文件的下载

# unit: NA, range: {1~50}, default: 1

stream_down_con = 1


# The size of each block in stream download.

# unit: M, range: {1~1000}, default: 60

stream_down_size = 60


# The trafficlimit of each block in upload. 上传限流

# unit: M/s, range: {0~100}, default: 0

upload_traffic_limit = 0


# The trafficlimit of each block in download. 下载限流

# unit: M/s, range: {0~100}, default: 0

download_traffic_limit = 0


# The domain name used to access the cos platform, such as myqcloud.com.

domain = myqcloud.com


# The number of automatic retries after failure.

# unit: times, range: {1~10}, default: 5

retry = 5


# Connection timeout

# unit: second, range: {10~200}, default: 60

timeout = 60


# The network protocol used.

# unit: NA, range: [https, http], default: http

schema = http


# The file verification methods.

# unit: NA, range: [md5, sha1], default: md5

verify = md5


# Whether to choose anonymous mode.

# unit: NA, range: [True, true, False, false], default: False

anonymous = False


# whether the key and id are encrypted.

# unit: NA, range: [True, true, False, false], default: True

encryption = True


# log level cos日志的级别

# unit: NA, range: [CRITICAL, ERROR, WARN, INFO, DEBUG], default: INFO

log_level = INFO

cos.ini中配置项的值可以直接编辑对应的配置项修改,立即生效,不能手动修改此配置,若修改本地文件请联系金篆信科工程师。

关于S3配置文件的说明

当整个数据库系统选择支持备份到S3时,S3相关的配置文件部署在管理节点、GTM和所有的DN节点下,路径为$HOME/etc/storage/s3.ini,内容具体如下:

[common] 段名

# The access key is used to verify user information when connecting to Amazon S3. 用户(aes+base64加密)

access_key = WVnJ56SVlM9pDOAzBHA78Z+q8Jkewagdf/uslSfCJSU=


# The secret Key is used to verify user information when connecting to Amazon S3. 密码(aes+base64加密)

secret_key = 99F2CsGn49Nc3ITRWHBBCx3qy0RXQPkXDB2LvyWS8GqZLS4VYoqQ3/7Al4q0GCIw


# The bucket is similar to a root directory where data is stored. 桶名

bucket = zteccbtest


# The region of the bucket. 地区

bucket_location = cn-east-3


# S3 Endpoint. IP:PORT

host_base = obs.myhuaweicloud.com:80


# DNS-style bucket+hostname:port template for accessing a bucket. Website

host_bucket = %(bucket)s.obs.myhuaweicloud.com:80


# Limit the upload or download speed to amount bytes per second.

# unit: [k, K, m, M], default: 0

limitrate = 0


# Size of each chunk of a multipart traffic.

# unit: M, range: {5~5120}, default: 60

multipart_chunk_size_mb = 60


# Chunk size for s3-to-s3 copy.

# unit: M, range: {5~5120}, default: 1G

multipart_copy_chunk_size_mb = 1024


# Maximum chunks on AWS S3.

# unit: M, range: {1~10000}, default: 10000

multipart_max_chunks = 10000


# The network protocol used.

# unit: NA, range: [True, False], default: False

use_https = False


# log level. 日志级别

# unit: NA, range: [CRITICAL, ERROR, WARN, INFO, DEBUG], default: INFO

verbosity = INFO


# Connection timeout.

# unit: second, range: {10~300}, default: 300

socket_timeout = 60

s3.ini中配置项的值可以直接编辑对应的配置项修改,立即生效,不能手动修改此配置,若修改本地文件请联系金篆信科工程师。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论