On MySQL5.7.3, we released a new semi-synchronous feature which
brings the advantage of stronger data integrity and durability.
Please allow me to introduce you the feature.
I suppose you already know what semi-synchronous replication is.
If that is not true, you can check Seim-Synchronous Replication chapter on
MySQL reference manual. It describes semi-synchronous replication
clearly, so I don't repeat it here again. Make Data Durable on
More Than One Slaves The new feature allows users to set how many
slaves the transaction(its binary events) should be replicated to
before externalizing it to users. In other words, semisync master
makes the transaction to wait until receiving acknowledgements
from those many slaves. The simple process is demonstrated below.
…
So, after installing Workbench 6.0.7 on my pc, and playing around with the MySQL Utilities that are included, I thought I’d do similar to what others have done (Thanks Tony D.) and share my experience on how I’ve used them. If you haven’t installed Workbench before, you might want to check your platform first: http://www.mysql.com/support/supportedplatforms/workbench.html.
So, even if you’re not using any of the recent versions and editions of Workbench (Utilities comes with all of them, Tools menu -> “Start Shell for MySQL Utilities“) you can just download the standalone scripts on a Linux machine. Flexibility being the name of the game again. …
[Read more]So, after installing Workbench 6.0.7 on my pc, and playing around with the MySQL Utilities that are included, I thought I’d do similar to what others have done (Thanks Tony D.) and share my experience on how I’ve used them. If you haven’t installed Workbench before, you might want to check your platform first: http://www.mysql.com/support/supportedplatforms/workbench.html.
So, even if you’re not using any of the recent versions and editions of Workbench (Utilities comes with all of them, Tools menu -> “Start Shell for MySQL Utilities“) you can just download the standalone scripts on a Linux machine. Flexibility being the name of the game again. …
[Read more]
One of the latest labs releases of Oracle MySQL brings multi source
replication. This lifts the limitation found in earlier releases
that a MySQL slave can only have one master.
To be fair, there were other ways of doing this already:
- Using a time based switch as described in MySQL High Availability
- Using the multi source feature in the yet-to-be released MariaDB 10
- Using Tungsten Replicator
There are many good uses of multi source replication. You could
use it to combine data from multiple shards or
applications.
If MySQL is used with …
Connector/NET 6.7 provides replication & load balancing
configuration that allows to connect to master/slaves
environments and at the same time balancing the request over all
the available server in this scenario. This post will show you
how to configure and use these new features on a console
application.
One of the most common errors in development is where a loop or a retrieval by index falls short or long by one unit, usually because of an oversight or a logic in coding.
Of the following snippets, which one will run 10 times?
/* #1 */ for (N = 0 ; N < 10; N++) printf("%d\n", N);
/* #2 */ for (N = 0 ; N <= 10; N++) printf("%d\n", N);
/* #3 */ for (N = 1 ; N <= 10; N++) printf("%d\n", N);
/* #4 */ for (N = 1 ; N < 10; N++) printf("%d\n", N);
The question is deceptive, as there are two snippets that will run 10 times (1 and 3). But they will print different numbers. If you ware aiming for numbers from 1 to 10, only #3 is good.
After many years of programming, off-by-one errors are rare in my code, and I have been able to spot them or prevent them at first sight. That’s why I feel uneasy when I look at the way parallel replication is enabled in …
[Read more]The new Continuent Tungsten 2.0.1 is now available. Continuent Tungsten 2.0.1 is the first generally available release of Continuent Tungsten 2.0, which offers major improvements to Continuent's industry-leading database-as-a-service offering.
New features:
Replication
Provides low-impact, real-time replication with up-to 5X throughput over native MySQL and over 100X reduction in
MySQL Connector/Java has long had support for replication-aware deployment, allowing a single logical Connection object to effectively “pool” connections to both a master and (potentially multiple) slaves. This allowed scale-out of read load by distribution of read traffic to slaves, while routing write load to the master. The JDBC specification provides a nice hook to know what’s read-only traffic – Connection.setReadOnly(). When a boolean value of true is passed, a ReplicationConnection will route further commands a selected slave instance, while values of false trigger routing to the master. This is sufficient for many simple replication topographies, but not all – most notably, it …
[Read more]MySQL Fabric is a very promising sharding framework. If I take Ulf Wendel definition of MySQL Fabric :
MySQL Fabric is an administration tool to build large “farms” of MySQL servers. In its most basic form, a farm is a collection of MySQL Replication clusters. In its most advanced form, a farm is a collection of [...]
I want to thank all attendees of my webinar, “MySQL 5.6 New Replication Features: Benefits, Challenges and Limitations“. We had questions that I didn’t have the time to answer:
Q: If I run on Amazon’s RDS, do I need to worry about enabling crash-safe slaves, or is that already in place?
A: Crash-safe replication is already configured for read replicas using MySQL 5.6.
Q: How the relay log purge will manage in case of multiple db’s replication running on multiple threads?
A: Same thing as with single-threaded replication: when all event in a relay log file have been executed, …
[Read more]