MySQL Parallel Replication: inventory, use-case and limitationsJean-François Gagné
In the last 24 months, MySQL/MariaDB replication speed has improved a lot thanks to parallel replication. MySQL and MariaDB have different types of parallel replication; in this talk, I present the different implementations, with their limitations and the corresponding tuning parameters. I cover what to do to make parallel replication faster and what to avoid for maximizing parallel replication benefits. I also present benchmark results from real Booking.com workloads. Finally, I discuss some deployments at Booking.com that take advantage of parallel replication speed improvements.
MySQL replication has evolved a lot in 5.6 ,5.7 and 8.0. This presentation focus on the changes made in parallel replication. It covers MySQL 8.0. It was presented at Mydbops database meetup on 04-08-2016 in Bangalore.
MySQL Parallel Replication: All the 5.7 and 8.0 Details (LOGICAL_CLOCK)Jean-François Gagné
To get better replication speed and less lag, MySQL implements parallel replication in the same schema, also known as LOGICAL_CLOCK. But fully benefiting from this feature is not as simple as just enabling it.
In this talk, I explain in detail how this feature works. I also cover how to optimize parallel replication and the improvements made in MySQL 8.0 and back-ported in 5.7 (Write Sets), greatly improving the potential for parallel execution on replicas (but needing RBR).
Come to this talk to get all the details about MySQL 5.7 and 8.0 Parallel Replication.
MySQL Parallel Replication: inventory, use-case and limitationsJean-François Gagné
In the last 24 months, MySQL/MariaDB replication speed has improved a lot thanks to parallel replication. MySQL and MariaDB have different types of parallel replication; in this talk, I present the different implementations, with their limitations and the corresponding tuning parameters. I cover what to do to make parallel replication faster and what to avoid for maximizing parallel replication benefits. I also present benchmark results from real Booking.com workloads. Finally, I discuss some deployments at Booking.com that take advantage of parallel replication speed improvements.
MySQL replication has evolved a lot in 5.6 ,5.7 and 8.0. This presentation focus on the changes made in parallel replication. It covers MySQL 8.0. It was presented at Mydbops database meetup on 04-08-2016 in Bangalore.
MySQL Parallel Replication: All the 5.7 and 8.0 Details (LOGICAL_CLOCK)Jean-François Gagné
To get better replication speed and less lag, MySQL implements parallel replication in the same schema, also known as LOGICAL_CLOCK. But fully benefiting from this feature is not as simple as just enabling it.
In this talk, I explain in detail how this feature works. I also cover how to optimize parallel replication and the improvements made in MySQL 8.0 and back-ported in 5.7 (Write Sets), greatly improving the potential for parallel execution on replicas (but needing RBR).
Come to this talk to get all the details about MySQL 5.7 and 8.0 Parallel Replication.
This tutorial covers all parallel replication implementation in MariaDB 10.0 and 10.1 and MySQL 5.6, 5.7 and 8.0 (including how it works in Group Replication).
MySQL and MariaDB have different types of parallel replication. In this tutorial, we present the different implementations that allow us to understand their limitations and tuning parameters. We cover how to make parallel replication faster and what to avoid for maximizing its benefits. We also present tests from Booking.com workloads.
Some of the subjects that are covered are group commit and optimistic parallel replication in MariaDB, the parallelism interval of MySQL and its Write Set optimization, and the ?slowing down the master to speed up the slave? optimization.
After this tutorial, you will know everything you need to implement and tune parallel replication in your environment. But more importantly, we will show how you can test parallel replication benefit in a non-disruptive way before deployment.
Almost Perfect Service Discovery and Failover with ProxySQL and OrchestratorJean-François Gagné
Of course there is no such thing as perfect service discovery, and we will see why in the talk. However, the way ProxySQL is deployed in this case minimizes the risk for split-brains, and this is why I qualify it as almost perfect. But let’s step back a little...
MySQL alone is not a high availability solution. To provide resilience to primary failure, other components need to be integrated with MySQL. At MessageBird, these additional components are ProxySQL and Orchestrator. In this talk, we describe how ProxySQL is architectured to provide close to perfect Service Discovery and how this, combined with Orchestrator, allows for automatic failover. The talk presents the details of the integration of MySQL, ProxySQL and Orchestrator in Google Cloud (and it would be easy to re-implement a similar architecture at other cloud vendors or on-premises). We will also cover lessons learned for the 2 years this architecture has been in production. Come to this talk to learn more about MySQL high availability, ProxySQL and Orchestrator.
We talk a lot about Galera Cluster being great for High Availability, but what about Disaster Recovery (DR)? Database outages can occur when you lose a data centre due to data center power outages or natural disaster, so why not plan appropriately in advance?
In this webinar, we will discuss the business considerations including achieving the highest possible uptime, analysis business impact as well as risk, focus on disaster recovery itself, as well as discussing various scenarios, from having no offsite data to having synchronous replication to another data centre.
This webinar will cover MySQL with Galera Cluster, as well as branches MariaDB Galera Cluster as well as Percona XtraDB Cluster (PXC). We will focus on architecture solutions, DR scenarios and have you on your way to success at the end of it.
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
As proxies (and database routers) go, the first one I ever used was the now deprecated MySQL Proxy. Since then, I've managed to use MariaDB MaxScale quite a bit (including its fork AirBnB MaxScale), played around with ProxySQL in recent time, and also started taking a look at MySQL Router. In this quick 20-minute overview, we'll discuss why these three exist, a feature comparison, and reasons when to use the right tool for the job.
We will show the advantages of having a geo-distributed database cluster and how to create one using Galera Cluster for MySQL. We will also discuss the configuration and status variables that are involved and how to deal with typical situations on the WAN such as slow, untrusted or unreliable links, latency and packet loss. We will demonstrate a multi-region cluster on Amazon EC2 and perform some throughput and latency measurements in real-time (video http://galeracluster.com/videos/using-galera-replication-to-create-geo-distributed-clusters-on-the-wan-webinar-video-3/)
Performance Schema is a powerful diagnostic instrument for:
- Query performance
- Complicated locking issues
- Memory leaks
- Resource usage
- Problematic behavior, caused by inappropriate settings
- More
It comes with hundreds of options which allow precisely tuning what to instrument. More than 100 consumers store collected data.
In this tutorial, we will try all the important instruments out. We will provide a test environment and a few typical problems which could be hardly solved without Performance Schema. You will not only learn how to collect and use this information but have experience with it.
Tutorial at Percona Live Austin 2019
Replication Troubleshooting in Classic VS GTIDMydbops
This presentation talk will assist you in troubleshooting MySQL replication for the most common issues we might face with a simple comparison of how can we get them solved in the different replication methods (Classic VS GTID).
In the first part of Galera Cluster best practices series, we will discuss the following topics:
* ongoing monitoring of the cluster and detection of bottlenecks;
* fine-tuning the configuration based on the actual database workload;
* selecting the optimal State Snapshot Transfer (SST) method;
* backup strategies
(video:http://galeracluster.com/videos/2159/)
The presentation covers improvements made to the redo logs in MySQL 8.0 and their impact on the MySQL performance and Operations. This covers the MySQL version still MySQL 8.0.30.
Running MariaDB in multiple data centersMariaDB plc
MariaDB is often deployed in multiple data centers for high availability and/or disaster recovery. Tim Tadeo, Senior Sales Engineer, walks through real-world use cases and the topologies customers have created to leverage multiple data centers. He also discusses important considerations and how to address them, as well as more advanced options such as dedicated binlog servers for cross–data center replication.
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Severalnines
Galera Cluster for MySQL, Percona XtraDB Cluster and MariaDB Cluster (the three “flavours” of Galera Cluster) make use of the Galera WSREP libraries to handle synchronous replication.MySQL Cluster is the official clustering solution from Oracle, while Galera Cluster for MySQL is slowly but surely establishing itself as the de-facto clustering solution in the wider MySQL eco-system.
In this webinar, we will look at all these alternatives and present an unbiased view on their strengths/weaknesses and the use cases that fit each alternative.
This webinar will cover the following:
MySQL Cluster architecture: strengths and limitations
Galera Architecture: strengths and limitations
Deployment scenarios
Data migration
Read and write workloads (Optimistic/pessimistic locking)
WAN/Geographical replication
Schema changes
Management and monitoring
Yahoo: Experiences with MySQL GTID and Multi Threaded ReplicationYashada Jadhav
Our experiences running GTID and parallel replication in production, advantages, limitations, lessons learnt and tips and tricks we discovered along the way at Oracle Openworld 2015
This tutorial covers all parallel replication implementation in MariaDB 10.0 and 10.1 and MySQL 5.6, 5.7 and 8.0 (including how it works in Group Replication).
MySQL and MariaDB have different types of parallel replication. In this tutorial, we present the different implementations that allow us to understand their limitations and tuning parameters. We cover how to make parallel replication faster and what to avoid for maximizing its benefits. We also present tests from Booking.com workloads.
Some of the subjects that are covered are group commit and optimistic parallel replication in MariaDB, the parallelism interval of MySQL and its Write Set optimization, and the ?slowing down the master to speed up the slave? optimization.
After this tutorial, you will know everything you need to implement and tune parallel replication in your environment. But more importantly, we will show how you can test parallel replication benefit in a non-disruptive way before deployment.
Almost Perfect Service Discovery and Failover with ProxySQL and OrchestratorJean-François Gagné
Of course there is no such thing as perfect service discovery, and we will see why in the talk. However, the way ProxySQL is deployed in this case minimizes the risk for split-brains, and this is why I qualify it as almost perfect. But let’s step back a little...
MySQL alone is not a high availability solution. To provide resilience to primary failure, other components need to be integrated with MySQL. At MessageBird, these additional components are ProxySQL and Orchestrator. In this talk, we describe how ProxySQL is architectured to provide close to perfect Service Discovery and how this, combined with Orchestrator, allows for automatic failover. The talk presents the details of the integration of MySQL, ProxySQL and Orchestrator in Google Cloud (and it would be easy to re-implement a similar architecture at other cloud vendors or on-premises). We will also cover lessons learned for the 2 years this architecture has been in production. Come to this talk to learn more about MySQL high availability, ProxySQL and Orchestrator.
We talk a lot about Galera Cluster being great for High Availability, but what about Disaster Recovery (DR)? Database outages can occur when you lose a data centre due to data center power outages or natural disaster, so why not plan appropriately in advance?
In this webinar, we will discuss the business considerations including achieving the highest possible uptime, analysis business impact as well as risk, focus on disaster recovery itself, as well as discussing various scenarios, from having no offsite data to having synchronous replication to another data centre.
This webinar will cover MySQL with Galera Cluster, as well as branches MariaDB Galera Cluster as well as Percona XtraDB Cluster (PXC). We will focus on architecture solutions, DR scenarios and have you on your way to success at the end of it.
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
As proxies (and database routers) go, the first one I ever used was the now deprecated MySQL Proxy. Since then, I've managed to use MariaDB MaxScale quite a bit (including its fork AirBnB MaxScale), played around with ProxySQL in recent time, and also started taking a look at MySQL Router. In this quick 20-minute overview, we'll discuss why these three exist, a feature comparison, and reasons when to use the right tool for the job.
We will show the advantages of having a geo-distributed database cluster and how to create one using Galera Cluster for MySQL. We will also discuss the configuration and status variables that are involved and how to deal with typical situations on the WAN such as slow, untrusted or unreliable links, latency and packet loss. We will demonstrate a multi-region cluster on Amazon EC2 and perform some throughput and latency measurements in real-time (video http://galeracluster.com/videos/using-galera-replication-to-create-geo-distributed-clusters-on-the-wan-webinar-video-3/)
Performance Schema is a powerful diagnostic instrument for:
- Query performance
- Complicated locking issues
- Memory leaks
- Resource usage
- Problematic behavior, caused by inappropriate settings
- More
It comes with hundreds of options which allow precisely tuning what to instrument. More than 100 consumers store collected data.
In this tutorial, we will try all the important instruments out. We will provide a test environment and a few typical problems which could be hardly solved without Performance Schema. You will not only learn how to collect and use this information but have experience with it.
Tutorial at Percona Live Austin 2019
Replication Troubleshooting in Classic VS GTIDMydbops
This presentation talk will assist you in troubleshooting MySQL replication for the most common issues we might face with a simple comparison of how can we get them solved in the different replication methods (Classic VS GTID).
In the first part of Galera Cluster best practices series, we will discuss the following topics:
* ongoing monitoring of the cluster and detection of bottlenecks;
* fine-tuning the configuration based on the actual database workload;
* selecting the optimal State Snapshot Transfer (SST) method;
* backup strategies
(video:http://galeracluster.com/videos/2159/)
The presentation covers improvements made to the redo logs in MySQL 8.0 and their impact on the MySQL performance and Operations. This covers the MySQL version still MySQL 8.0.30.
Running MariaDB in multiple data centersMariaDB plc
MariaDB is often deployed in multiple data centers for high availability and/or disaster recovery. Tim Tadeo, Senior Sales Engineer, walks through real-world use cases and the topologies customers have created to leverage multiple data centers. He also discusses important considerations and how to address them, as well as more advanced options such as dedicated binlog servers for cross–data center replication.
Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison Severalnines
Galera Cluster for MySQL, Percona XtraDB Cluster and MariaDB Cluster (the three “flavours” of Galera Cluster) make use of the Galera WSREP libraries to handle synchronous replication.MySQL Cluster is the official clustering solution from Oracle, while Galera Cluster for MySQL is slowly but surely establishing itself as the de-facto clustering solution in the wider MySQL eco-system.
In this webinar, we will look at all these alternatives and present an unbiased view on their strengths/weaknesses and the use cases that fit each alternative.
This webinar will cover the following:
MySQL Cluster architecture: strengths and limitations
Galera Architecture: strengths and limitations
Deployment scenarios
Data migration
Read and write workloads (Optimistic/pessimistic locking)
WAN/Geographical replication
Schema changes
Management and monitoring
Yahoo: Experiences with MySQL GTID and Multi Threaded ReplicationYashada Jadhav
Our experiences running GTID and parallel replication in production, advantages, limitations, lessons learnt and tips and tricks we discovered along the way at Oracle Openworld 2015
MySQL Parallel Replication: inventory, use-cases and limitationsJean-François Gagné
In the last 24 months, MySQL replication speed has improved a lot thanks to implementing parallel replication. MySQL and MariaDB have different types of parallel replication; in this talk, I present in detail the different implementations, with their limitations and the corresponding tuning parameters (covering MySQL 5.6, MariaDB 10.0, MariaDB 10.1 and MySQL 5.7). I also present benchmark results from real Booking.com workloads. Finally, I discuss some deployments at Booking.com that benefits from parallel replication speed improvements.
MySQL Parallel Replication: inventory, use-case and limitationsJean-François Gagné
In the last 24 months, MySQL replication speed has improved a lot thanks to implementing parallel replication. MySQL and MariaDB have different types of parallel replication; in this talk, I present in details the different implementations, with their limitations and the corresponding tuning parameters. I also present benchmark results from real Booking.com workloads. Finally, I discuss some deployments at Booking.com that benefits from parallel replication speed improvements.
MySQL Database Replication - A Guide by RapidValue SolutionsRapidValue
For many years, MySQL replication used to be based on binary log events. It was considered that all a slave knew was the exact event and the exact position it just read from the master. Any single transaction from a master could have ended in different binary logs, and also, in different positions in these logs. GTID was introduced along with MySQL 5.6. It has brought, along, some major changes in the way MySQL operates. Every transaction has a unique identifier which identifies it in a same way on every server. It’s not important, anymore, in which binary log position a transaction was recorded, all you need to know is the GTID.
Database replication is used to handle multiple copies of data, automatically, from the master database server to slave database servers. If we have changed data or schema in the master database, it will, automatically, update the slave database. The main advantage of replication is that it prevents the data loss. If the master database server is crashed, the exact copy of data will be there in the slave server. In MySQL, you can use MySQL Utility for implementing database replication between master and slave. MySQL Utility is a package that is used for maintenance and administration of MySQL servers. You can install MySQL utility, along with MySQL Workbench, or install it as a stand-alone package.
MySQL Replication.
This article explains how it is implemented, with an example. In this example, two servers have been used – one master and one slave. Both servers are configured in the same manner with MySQL server and MySQL Utility.
Webinar slides: Migrating to Galera Cluster for MySQL and MariaDBSeveralnines
Galera Cluster is a mainstream option for high availability MySQL and MariaDB. And though it has established itself as a credible replacement for traditional MySQL master-slave architectures, it is not a drop-in replacement.
While Galera Cluster has some characteristics that make it unsuitable for certain use cases, most applications can still be adapted to run on it.
The benefits are clear: multi-master InnoDB setup with built-in failover and read scalability.
But how do you migrate? Does the schema or application change? What are the limitations? Can a migration be done online, without service interruption? What are the potential risks?
In this webinar, Severalnines Support Engineer Bart Oles walks you through what you need to know in order to migrate from standalone or a master-slave MySQL/MariaDB setup to Galera Cluster.
AGENDA
- Application use cases for Galera
- Schema design
- Events and Triggers
- Query design
- Migrating the schema
- Load balancer and VIP
- Loading initial data into the cluster
- Limitations:
- Cluster technology
- Application vendor support
- Performing Online Migration to Galera
- Operational management checklist
- Belts and suspenders: Plan B
- Demo
SPEAKER
Bartlomiej Oles is a MySQL and Oracle DBA, with over 15 years experience in managing highly available production systems at IBM, Nordea Bank, Acxiom, Lufthansa, and other Fortune 500 companies. In the past five years, his focus has been on building and applying automation tools to manage multi-datacenter database environments.
Migrate your EOL MySQL servers to HA Complaint GR Cluster / InnoDB Cluster Wi...Mydbops
This talk focuses on the challenges and strategies to be followed when you're planning for a MySQL upgrade from the End of life versions of MySQL 5.5, 5.6, Even 5.7.
MySQL and MariaDB though they share the same roots for replication .They support parallel replication , but they diverge the way the parallel replication is implemented.
Managing and Visualizing your Replication Topologies with OrchestratorShlomi Noach
Introducing Orchestrator: a MySQL replication topology management service, that greatly simplifies DBA's tasks and enhances visibility on your topologies.
MySQL/MariaDB replication is asynchronous. You can make replication faster by using better hardware (faster CPU, more RAM, or quicker disks), or you can use parallel replication to remove it single-threaded limitation; but lag can still happen. This talk is not about making replication faster, it is how to deal with its asynchronous nature, including the (in-)famous lag.
We will start by explaining the consequences of asynchronous replication and how/when lag can happen. Then, we will present the solution used at Booking.com to avoid both creating lag and minimize the consequence of stale reads on slaves (hint: this solution does not mean reading from the master because this does not scale).
Once all above is well understood, we will discuss how Booking.com’s solution can be improved: this solution was designed years ago and we would do this differently if starting from scratch today. Finally, I will present an innovative way to avoid lag: the no-slave-left-behind MariaDB patch.
MySQL/MariaDB Parallel Replication: inventory, use-case and limitationsJean-François Gagné
In the last 24 months, MySQL/MariaDB replication speed has improved a lot, thanks to parallel replication. MySQL and MariaDB Server have different types of parallel replication; in this talk, I present the different implementations which will allow us to understand their limitations and tuning parameters. I am covering how to make parallel replication faster and what to avoid for maximizing its benefits. I also present benchmark results from Booking.com workloads. Finally, I discuss some deployments at Booking.com that take advantage of parallel replication speed improvements.
MySQL has multiple timeouts variables to control its operations. This presentation focus on the purpose of each timeout variables and how it can be used.
Presenting "Pseudo GTID": a competitive technology to MySQL 5.6 GTID, with less overhead and constraints, running on top of you good-old-mysql-replication topology, no upgrades or agents required.
Pseudo GTID allows easy replication topology changes as well as easy recovery from master/intermediate master/slave crash.
June 24, 2014. At Velocity 2014, Fastly engineer Vladimir Vuksan gave an intro to Ganglia concepts (grid, clusters, hosts) as well as an installation of a sample monitoring grid. He also goes through the following commonly used visualization tools and how they may aid in detecting issues, identifying causes, and taking corrective action:
- Cluster/Grid Views
- Aggregate graphs
- Compare Hosts
- Custom graph functionality
- Views
- Interactive graphs
- Trending
- Nagios/Alerting system integration
- How to add metrics to Ganglia
- Different export formats such as JSON, CSV, and XML
Get answers to the real time Oracle Golden gate interview questions!
Here is the link for full article: https://www.support.dbagenesis.com/post/oracle-golden-gate-interview-questions
Efficient MySQL Indexing and what's new in MySQL ExplainMydbops
Efficient MySQL Indexing & What's New in MySQL Explain - Mydbops MyWebinar Edition 32
This session will delve into:
• Strategic indexing techniques: Learn how to optimize your MySQL database by implementing effective indexing strategies, including when to avoid fulltext indexes to prevent wasted resources.
• Demystifying the new MySQL Explain: We'll explore the latest enhancements to the MySQL Explain plan's JSON output format. Discover how to store the output in a variable for further analysis – a valuable addition introduced in MySQL 8.3. You'll also learn about the explain_json_format_version variable, which empowers you to choose between different JSON output versions for greater flexibility.
• Live Chat Engagement: We encourage you to actively participate throughout the webinar! Use the chat functionality to ask questions and share your experiences with indexing and Explain.
This webinar is perfect for:
• Database administrators (DBAs)
• Developers
• Anyone seeking to optimize MySQL performance and streamline database queries
Mydbops Managed Services specializes in taking the pain out of database management while optimizing performance. Since 2015, we have been providing top-notch support and assistance for the top three open-source databases: MySQL, MongoDB, and PostgreSQL.
Our team offers a wide range of services, including assistance, support, consulting, 24/7 operations, and expertise in all relevant technologies. We help organizations improve their database's performance, scalability, efficiency, and availability.
Contact us: info@mydbops.com
Visit: https://www.mydbops.com/
Scale your database traffic with Read & Write split using MySQL RouterMydbops
Scale your database traffic with Read & Write split using MySQL Router
This webinar recording dives into the world of MySQL Router and its capabilities for effectively managing high database traffic loads.
You'll learn:
• The challenges of scaling database traffic
• How MySQL Router facilitates read/write splitting
• The benefits of implementing read/write splitting
• Step-by-step demonstrations for configuring MySQL Router for:
1. Static read/write routing for standalone servers
2. Dynamic read/write split for InnoDB Cluster & Replica Set
• A comparison of popular load balancers (MySQL Router, ProxySQL, Maxscale)
Mydbops is a trusted database management and consultancy provider, helping businesses achieve optimal database performance and scalability.
Connect with Mydbops!
Website: https://www.mydbops.com/
Email: info@mydbops.com
PostgreSQL Schema Changes with pg-osc - Mydbops @ PGConf India 2024Mydbops
Title: PostgreSQL Schema Changes with Minimal Downtime using pg_osc
Speaker: Aakash M, Mydbops
Event: PGConf India, 2024
Description:
This presentation explores pg_osc, a tool that enables efficient schema changes in PostgreSQL tables with minimal downtime and locking. It addresses the challenges of traditional ALTER statements and provides a smoother alternative.
Key points covered:
• Introduction to pg_osc and its benefits.
• Limitations of ALTER statements and how pg_osc overcomes them.
• Step-by-step explanation of the pg_osc process.
• Prominent features and considerations for using pg_osc.
• References and resources for further exploration.
Target Audience:
• Database administrators
• Developers working with PostgreSQL
• Anyone interested in optimizing schema changes
This presentation provides valuable insights for anyone seeking to streamline schema modifications in PostgreSQL while minimizing disruptions.
Choosing the Right Database: Exploring MySQL Alternatives for Modern Applicat...Mydbops
Choosing the Right Database: Exploring MySQL Alternatives for Modern Applications by Bhanu Jamwal, Head of Solution Engineering, PingCAP at the Mydbops Opensource Database Meetup 14.
This presentation discusses the challenges in choosing the right database for modern applications, focusing on MySQL alternatives. It highlights the growth of new applications, the need to improve infrastructure, and the rise of cloud-native architecture.
The presentation explores alternatives to MySQL, such as MySQL forks, database clustering, and distributed SQL. It introduces TiDB as a distributed SQL database for modern applications, highlighting its features and top use cases.
Case studies of companies benefiting from TiDB are included. The presentation also outlines TiDB's product roadmap, detailing upcoming features and enhancements.
Mastering Aurora PostgreSQL Clusters for Disaster RecoveryMydbops
The presentation "Mastering Aurora PostgreSQL Clusters for Disaster Recovery" by Bhuvanesh, Co-Founder & CTO of ShellKode, at the Mydbops OpenSource Database Meetup 14 covers advanced topics in managing Aurora PostgreSQL clusters for disaster recovery purposes.
Bhuvanesh discusses key features of Aurora, such as its decoupled storage and compute layers, auto scaling capabilities, and native replication, highlighting its benefits over traditional RDS instances. He also explores Aurora Global Databases, explaining how they enable replication of data across regions for geo-span applications with low latency.
The presentation includes architecture details, such as physical and log replication, and managed failover options for ensuring high availability. Bhuvanesh shares real-world experiences and best practices for managing Aurora clusters, including handling replication lag and TLS certificate management.
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open So...Mydbops
Navigating Transactions: ACID Complexity in Modern Databases- Mydbops Open Source Database Meetup 15
Shivji explores the evolution of transactions, implementation challenges, and insights into distributed database environments. Whether you're a database enthusiast or a tech enthusiast, this presentation offers valuable insights into the world of database management.
Contents:
• Historical perspective of transactions
• Implementing transactions
• Challenges and trade-offs in ACID properties
• Distributed transactions in modern databases like Amazon Aurora, DynamoDB, and Google Spanner
Key Takeaways:
• Understanding the evolution of transactions in databases
• Insights into the challenges of implementing ACID properties
• Exploration of distributed transaction models in leading database systems
AWS RDS in MySQL 2023 Vinoth Kanna @ Mydbops OpenSource Database Meetup 15Mydbops
Discover the latest developments in the AWS RDS MySQL ecosystem with Vinoth Kanna, Founding Partner at Mydbops LLP. Explore the exciting new features and enhancements introduced in RDS MySQL in 2023, including support for Group Replication, snapshot upgrades, dedicated log volumes, and performance insights export to CloudWatch. Gain valuable insights into the introduction of new instance types and version releases throughout the year. Stay ahead of the curve by learning about the end-of-life dates for MySQL RDS 5.7 and extended support pricing considerations. Don't miss out on this informative session to deepen your understanding of AWS RDS MySQL and its evolving capabilities.
Data-at-scale-with-TIDB Mydbops Co-Founder Kabilesh PR at LSPE EventMydbops
Explore the world of TiDB with Kabilesh PR, Co-Founder of Mydbops, as he unveils the potential of this open-source distributed SQL database. Dive into the architecture, scalability solutions, and production readiness of TiDB, and discover how it addresses MySQL scalability bottlenecks through sharding. Gain insights into its stateless SQL interface, transactional storage with TiKV, and analytical capabilities with TiFlash. Learn about TiDB's native sharding features, use cases across various industries, and its readiness for production environments. Delve into its limitations and discover how TiDB can transform your data management landscape.
MySQL Transformation Case Study: 80% Cost Savings & Uninterrupted Availabilit...Mydbops
Discover how Mydbops achieved an impressive 80% cost savings and ensured uninterrupted availability through a transformative MySQL database case study. Join Vinoth Kanna RS, Co-Founder of Mydbops, as he shares insights into optimizing infrastructure, enhancing observability, and navigating critical technology decisions. Learn from real-world challenges, innovative solutions, and valuable takeaways for your own database management endeavors.
Insightful session at Mydbops Opensource Database Meetup 14 in Bangalore as our Chief Technology Officer, Manosh Malai, delves deep into the world of MongoDB optimization. In this engaging presentation, Manosh explores the two primary sharding strategies - Vertical and Horizontal, providing valuable insights and real-world use cases. Gain a comprehensive understanding of the fundamentals of MongoDB sharding, including the pros, cons, and practical applications of both Vertical and Horizontal strategies. Explore real-world case studies and performance benchmarks to optimize your MongoDB deployments.
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...Mydbops
Diving deep into the essentials of MongoDB Atlas diagnostics and debugging, helps you ensure optimal performance for your cloud-based databases. Join us as we explore key strategies and best practices for effective database management in the cloud environment. Get ready to elevate your MongoDB Atlas experience and unlock the full potential of your cloud databases.
Data Organisation: Table Partitioning in PostgreSQLMydbops
Mohammad Zaid Patel from Mydbops, embarked on a journey through PostgreSQL table partitioning.
✅ Why Data Organization?
Understand the importance and benefits of organized data in databases.
✅ Advantages of Organizing Your Data:
Better retrieval, improved performance, data integrity, and efficient storage.
✅ Data Organization Techniques:
Index creation, data archival, schemas, functional naming, and relationships.
✅ Table Partitioning in PostgreSQL:
Dive into the design technique of dividing large tables for efficient data management.
✅ Types of Table Partitioning:
Range, List, and Hash methods for unique data organization.
✅ Partitioning Techniques in PostgreSQL:
Manual and using pg_partman extension for streamlined partition creation.
✅ Limitations of Table Partitioning:
Considerations and challenges associated with this technique.
✅ Best Practices for Partitioned Table Maintenance:
Tips on choosing the right partition key, understanding query patterns, and more.
#mydbops #postgresql #mywebinar #webinar #data #database #partitioning #dataorganization #queryperformance #indexing #dataarchival #scalability #dataanalysis #pg_partman #databaseperformance #maintenance #dbms #dba #opensource #highavailability
Navigating MongoDB's Queryable Encryption for Ultimate Security - MydbopsMydbops
Explore MongoDB's Queryable Encryption in this in-depth webinar presentation. Learn about CSFLE, Queryable Encryption, and their mechanisms. Dive into DEKs, Key Vault Collections, Cryptographic Tokens, and more. Discover how MongoDB ensures robust security and flexibility in data encryption.
Explore TiDB's architecture, high availability features, and its ability to handle both transactional and analytical workloads.
Discover the role of the Raft consensus algorithm in ensuring data replication and fault tolerance within the system. Learn about practical use cases in SAAS applications, IoT data management, e-commerce, logistics, gaming, fintech, and more.
Get to know the limitations and advantages of TiDB and how it can revolutionize your data management strategy.
Join us on this knowledge-packed journey!
Mastering Database Migration_ Native replication (8.0) to InnoDB Cluster (8.0...Mydbops
Mastering Database Migration_ Native replication (8.0) to InnoDB Cluster (8.0) with Cloning Best Practices
Explore the slides from our recent webinar on 'Mastering Database Migration: MySQL Replication to InnoDB Cluster Using Cloning.' Dive into the world of database migration, InnoDB Cluster, and the power of cloning. Discover best practices and insights shared by experts in the field. Stay updated with the latest trends in database management
Watch the webinar recording https://youtu.be/sc9TYXKAQWw
Visit our Mydbops blog https://www.mydbops.com/blog/ for further insights.
Enhancing Security of MySQL Connections using SSL certificatesMydbops
Enhancing Security of MySQL Connections using SSL certificates
Mydbops MyWebinar Edition 26
In this informative presentation by Mydbops, explore the world of database security as we delve into the steps to fortify your MySQL connections using SSL certificates. Learn about the working of SSL, the benefits of SSL/TLS encryption, the types of certificates available, and the evolution of SSL/TLS in MySQL. Discover why securing your remote connections and data confidentiality is crucial. Plus, find out how to enable SSL connections in MySQL 8.0. Don't miss this opportunity to bolster your MySQL security knowledge.
Watch the webinar recording https://youtu.be/aMSUtQVdFks
Visit our Mydbops blog https://www.mydbops.com/blog/ for further insights.
Exploring the Fundamentals of YugabyteDB - Mydbops Mydbops
Exploring the Fundamentals of YugabyteDB - Mydbops MyWebinar Edition 25
Join us for an enlightening journey into the world of YugabyteDB, a distributed SQL database revolutionizing data management. In this webinar presentation, we delve into the challenges faced by traditional databases, explore the architecture and unique features of YugabyteDB, and showcase its seamless scalability and fault tolerance.
Watch the full recording: https://youtu.be/QtvK-apLBwQ
Visit Mydbops Blogs: https://www.mydbops.com/blog/
Time series in MongoDB - Mydbops Mywebinar Edition 24. - Explore the fascinating world of time series data management in MongoDB with our insightful webinar presentation. Join us as we dive into the intricacies of leveraging MongoDB for time series use cases, discussing best practices, performance optimization techniques, and real-world examples. Discover how MongoDB can empower your applications to efficiently handle time-based data and unlock valuable insights. Don't miss out on this opportunity to enhance your knowledge and stay ahead in the evolving field of data management. Dive into our speaker deck presentation now!
Watch the webinar recording here: https://youtu.be/rwjHRLGZ7pg
Mydbops Blogs: https://www.mydbops.com/blog/
TiDB in a Nutshell - Power of Open-Source Distributed SQL Database - MydbopsMydbops
TiDB in a Nutshell - Open-Source Distributed SQL Database
Immerse yourself in the world of TiDB Architecture with our captivating presentation. Dive deep into the intricacies of TiDB, the distributed SQL database that has redefined data management. Join us as we unravel the architectural brilliance behind TiDB, exploring its key components, data flow, and design principles. Uncover the secrets to exceptional performance, elastic scalability, and rock-solid data consistency. Prepare to be enlightened by the groundbreaking TiDB Architecture that is revolutionizing the industry.
Watch the full webinar here https://youtu.be/aMSUtQVdFks for webinar recording
Mydbops Blogs: https://www.mydbops.com/blog/
High availability is critical for PostgreSQL database systems, especially for organizations that depend on their databases to support their operations. In this presentation, we will explore the different options available for achieving high availability in PostgreSQL.
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBrad Spiegel Macon GA
Brad Spiegel Macon GA’s journey exemplifies the profound impact that one individual can have on their community. Through his unwavering dedication to digital inclusion, he’s not only bridging the gap in Macon but also setting an example for others to follow.
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC
Ellisha Heppner, Grant Management Lead, presented an update on APNIC Foundation to the PNG DNS Forum held from 6 to 10 May, 2024 in Port Moresby, Papua New Guinea.
# Internet Security: Safeguarding Your Digital World
In the contemporary digital age, the internet is a cornerstone of our daily lives. It connects us to vast amounts of information, provides platforms for communication, enables commerce, and offers endless entertainment. However, with these conveniences come significant security challenges. Internet security is essential to protect our digital identities, sensitive data, and overall online experience. This comprehensive guide explores the multifaceted world of internet security, providing insights into its importance, common threats, and effective strategies to safeguard your digital world.
## Understanding Internet Security
Internet security encompasses the measures and protocols used to protect information, devices, and networks from unauthorized access, attacks, and damage. It involves a wide range of practices designed to safeguard data confidentiality, integrity, and availability. Effective internet security is crucial for individuals, businesses, and governments alike, as cyber threats continue to evolve in complexity and scale.
### Key Components of Internet Security
1. **Confidentiality**: Ensuring that information is accessible only to those authorized to access it.
2. **Integrity**: Protecting information from being altered or tampered with by unauthorized parties.
3. **Availability**: Ensuring that authorized users have reliable access to information and resources when needed.
## Common Internet Security Threats
Cyber threats are numerous and constantly evolving. Understanding these threats is the first step in protecting against them. Some of the most common internet security threats include:
### Malware
Malware, or malicious software, is designed to harm, exploit, or otherwise compromise a device, network, or service. Common types of malware include:
- **Viruses**: Programs that attach themselves to legitimate software and replicate, spreading to other programs and files.
- **Worms**: Standalone malware that replicates itself to spread to other computers.
- **Trojan Horses**: Malicious software disguised as legitimate software.
- **Ransomware**: Malware that encrypts a user's files and demands a ransom for the decryption key.
- **Spyware**: Software that secretly monitors and collects user information.
### Phishing
Phishing is a social engineering attack that aims to steal sensitive information such as usernames, passwords, and credit card details. Attackers often masquerade as trusted entities in email or other communication channels, tricking victims into providing their information.
### Man-in-the-Middle (MitM) Attacks
MitM attacks occur when an attacker intercepts and potentially alters communication between two parties without their knowledge. This can lead to the unauthorized acquisition of sensitive information.
### Denial-of-Service (DoS) and Distributed Denial-of-Service (DDoS) Attacks
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
Talk presented at Kubernetes Community Day, New York, May 2024.
Technical summary of Multi-Cluster Kubernetes Networking architectures with focus on 4 key topics.
1) Key patterns for Multi-cluster architectures
2) Architectural comparison of several OSS/ CNCF projects to address these patterns
3) Evolution trends for the APIs of these projects
4) Some design recommendations & guidelines for adopting/ deploying these solutions.
1.Wireless Communication System_Wireless communication is a broad term that i...JeyaPerumal1
Wireless communication involves the transmission of information over a distance without the help of wires, cables or any other forms of electrical conductors.
Wireless communication is a broad term that incorporates all procedures and forms of connecting and communicating between two or more devices using a wireless signal through wireless communication technologies and devices.
Features of Wireless Communication
The evolution of wireless technology has brought many advancements with its effective features.
The transmitted distance can be anywhere between a few meters (for example, a television's remote control) and thousands of kilometers (for example, radio communication).
Wireless communication can be used for cellular telephony, wireless access to the internet, wireless home networking, and so on.
2. Who am I ?
o Santhinesh Kumar Nagendran
o Currently working as Senior Database
Administrator @ Tesla Inc. Over 12 years
Industry experience in supporting
environments like healthcare, social
networking applications like AOL, IBIBO,
Sify etc. I primarily focus on Database
High availability and DB automations at
large scale.
5. GTID Concepts
v A global transaction identifier (GTID) is a unique identifier created for each
transaction committed on the server. This identifier is unique not only to the server
on which it originated but is unique across all servers in a given replication cluster.
v A GTID is represented as a pair of coordinates, separated by a colon character (:), as
shown here:
v GTID = Server_uuid :transaction_id
Principles of GTID
v auto-skip functionality in GTID ensures that transactions are not applied twice.
v A transaction which has started with a gtid on a server but did not commit or
rollback, any attempt to start a concurrent transaction with the same GTID will
block
6. Drawbacks of Binlog Positioning
Ø So the bottom-line is setting up a simple slave setup becomes a
complex thing with binlog positioning if you don’t have the backup from
right source
S1 S2 S3
Ø Getting Master position will be a complicated procedure for
replication topology as below
Ø For an example as below, S denotes Server1/2/3
ü Master position for S2 will be different than the master position for S3
ü The backup with binlog position of S1 cannot be easily used to build S3 as
slave of S2. However, we can still achieve that using below procedure
ü We can still do this by building S3 slave of S1
ü Do an exercise to make S2/S3 to stop at same position
ü Get master status from S2
ü Run change master in S3 with the coordinates collected from S2 in
above step
7. Benefits of Auto Positioning
Ø Change master with master_auto_position=1 can be run with any host as master in
the cluster and replication will just work fine
Ø Don’t have to deal with the complexity involved for finding the correct position from
the binlog to form the change master statement
Ø Backup from one source can be used to setup replication from any host in the cluster
Ø Master/Slave Failover becomes easy just with one command
Ø Life improvisation for DBAs J
8. gtid_executed
o Primary Node – Gtids of transactions committed gets updated in gtid_executed
o Secondary/Slave nodes – Stores the latest transaction slave have applied
o From 5.7 and later gtid_executed gets stored in a system table mysql.gtid_executed
9. gtid_purged
o Primary Node – Gtids of the transactions that mysql has committed and corresponding binary
log has been purged
What sets GTID_PURGED system variable globally ??
Ø When binary logs has been purged manually or as a regular event due to expire_logs_days value
Ø GTID_PURGED can be set explicitly by the below statement . Only prerequisite is the server
should be in read-only mode to not accept any writes when we do reset master.
Ø RESET MASTER;
Ø SET @@GLOBAL.gtid_purged=‘gtid-set’;
Every binlog starts with the previous GTIDs as shown in the example below.
12. GTID Implementation
u 5.6
u 5.7
u 8.0
Common parameters
gtid_mode - Will generate GTIDs for all client transactions
enforce_gtid_consistency - Allows only transactionally safe transactions
13. Transactionally un-safe statements
Before enabling GTID make sure application is not having transactionally
unsafe statements as below. Otherwise this will cause unnecessary
outages.
1. CREATE TABLE ... SELECT statements
2. CREATE TEMPORARY TABLE statements inside transactions
3. Transactions or statements that update both transactional and
nontransactional tables.
14. Let's take an environment in which [ master – Slave ] are already in synchronize so the gtid enabling
process will be as below
o Set read-only ON on both the servers
o Shutdown MySQL
o Restart both servers with below parameters in the config file along with disable statements not
compatible for GTID-based replication.
[mysqld]
skip-slave-start
read_only = ON
gtid_mode = ON
enforce-gtid-consistency = ON
log-slave-updates = 1
binlog_format = row
log-bin =/mysql/logs/mysql-bin
o Instruct the slave to use the master as the replication data source and to use auto-positioning.
o Change master to master_auto_position=1;
o Take a new xtrabackup or mysqldump or mysqlbackup as the backups taken until this migration are
unusable hereafter
o Start the slave, then disable read-only mode again on primary/master servers, so that it can accept
updates.
Implementation With Downtime
S1 S2
15. GTID Modes
Gtid modes Functionality
OFF - Master server will not generate any GTIDs for any client connections
- If the Server is a replication slave it will only accept transactions
without GTID
OFF_PERMISSIVE - Servers will not generate any GTIDs for any client connections
- However, If the Server is a replication slave it will accept transactions
with and without GTID
ON_PERMISSIVE - Master server will generate GTIDs for any new client connections
- However, If the Server is a replication slave it will only accept
transactions without GTID
ON - Master server will generate GTIDs for all client connections
- If the Server is a replication slave it will only accept transactions with
GTID
16. Online Implementation
Let's continue with the same environment with gtid_mode as OFF across the whole cluster.
1. Validate if all the servers are in non-gtid enabled state.
2. Keeping server to not generate GTID for new transactions but it enables servers to
accepts transactions with and without GTID
3. Configure servers to generate GTID for new transactions and retain the forgiving
behavior of accepting transactions with and without GTID
4. Last stage is to enforce servers to generate GTID for new transactions and also accept
transactions only with GTID
17. Online
Implementation
Cont..
Exact commands to enable GTID transactions:
Prerequisite
q SET @@GLOBAL.ENFORCE_GTID_CONSISTENCY =
WARN;
q If your application queries are suitable for
gtid then you shouldn’t be seeing any errors
in the log
GTID Enabling sequence
1. SET @@GLOBAL.ENFORCE_GTID_CONSISTENCY =
ON;
2. SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;
3. SET @@GLOBAL.GTID_MODE = ON_PERMISSIVE;
4. SHOW STATUS LIKE
'ONGOING_ANONYMOUS_TRANSACTION_COUNT’;
u make sure all the transactions got replicated
till step 5
5. SET @@GLOBAL.GTID_MODE = ON;
19. Replication Issues [ Very Common ]
Last_IO_Errno: 1236
Last_IO_Error: Got fatal error 1236 from master when reading data
from binary log: 'The slave is connecting using CHANGE MASTER TO
MASTER_AUTO_POSITION = 1, but the master has purged binary logs containing
GTIDs that the slave requires.’
- Master purges the binlog [ accidentally or planned ] before slaves caught up
- Event of failover to a slave and slave might had some local transactions which
other slaves in the cluster might have not been aware of. Example :
- Specific Indexes on slaves to help reads
- Specific users on slaves alone for reporting and read-only purposes
- Specific reporting or analytical data on slave
21. Inconsistency
Scenarios
u Slave 1 / Master will be unaware of
users/properties created @ slave 2
u Slave 2 / Master will be unaware of
users/properties created @ slave 1
u These users might have got created over
the period of time on the slaves for which
the binlogs also might have already got
purged.
u So when failover happens, we would
promote one of the slaves which is most
up to date with the master
u So with the above conditions when we try
to auto-position slave 2 to replicate from
slave 1 where slave 2 is completely
unware of transactions happened on slave
1 and slave 1 also purged the binlogs
associated with such transactions we
would encounter the error I mentioned
above
22. Challenges
Here are few ways to fix the inconsistency
discussed earlier
u Gtid_purged cannot be set without
RESET MASTER until 8.0
u Any Unplanned or accidental RESET
MASTER on a critical master/slave
will break the whole cluster
u Set GTID purged on the slave [ using
there most recent gtid_executed by
itself ] + [ GTIDs which master has
purged ]
u Find the missing GTIDs on the slave
that is broken
u Skip the GTIDs that slave is looking
for which master has already purged.
NOTE: Beware sql_slave_skip_counter
will not work with GTID based replication
25. Host4 – Master
GTID_PURGED :
0923xxxx-40c2-11e7-915d-0050569ade41:1-173383470,
1a02fxxxx-000a-11e8-a2c6-0050569a481a:1-39,
3079xxxx-892a-11e7-bef9-0050569a2e78:1-17,
3f90xxxx-fd7f-11e7-b787-0050569a4168:1-201198177,
491axxxx-136e-11e8-b54d-000af7ba704a:1-1351372450,
8caefxxxx-2f25-11e8-a6fd-1866daa3d37d:1-936,
67a8xxxx-5a5d-11e8-b3f2-000af7ba4704:1-6426609,
e187xxxx-65f5-11e8-bc96-1866daa373fc:1-19,
3703xxxx-7816-11e8-8db9-000af7ba6042:1-8
Server - Host2
Slave Master - Host1
GTID_EXECUTED :
0923xxxx-40c2-11e7-915d-0050569ade41:1-173383470,
1a02xxxx-000a-11e8-a2c6-0050569a481a:1-39,
3079xxxx-892a-11e7-bef9-0050569a2e78:1-17,
3f90xxxx-fd7f-11e7-b787-0050569a4168:1-201198177,
491axxxx-136e-11e8-b54d-000af7ba704a:1-1351372450,
8caexxxx-2f25-11e8-a6fd-1866daa3d37d:1-936,
67a8xxxx-5a5d-11e8-b3f2-000af7ba4704:1-16869434,
e187xxxx-65f5-11e8-bc96-1866daa373fc:1-27
b542xxxx-6079-11e8-9e44-1866daa37e46:1-8142,
Current master - Host1
New Master - Host4
set global gtid_purged="0923xxxx-40c2-11e7-915d-0050569ade41:1-173383470,
1a02xxxx-000a-11e8-a2c6-0050569a481a:1-39,
3079xxxx-892a-11e7-bef9-0050569a2e78:1-17,
3f90xxxx-fd7f-11e7-b787-0050569a4168:1-201198177,
491axxxx-136e-11e8-b54d-000af7ba704a:1-1351372450,
8caexxxx-2f25-11e8-a6fd-1866daa3d37d:1-936,
67a8xxxx-5a5d-11e8-b3f2-000af7ba4704:1-16869434,
e187xxxx-65f5-11e8-bc96-1866daa373fc:1-27,
3703xxxx-7816-11e8-8db9-000af7ba6042:1-8";
Pointing Replication to new Master
26. Run this in Host2
ü stop slave;
ü reset master;
ü set global gtid_purged=“
0923xxxx-40c2-11e7-915d-0050569ade41:1-173383470,
1a02xxxx-000a-11e8-a2c6-0050569a481a:1-39,
3079xxxx-892a-11e7-bef9-0050569a2e78:1-17,
3f90xxxx-fd7f-11e7-b787-0050569a4168:1-201198177,
491axxxx-136e-11e8-b54d-000af7ba704a:1-1351372450,
8caexxxx-2f25-11e8-a6fd-1866daa3d37d:1-936,
67a8xxxx-5a5d-11e8-b3f2-000af7ba4704:1-16869434,
e187xxxx-65f5-11e8-bc96-1866daa373fc:1-27,
3703xxxx-7816-11e8-8db9-000af7ba6042:1-8”;
ü change master to master_host=‘host4',master_port=3306,master_auto_position=1;
ü start slave;
Pointing Replication to new Master Cont.
28. Empty Transactions
Generate Empty transactions for the missing GTIDs in slave there is a script shared
by percona team on the below reference
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:1';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:2';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:3';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:4';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:5';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:6';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:7';
BEGIN;COMMIT;
SET GTID_NEXT='3703xxxx-7816-11e8-8db9-000af7ba6042:8';
BEGIN;COMMIT;
Reference : https://www.percona.com/blog/2018/07/02/fixing-
er_master_has_purged_required_gtids-when-pointing-a-slave-to-a-different-
master/
29. mysqlslavetrx
Injecting Single GTIDs set
mysqlslavetrx --gtid-set=3703xxxx-7816-11e8-8db9-000af7ba6042:1-8 --verbose --
slaves=root:password@localhost:3306
WARNING: Using a password on the command line interface can be insecure.
#
# GTID set to be skipped for each server:
# - localhost@3306: 46fdxxxx-5852-11e6-92c9-0800274fb806:1-8
#
# Injecting empty transactions for 'localhost:3306'...
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:1
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:2
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:3
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:4
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:5
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:6
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:7
# - 3703xxxx-7816-11e8-8db9-000af7ba6042:8
#
#...done.
#
Injecting Multiple empty GTIDs sets
mysqlslavetrx --gtid-set=3703xxxx-7816-11e8-8db9-000af7ba6042:9-12,8caexxxx-2f25-
11e8-a6fd-1866daa3d37d:936-945 --verbose --slaves=root:password@localhost:3306
30. Best way to deal with GTID is by NOT GETTING PANIC at any point of time
1) Collect the show slave status
2) Collect global variables value for gtid_purged and gtid_executed.
3) Gtid_executed has the last position the slave was able to apply correctly
4) Gtid_purged has the [ starting position -1 ]
5) All we need is higher gtid_executed values than gtid_purged
6) gtid_subtract ( master_gtid_purged – slave_gtid_executed ) will give the gtids
missing in slave
7) Generate empty transactions for the gtids missing obtained using gtid_subtract
using mysqlslavetrx as showed before or use a shell script to generate empty
transactions
8) Once empty transactions are loaded start replication. It should fix the issue
9) Don’t do RESET MASTER if you don’t know what else to do instead Call OUT for
help !!!!
10) Use Pt-table-checksum to identify inconsistency between master/Slave.
Is RESET MASTER a Scary Option ? Then what else ?
31. o GTID is one of The best features in MySQL.
o With the enhancements in MySQL 8.0 which addressed most of the limitations
around setting up gtid_purged at runtime makes its even more powerful to be
implemented
o Enabling and stabilizing the environment for the first time might be a little bit of
task but in long run it would eventually save lots of operation time and efforts
Conclusion