{"id":21014,"date":"2024-09-26T12:04:42","date_gmt":"2024-09-26T19:04:42","guid":{"rendered":"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/"},"modified":"2024-12-11T20:20:24","modified_gmt":"2024-12-12T04:20:24","slug":"advanced-backup-and-recovery-strategies-for-tidb","status":"publish","type":"article","link":"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/","title":{"rendered":"Advanced Backup and Recovery Strategies for TiDB"},"content":{"rendered":"<h2><span class=\"ez-toc-section\" id=\"Introduction_to_Advanced_Backup_and_Recovery_in_TiDB\"><\/span>Introduction to Advanced Backup and Recovery in TiDB<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Importance of Robust Backup and Recovery Strategies<\/h3>\n<p>In today&#8217;s data-driven world, a sound backup and recovery strategy is vital for maintaining the integrity and availability of database systems. Data is an invaluable asset, and ensuring its safety against accidental deletion, corruption, or catastrophic failures is non-negotiable. The consequences of data loss can be severe, ranging from operational downtime to significant financial loss and damaged reputation.<\/p>\n<p>Backup and recovery strategies provide a safety net against such adverse events, ensuring business continuity and compliance with data protection regulations. For complex database systems like TiDB, which handles vast volumes of data across numerous nodes, a robust backup and recovery mechanism is even more critical. These strategies ensure that data can be restored quickly and accurately, minimizing downtime and service disruption.<\/p>\n<h3>Overview of TiDB Backup and Recovery Mechanisms<\/h3>\n<p>TiDB, a distributed SQL database that features horizontal scalability, offers multiple tools and technologies for backing up and recovering data. Its architecture and underlying mechanisms enable high availability and fault tolerance, but effective backup and recovery practices are essential for safeguarding data.<\/p>\n<p>TiDB uses tools like <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/backup-and-restore-overview\">BR (Backup and Restore)<\/a>, Dumpling, and TiDB Lightning to perform backups and recoveries. BR is suitable for distributed backup and restoration of large volumes of data, while Dumpling is ideal for exporting data from TiDB or MySQL as SQL or CSV files. TiDB Lightning further simplifies the fast import of backed-up data.<\/p>\n<p>These tools enable users to perform both full and incremental backups, facilitating efficient and effective data protection strategies.<\/p>\n<h3>Key Concepts: Full vs Incremental Backups, Point-in-Time Recovery (PITR)<\/h3>\n<p>Understanding the key concepts related to backups and recovery is crucial for implementing robust strategies in TiDB.<\/p>\n<p><strong>Full Backups<\/strong>: A full backup entails copying the entire dataset at a specific point in time. This backup type is comprehensive and forms the foundation of a backup strategy, providing a complete snapshot of the database.<\/p>\n<p><strong>Incremental Backups<\/strong>: Incremental backups capture only the data changes made since the last backup (whether full or incremental). This approach reduces backup time and storage requirements, making the process more efficient and less resource-intensive.<\/p>\n<p><strong>Point-in-Time Recovery (PITR)<\/strong>: PITR enables restoring the database to a specific point in time before a failure or unwanted event. This method combines full and incremental backups along with transaction logs, allowing precise recovery and minimizing data loss.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Techniques_for_Advanced_Backup_in_TiDB\"><\/span>Techniques for Advanced Backup in TiDB<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Full Backups: Implementation and Best Practices<\/h3>\n<p>Full backups in TiDB provide a complete snapshot of the database, capturing its state at a specific point in time. Implementing full backups involves several best practices to ensure data consistency and efficiency.<\/p>\n<p><strong>Implementation Steps<\/strong>:<\/p>\n<ol>\n<li>Use the BR tool to perform a full backup:\n<div class=\"codehilite\">\n<pre><code>br backup full --pd <span class=\"s2\">\"<\/span><span class=\"si\">${<\/span><span class=\"nv\">PD_IP<\/span><span class=\"si\">}<\/span><span class=\"s2\">:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-data\/2023-01-01\/\"<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span> <span class=\"se\">\\<\/span>\n--log-file backupfull.log\n<\/code><\/pre>\n<\/div>\n<\/li>\n<li>Regularly schedule full backups to maintain an up-to-date snapshot of the database.<\/li>\n<li>Store backup data in a secure and redundant storage solution such as Amazon S3, Google Cloud Storage, or Azure Blob Storage.<\/li>\n<\/ol>\n<p><strong>Best Practices<\/strong>:<\/p>\n<ol>\n<li><strong>Consistency<\/strong>: Ensure that backups are consistent by pausing write operations or using transaction checkpoints before initiating a full backup.<\/li>\n<li><strong>Automation<\/strong>: Automate full backups using scheduling tools like cron jobs or Kubernetes CronJobs.<\/li>\n<li><strong>Verification<\/strong>: Regularly verify backups by performing test restores to ensure data integrity and recoverability.<\/li>\n<li><strong>Retention Policy<\/strong>: Implement a retention policy to manage the lifecycle of backup files, retaining essential backups while deleting outdated ones.<\/li>\n<\/ol>\n<h3>Incremental Backups: Advantages and Setup<\/h3>\n<p>Incremental backups offer a streamlined approach to data protection, capturing only the changes made since the last backup. This method reduces backup time, storage requirements, and network bandwidth usage.<\/p>\n<p><strong>Advantages<\/strong>:<\/p>\n<ol>\n<li><strong>Efficiency<\/strong>: Incremental backups require less time and storage compared to full backups, making them suitable for high-frequency backups.<\/li>\n<li><strong>Reduced Load<\/strong>: Less data needs to be transferred, reducing the performance impact on the database and network.<\/li>\n<li><strong>Cost-Effective<\/strong>: Lower storage usage translates to cost savings, especially for large databases.<\/li>\n<\/ol>\n<p><strong>Setup<\/strong>:<\/p>\n<ol>\n<li><strong>Perform Initial Full Backup<\/strong>: Begin with a full backup as a baseline.<\/li>\n<li><strong>Configuration of Incremental Backup<\/strong>:\n<div class=\"codehilite\">\n<pre><code><span class=\"nv\">LAST_BACKUP_TS<\/span><span class=\"o\">=<\/span><span class=\"k\">$(<\/span>tiup br validate decode --field<span class=\"o\">=<\/span><span class=\"s2\">\"end-version\"<\/span> --storage <span class=\"s2\">\"s3:\/\/backup-data\/2023-01-01\/\"<\/span><span class=\"p\">|<\/span> tail -n1<span class=\"k\">)<\/span>\ntiup br backup full --pd <span class=\"s2\">\"<\/span><span class=\"si\">${<\/span><span class=\"nv\">PD_IP<\/span><span class=\"si\">}<\/span><span class=\"s2\">:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-data\/incremental-2023-01-02\/\"<\/span> <span class=\"se\">\\<\/span>\n--lastbackupts <span class=\"nv\">$LAST_BACKUP_TS<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span>\n<\/code><\/pre>\n<\/div>\n<\/li>\n<li><strong>Ensure Proper Configuration of <code>tidb_gc_life_time<\/code><\/strong>: Set <code>tidb_gc_life_time<\/code> to a value that allows all incremental data within the period to be backed up without being garbage-collected.<\/li>\n<li><strong>Regular Scheduling<\/strong>: Run incremental backups at regular intervals to capture changes continuously.<\/li>\n<\/ol>\n<h3>Scheduling Backup Jobs: Tools and Automation<\/h3>\n<p><strong>Tools and Techniques<\/strong>:<\/p>\n<ol>\n<li><strong>Cron Jobs<\/strong>: Unix-based systems can utilize cron jobs for scheduling backups:\n<div class=\"codehilite\">\n<pre><code><span class=\"m\">0<\/span> <span class=\"m\">1<\/span> * * * \/path\/to\/backup_script.sh\n<\/code><\/pre>\n<\/div>\n<\/li>\n<li><strong>Kubernetes CronJobs<\/strong>: For TiDB clusters running on Kubernetes, use CronJobs to automate backups:\n<div class=\"codehilite\">\n<pre><code><span class=\"nt\">apiVersion<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">batch\/v1<\/span>\n<span class=\"nt\">kind<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">CronJob<\/span>\n<span class=\"nt\">metadata<\/span><span class=\"p\">:<\/span>\n  <span class=\"nt\">name<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">tidb-full-backup<\/span>\n<span class=\"nt\">spec<\/span><span class=\"p\">:<\/span>\n  <span class=\"nt\">schedule<\/span><span class=\"p\">:<\/span> <span class=\"s\">\"0<\/span> <span class=\"s\">1<\/span> <span class=\"s\">*<\/span> <span class=\"s\">*<\/span> <span class=\"s\">*\"<\/span>\n  <span class=\"nt\">jobTemplate<\/span><span class=\"p\">:<\/span>\n    <span class=\"nt\">spec<\/span><span class=\"p\">:<\/span>\n      <span class=\"nt\">template<\/span><span class=\"p\">:<\/span>\n        <span class=\"nt\">spec<\/span><span class=\"p\">:<\/span>\n          <span class=\"nt\">containers<\/span><span class=\"p\">:<\/span>\n          <span class=\"p p-Indicator\">-<\/span> <span class=\"nt\">name<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">br<\/span>\n            <span class=\"nt\">image<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">pingcap\/br:v6.1.0<\/span>\n            <span class=\"nt\">args<\/span><span class=\"p\">:<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">backup<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">full<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">--pd<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"s\">\"${PD_IP}:2379\"<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">--storage<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"s\">\"s3:\/\/backup-data\/$(date<\/span> <span class=\"s\">+<\/span><span class=\"err\">\\<\/span><span class=\"s\">%Y-<\/span><span class=\"err\">\\<\/span><span class=\"s\">%m-<\/span><span class=\"err\">\\<\/span><span class=\"s\">%d)\"<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">--ratelimit<\/span>\n            <span class=\"p p-Indicator\">-<\/span> <span class=\"s\">\"128\"<\/span>\n          <span class=\"nt\">restartPolicy<\/span><span class=\"p\">:<\/span> <span class=\"l l-Scalar l-Scalar-Plain\">OnFailure<\/span>\n<\/code><\/pre>\n<\/div>\n<\/li>\n<li><strong>Backup Management Tools<\/strong>: Utilize backup management tools integrated with CI\/CD pipelines for more sophisticated scheduling and monitoring.<\/li>\n<\/ol>\n<h3>Using BR (Backup &amp; Restore) Tool: Step-by-Step Guide<\/h3>\n<p>The BR (Backup &amp; Restore) tool is a comprehensive solution for full and incremental backups in TiDB. Here&#8217;s a step-by-step guide for using BR:<\/p>\n<p><strong>Step 1: Install BR<\/strong>:<\/p>\n<div class=\"codehilite\">\n<pre><code>tiup install br\n<\/code><\/pre>\n<\/div>\n<p><strong>Step 2: Perform Full Backup<\/strong>:<\/p>\n<div class=\"codehilite\">\n<pre><code>br backup full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/full\"<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span> --log-file full_backup.log\n<\/code><\/pre>\n<\/div>\n<p><strong>Step 3: Perform Incremental Backup<\/strong>:<br \/>\nRetrieve the last backup timestamp:<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"nv\">LAST_BACKUP_TS<\/span><span class=\"o\">=<\/span><span class=\"k\">$(<\/span>tiup br validate decode --field<span class=\"o\">=<\/span><span class=\"s2\">\"end-version\"<\/span> --storage <span class=\"s2\">\"s3:\/\/backup-bucket\/full\"<\/span> <span class=\"p\">|<\/span> tail -n1<span class=\"k\">)<\/span>\n<\/code><\/pre>\n<\/div>\n<p>Run the incremental backup:<\/p>\n<div class=\"codehilite\">\n<pre><code>br backup full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/incremental\"<\/span> <span class=\"se\">\\<\/span>\n--lastbackupts <span class=\"nv\">$LAST_BACKUP_TS<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span>\n<\/code><\/pre>\n<\/div>\n<p><strong>Step 4: Restore from Backup<\/strong>:<br \/>\nFull restore:<\/p>\n<div class=\"codehilite\">\n<pre><code>br restore full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/full\"<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span> --log-file full_restore.log\n<\/code><\/pre>\n<\/div>\n<p>Incremental restore:<\/p>\n<div class=\"codehilite\">\n<pre><code>br restore full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/incremental\"<\/span> <span class=\"se\">\\<\/span>\n--lastbackupts <span class=\"nv\">$LAST_BACKUP_TS<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"Advanced_Recovery_Methods_in_TiDB\"><\/span>Advanced Recovery Methods in TiDB<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Point-in-Time Recovery (PITR): Concept and Execution<\/h3>\n<p>PITR allows databases to be restored to any specific point in time, offering enhanced data protection against accidental deletions or corruptions. In TiDB, this is executed by combining full and incremental backups with transaction logs to reconstruct the state of the database right before the undesired event.<\/p>\n<p><strong>Concept<\/strong>:<br \/>\nPITR is based on continuous log backups that track changes from the last snapshot backup and allows user to restore the database to a specific second before failure or corruption occurred.<\/p>\n<p><strong>Execution<\/strong>:<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"c1\"># Full restore from the last snapshot<\/span>\ntiup br restore full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/full\"<\/span> <span class=\"se\">\\<\/span>\n--ratelimit <span class=\"m\">128<\/span>\n\n<span class=\"c1\"># Applying incremental backups up to the desired point in time<\/span>\ntiup br restore point --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">\\<\/span>\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/incremental\"<\/span> <span class=\"se\">\\<\/span>\n--restored-ts <span class=\"s2\">\"2023-01-10 13:00:00\"<\/span>\n<\/code><\/pre>\n<\/div>\n<h3>Disaster Recovery Planning with TiDB<\/h3>\n<p>Effective disaster recovery (DR) is composed of carefully structured strategies and planning that ensure minimal downtime and data loss during catastrophic events. TiDB equips users with different disaster recovery solutions such as regional replication, multiple replica clusters, and the use of TiCDC for data synchronization.<\/p>\n<p><strong>Regional Replication using TiCDC<\/strong>:<br \/>\nTiCDC facilitates continuous data changes to a secondary cluster, forming a high availability scenario:<\/p>\n<div class=\"codehilite\">\n<pre><code>tiup cdc start-capture --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> --sink-uri<span class=\"o\">=<\/span><span class=\"s2\">\"mysql:\/\/user:password@127.0.0.1:3306\/\"<\/span>\n<\/code><\/pre>\n<\/div>\n<h3>Recovery from Corrupted Data: Strategies and Tools<\/h3>\n<p>When data corruption occurs, timely and effective recovery strategies are necessary to restore the functional state of the database without data loss.<\/p>\n<p><strong>Strategies<\/strong>:<\/p>\n<ol>\n<li><strong>Identify Corruption Source<\/strong>: Use TiDB&#8217;s internal diagnostic tools to locate the source and extent of corruption.<\/li>\n<li><strong>Utilize Backups<\/strong>: Revert to a recent uncorrupted backup to minimize data loss.<\/li>\n<li><strong>Partial Restore<\/strong>: Restore only the affected tables or partitions to avoid extensive downtime.<\/li>\n<\/ol>\n<p><strong>Tools<\/strong>:<\/p>\n<ol>\n<li><strong>BR Restore<\/strong>: Use BR (Backup &amp; Restore) for quick database restoration.<\/li>\n<li><strong>TiUP Cluster Diagnostics<\/strong>: Identify anomalies swiftly for ongoing monitoring.<\/li>\n<\/ol>\n<h3>Testing Recovery Plans: Ensuring Reliability and Minimizing Downtime<\/h3>\n<p>Creating and testing a recovery plan involves rigorous and regular testing to ensure the process runs smoothly during an actual disaster event.<\/p>\n<p><strong>Steps<\/strong>:<\/p>\n<ol>\n<li><strong>Develop a Detailed Script<\/strong>: Cover all potential failure scenarios.<\/li>\n<li><strong>Simulate Failures<\/strong>: Perform dry-run tests during low traffic periods.<\/li>\n<li><strong>Analyze Downtime vs. Recovery Time<\/strong>: Evaluate actual downtimes experienced during tests to optimize processes.<\/li>\n<li><strong>\uc120\uc801 \uc11c\ub958 \ube44\uce58<\/strong>: Maintain detailed recovery documentation for quick reference during emergencies.<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Best_Practices_and_Case_Studies\"><\/span>Best Practices and Case Studies<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Real-World Implementations of TiDB Backup and Recovery<\/h3>\n<p>Backup and recovery operations are most beneficial when viewed through the lens of real-world scenarios. Companies like PingCAP leverage robust backup and recovery techniques to ensure that their distributed databases remain available and resilient against data loss threats:<\/p>\n<ul>\n<li><strong>Case Study<\/strong>: A financial services firm implements TiDB solutions ensuring sub-minute recovery times using a combination of full and incremental backups.<\/li>\n<li><strong>Case Study<\/strong>: An e-commerce business stands resilient using PITR, enabling them to recover and revert data to any hour during a critical sales period.<\/li>\n<\/ul>\n<h3>Common Challenges and How to Overcome Them<\/h3>\n<p>Despite the robustness of TiDB&#8217;s solutions, operational challenges arise. Key challenges include:<\/p>\n<ol>\n<li><strong>Consistency Issues<\/strong>: Ensuring consistency in distributed environments.<br \/>\n<strong>Solution<\/strong>: Leverage transactional consistency protocols and pause writes during critical backup intervals.<\/li>\n<li><strong>High Resource Utilization<\/strong>: Dealing with resource spikes during backup.<br \/>\n<strong>Solution<\/strong>: Schedule backups during off-peak hours and use appropriate <code>--ratelimit<\/code> options.<\/li>\n<li><strong>Retention Policy Management<\/strong>: Deciding how much backup data to retain.<br \/>\n<strong>Solution<\/strong>: Implement automated policies aligning with compliance needs.<\/li>\n<\/ol>\n<h3>Performance Optimization During Backup and Recovery<\/h3>\n<p>Optimizing performance during backup and recovery operations ensures minimal impact on live systems:<\/p>\n<ol>\n<li><strong>Thread Management<\/strong>: Configure thread usage in BR to optimize resource allocation:\n<div class=\"codehilite\">\n<pre><code>br backup full --pd <span class=\"s2\">\"127.0.0.1:2379\"<\/span> <span class=\"se\">&lt;\/span&gt;\n--storage <span class=\"s2\">\"s3:\/\/backup-bucket\/full\"<\/span> <span class=\"se\">&lt;\/span&gt;\n--ratelimit <span class=\"m\">128<\/span>\n<\/span><\/span><\/code><\/pre>\n<\/div>\n<\/li>\n<\/ol>\n<ol start=\"2\">\n<li><strong>Compression Techniques<\/strong>: Use data compression to speed up backup and reduce storage costs.<\/li>\n<li><strong>Data Pruning<\/strong>: Regularly prune obsolete data to improve backup times and resource utilization.<\/li>\n<\/ol>\n<h3>Case Studies Highlighting Successful Recovery Scenarios<\/h3>\n<p><strong>Scenario 1<\/strong>: A retail chain rapidly recovers a corrupted central database using PITR, ensuring no transactional data loss was incurred.<\/p>\n<p><strong>Scenario 2<\/strong>: An insurance firm successfully replicates multi-region TiDB clusters using TiCDC, maintaining sub-second RPO even during regional outages.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>In a world where data is the critical lifeline of businesses, robust backup and recovery strategies for TiDB are imperative. By leveraging tools such as BR, Dumpling, and TiDB Lightning in conjunction with incremental backup and PITR techniques, organizations can ensure resilient, recoverable, and compliant distributed database systems.<\/p>\n<p>The implementation of these advanced strategies, backed by regular testing and optimization, will not only mitigate the risks of data loss but also guarantee that the systems bounce back swiftly, maintaining the continuity and integrity of the essential services they underpin.<\/p>","protected":false},"excerpt":{"rendered":"<p>Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.<\/p>","protected":false},"author":8,"featured_media":0,"template":"","class_list":["post-21014","article","type-article","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Advanced Backup and Recovery Strategies for TiDB | TiDB<\/title>\n<meta name=\"description\" content=\"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Advanced Backup and Recovery Strategies for TiDB | TiDB\" \/>\n<meta property=\"og:description\" content=\"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\" \/>\n<meta property=\"og:site_name\" content=\"TiDB\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/pingcap2015\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-12T04:20:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/static.pingcap.com\/files\/2024\/09\/11005522\/Homepage-Ad.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"714\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:label1\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data1\" content=\"9\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\",\"url\":\"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\",\"name\":\"Advanced Backup and Recovery Strategies for TiDB | TiDB\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/#website\"},\"datePublished\":\"2024-09-26T19:04:42+00:00\",\"dateModified\":\"2024-12-12T04:20:24+00:00\",\"description\":\"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.pingcap.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\/\/www.pingcap.com\/article\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Advanced Backup and Recovery Strategies for TiDB\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.pingcap.com\/#website\",\"url\":\"https:\/\/www.pingcap.com\/\",\"name\":\"TiDB\",\"description\":\"TiDB | SQL at Scale\",\"publisher\":{\"@id\":\"https:\/\/www.pingcap.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.pingcap.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.pingcap.com\/#organization\",\"name\":\"PingCAP\",\"url\":\"https:\/\/www.pingcap.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"width\":811,\"height\":232,\"caption\":\"PingCAP\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/facebook.com\/pingcap2015\",\"https:\/\/x.com\/PingCAP\",\"https:\/\/linkedin.com\/company\/pingcap\",\"https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Advanced Backup and Recovery Strategies for TiDB | TiDB","description":"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/","og_locale":"ko_KR","og_type":"article","og_title":"Advanced Backup and Recovery Strategies for TiDB | TiDB","og_description":"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.","og_url":"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/","og_site_name":"TiDB","article_publisher":"https:\/\/facebook.com\/pingcap2015","article_modified_time":"2024-12-12T04:20:24+00:00","og_image":[{"width":1440,"height":714,"url":"https:\/\/static.pingcap.com\/files\/2024\/09\/11005522\/Homepage-Ad.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_site":"@PingCAP","twitter_misc":{"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"9\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/","url":"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/","name":"Advanced Backup and Recovery Strategies for TiDB | TiDB","isPartOf":{"@id":"https:\/\/www.pingcap.com\/#website"},"datePublished":"2024-09-26T19:04:42+00:00","dateModified":"2024-12-12T04:20:24+00:00","description":"Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.","breadcrumb":{"@id":"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.pingcap.com\/article\/advanced-backup-and-recovery-strategies-for-tidb\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pingcap.com\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/www.pingcap.com\/article\/"},{"@type":"ListItem","position":3,"name":"Advanced Backup and Recovery Strategies for TiDB"}]},{"@type":"WebSite","@id":"https:\/\/www.pingcap.com\/#website","url":"https:\/\/www.pingcap.com\/","name":"\ud2f0DB","description":"TiDB | SQL at Scale","publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pingcap.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.pingcap.com\/#organization","name":"PingCAP","url":"https:\/\/www.pingcap.com\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/","url":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","contentUrl":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","width":811,"height":232,"caption":"PingCAP"},"image":{"@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/pingcap2015","https:\/\/x.com\/PingCAP","https:\/\/linkedin.com\/company\/pingcap","https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA"]}]}},"card_markup":"        <a class=\"card-article\" href=\"https:\/\/www.pingcap.com\/ko\/article\/advanced-backup-and-recovery-strategies-for-tidb\/\">            <h3>Advanced Backup and Recovery Strategies for TiDB<\/h3>            <p>Learn advanced backup and recovery strategies for TiDB, including tools like BR, Dumpling, and TiDB Lightning, plus best practices and case studies.<\/p>        <\/a>","_links":{"self":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/article\/21014","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/users\/8"}],"wp:attachment":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media?parent=21014"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}