If you love a software product, you should try to improve it, and not be afraid of criticizing it. This principle has guided me with MySQL (where I have submitted many usability bugs, and discussed interface with developers for years), and it proves true for Tungsten Replicator as well. When I started working at Continuent, while I was impressed by the technology, I found the installation procedure and the product logs quite discouraging. I would almost say disturbing. Fortunately, my colleagues have agreed on my usability focus, and we can enjoy some tangible improvements. I have already mentioned the new installation procedure, which requires just one command to install a full master/slave cluster. I would like to show how you can use the new installer to deploy a multiple source …
[Read more]About a month ago I needed to compare tens of thousands of tables in hundreds of databases between a few different servers. The obvious choice was, mk-table-checksum! The only problem was, that the tool needs to know the minimum and maximum value of the column by which each table is to be subdivided into chunks and checksummed. This select min(col), max(col) from table locks all write operations on the table and on a big table it meant downtime.
Looking at the source it was clear we could make mk-table-checksum run the select min(col), max(col) from table on the read-only slave and use the values to checksum the master.
It was subtle code changes in function:
get_range_statistics adding
my $cxn_string_dc =
“DBI:mysql:;host=slavehost;port=3306;mysql_read_default_group=client”;
my $user = ‘user’;
my $pass = ‘password’;
my $dbh_slave = DBI->connect($cxn_string_dc, $user, $pass); …
Last week was a banner week for MySQL at OSCON. We had many MySQL
developers meeting with the MySQL community, conducting technical
sessions, leading BOF sessions, working the exhibit hall, and
confirming Oracle's leadership in the technical evolution of
MySQL. The highlight of the week was the unveiling of even
more 5.6 early access InnoDB and Replication features that are
now available for early adopters to download, evaluate and shape
via labs.mysql.com.
InnoDB is one of MySQL's "crown jewels" and beginning in 5.5 is
now the default storage engine. The following 5.6 feature
improvements are in direct response to community and customer
feedback and requests. The new 5.6 early access features
include:
- Full-text search
- REDO log files max size extended to 2 TB
- UNDO logs on their own tablespace …
At OSCON 2011 last week, Oracle delivered more early access (labs) features for MySQL 5.6 replication. These features are focused on better integration, performance and data integrity:
- The Binlog API: empowering the community to seamlessly integrate MySQL with other applications and data stores;
- Binlog Group Commit and Enhanced Multi-Threaded Slaves: continuing to deliver major improvements to replication performance;
- Durable Slave Reads: further enhancing data integrity.
These new features build on the significant replication enhancements announced as part of the MySQL 5.6.2 Development Milestone Release back in April.
We are always listening to our customers and community. And, based on their needs and input, the MySQL engineering team continues to take …
[Read more]Multi-master replication between sites is the holy grail of applications ranging from credit card processing to large-scale software-as-a-service (SaaS) operations. Tungsten Replicator is award-winning open source software that helps you solve a wide range of multi-master problems that you can only dream of tackling with MySQL native replication. Learn the nuts and bolts of multi-master
Binlog Group Commit Experiments
It was a while ago since I talked about binary log group commit. I had to spend time on a few other things.
Since then, Kristian has released a version of binary log group commit that seems to …
[Read more]
Back in February I wrote an article titled A Small Fix For mysql-agent. Since then we did
a few more fixes to the agent and included a Bytes Behind
Master (or BBM) chart. For those who can't wait to get their
hands on the code, here's the current version: MySQL SNMP agent RPM. For those who'd like to
learn about it's capabilities and issues, keep reading.
What to Expect From this Version
The article I quoted above pretty much describes the main
differences with the original project, but we went further with
the changes while still relying on Masterzen's code for the data
collection piece.
The first big change is that we transformed Masterzen's code into
a Perl module, …
During the past year, we’ve put a lot of emphasis at Oracle on
sharing information with the MySQL Community. Actions included PR
and communications not only about GA products but also about
development milestone releases and features available in labs.mysql.com, as
well as more technical articles, more blogs, participation to
conferences…etc. We very much value the feedback and discussions
such communications generate.
We therefore plan to keep communicating this way, and do even more. This is why we’re now very pleased to announce a new Oracle podcast series entitled “Meet the MySQL Experts”! We plan to, once a month, interview an Oracle MySQL Engineer who will share information about his/her domain expertise, and what he/she is currently working on.
For the first edition, it was my …
[Read more]
Tungsten Replicator has offered shard-based
parallel replication to slaves since late 2010. The initial
implementation uses in-memory queues. Working purely in
memory keeps latency low and throughput high. On the other
hand, working in memory consumes valuable RAM. It also
forces us to buffer all in-flight transactions and therefore
greatly limits the span of time permissible between the slowest
and fastest shard.
Hence our newest improvement: on-disk parallel queues.
In this article I will cover how parallel replication works
in general, how on-disk queues help with parallel replication,
and then show how to set up from the latest builds.
First, let's review the basic mechanics. Parallel …
| After the public home for Tungsten Replicator, we needed another place where to host complementary tools. We discussed the pros and cons of hosting these tools in the same place where we publish Tungsten, but in the end we decided that it's more practical to have a separate project, where we can publish tools related to database replication, no matter if they are dedicated to Tungsten or if they can work with other replication systems.So, here it is. We have now Tungsten Toolbox, a site where we will collect our tools and accept contributions from others. |
We have already a few tools that, after being cleaned up, will …
[Read more]