当前位置:网站首页>Restore backup data on GCS with br
Restore backup data on GCS with br
2022-07-07 04:02:00 【Tianxiang shop】
This article describes how to store in Google Cloud Storage (GCS) Upper SST Restore the backup data to Kubernetes In the environment TiDB colony .
The recovery method used in this article is based on TiDB Operator new edition (v1.1 And above ) Of CustomResourceDefinition (CRD) Realization , The bottom layer uses BR For cluster recovery .BR Its full name is Backup & Restore, yes TiDB Command line tools for distributed backup and recovery , Used to deal with TiDB Cluster for data backup and recovery .
Use scenarios
When using BR take TiDB The cluster data is backed up to GCS after , If needed from GCS Will back up SST( Key value pair ) Restore files to TiDB colony , Please refer to this article to use BR Resume .
Be careful
- BR Only support TiDB v3.1 And above .
- BR The recovered data cannot be synchronized to the downstream , because BR Direct import SST file , At present, the downstream cluster has no way to obtain the upstream SST file .
This article assumes that it will be stored in GCS Specify the path on spec.gcs.bucket
In the bucket spec.gcs.prefix
The backup data under the folder is restored to namespace test2
Medium TiDB colony demo2
.
The first 1 Step : Prepare to restore the environment
Use BR take GCS The backup data on is restored to TiDB front , You need to prepare to restore the environment , And have the relevant permissions of the database .
Download the file backup-rbac.yaml, And execute the following command in
test2
This namespace Create the required for recovery RBAC Related resources :kubectl apply -f backup-rbac.yaml -n test2
Grant remote storage access .
Reference resources GCS Account Authorization , Authorized access GCS Remote storage .
If you use it TiDB Version below v4.0.8, You also need to do the following . If you use it TiDB by v4.0.8 And above , Please skip this step .
Make sure you have the recovery database
mysql.tidb
TabularSELECT
andUPDATE
jurisdiction , Used for adjusting before and after recovery GC Time .establish
restore-demo2-tidb-secret
secret For storing access TiDB Clustered root Account and key :kubectl create secret generic restore-demo2-tidb-secret --from-literal=user=root --from-literal=password=<password> --namespace=test2
The first 2 Step : Restore the specified backup data to TiDB colony
establish restore custom resource (CR), Restore the specified backup data to TiDB colony :
kubectl apply -f restore.yaml
restore.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-gcs namespace: test2 spec: # backupType: full br: cluster: demo2 clusterNamespace: test2 # logLevel: info # statusAddr: ${status-addr} # concurrency: 4 # rateLimit: 0 # checksum: true # sendCredToTikv: true # # Only needed for TiDB Operator < v1.1.10 or TiDB < v4.0.8 # to: # host: ${tidb_host} # port: ${tidb_port} # user: ${tidb_user} # secretName: restore-demo2-tidb-secret gcs: projectId: ${project_id} secretName: gcs-secret bucket: ${bucket} prefix: ${prefix} # location: us-east1 # storageClass: STANDARD_IA # objectAcl: private
In the configuration
restore.yaml
When you file , Please refer to the following information :- About GCS Storage related configuration , Please refer to GCS Storage field introduction .
.spec.br
Some parameters in are optional , Such aslogLevel
、statusAddr
、concurrency
、rateLimit
、checksum
、timeAgo
、sendCredToTikv
. more.spec.br
Detailed explanation of fields , Please refer to BR Field is introduced .- If you use it TiDB by v4.0.8 And above ,BR Will automatically adjust
tikv_gc_life_time
Parameters , Don't need to Restore CR Middle configurationspec.to
Field . - more
Restore
CR Detailed explanation of fields , Please refer to Restore CR Field is introduced .
Create good
Restore
CR after , View the status of the recovery through the following command :kubectl get rt -n test2 -owide
边栏推荐
- 2022中青杯C题城市交通思路分析
- 使用Thread类和Runnable接口实现多线程的区别
- The true face of function pointer in single chip microcomputer and the operation of callback function
- Introduction to opensea platform developed by NFT trading platform (I)
- API data interface of A-share index component data
- Mysql-数据丢失,分析binlog日志文件
- Operational amplifier application summary 1
- Implementation of binary search tree
- Redis configuration and optimization of NoSQL
- Using thread class and runnable interface to realize the difference between multithreading
猜你喜欢
【OA】Excel 文档生成器: Openpyxl 模块
Kotlin Android environment construction
opencv第三方库
【安全攻防】序列化與反序列,你了解多少?
ggplot 分面的细节调整汇总
Baidu map JS development, open a blank, bmapgl is not defined, err_ FILE_ NOT_ FOUND
预处理——插值
【编码字体系列】OpenDyslexic字体
Codeworks 5 questions per day (1700 average) - day 7
Implementation steps of docker deploying mysql8
随机推荐
Do you choose pandas or SQL for the top 1 of data analysis in your mind?
Termux set up the computer to connect to the mobile phone. (knock the command quickly), mobile phone termux port 8022
Delete data in SQL
tflite模型转换和量化
Que savez - vous de la sérialisation et de l'anti - séquence?
[MySQL] row sorting in MySQL
Web service performance monitoring scheme
golang 压缩和解压zip文件
HW notes (II)
HW-小记(二)
Construction of Hisilicon universal platform: color space conversion YUV2RGB
太方便了,钉钉上就可完成代码发布审批啦!
MySQL的索引
Force buckle ----- path sum III
SQL injection -day15
Machine learning notes - bird species classification using machine learning
One of oscp tools: dirsearch usage Encyclopedia
卡尔曼滤波-1
[leetcode]Spiral Matrix II
史上最全MongoDB之部署篇