With more than 1 million downloads and thousands of production deployments at small, mid-size and large enterprises, Percona software is a industry leading distribution that enhances the performance, scale, management and diagnosis of MySQL deployments.
This new packages bring the benefits of Percona Software to developers and administrators that are using Red Hat Enterprise Linux 7 and CentOS 7.
The new packages are available from our testing[Read more...]
Percona is glad to announce the release of Percona Toolkit 2.2.10 on August 8, 2014 (downloads are available here and from the Percona Software Repositories). This release is the current GA (Generally Available) stable release in the 2.2 series.
Deploying Galera Clusters across WAN environments might lead to concerns around data privacy and security - especially as more organisations are having to comply with national and international regulations. You would not want hackers eavesdropping or intercepting replication traffic. Encrypted replication hides what is sent between the Galera nodes, and makes sure each node is only communicating to the ones it trusts. But how expensive is encryption?
In this blog, we will show you how to encrypt the replication traffic between your Galera nodes. We will also look into the performance impact of this[Read more...]
It’s been almost 4.5 years since, during some code refactoring, it was decided (or accidentally changed?) that sql_log_bin should become a GLOBAL variable as well as a SESSION one. Almost 2 years ago, during MySQL 5.5 upgrades at Twitter, I filed MySQL Bug 67433 describing in detail how stupid and dangerous this change was, and asking for a reversal.
Nothing has been changed or reversed, so SET GLOBAL sql_log_bin continues to be allowed. I continue to directly see, and hear about damage caused by incorrect use of SET GLOBAL sql_log_bin. So, let me describe just how stupid and dangerous it really is.
If you have a master-slave replication configuration, your master will have binary logging enabled (log_bin) and be recording each[Read more...]
I’m using Redmine to manage projects and bug reports, I was needing a daily report with spent time by user on each project, nothing complicated, but I wanted a cross-reference result like Excel dynamic tables. As we know, MySQL doesn’t support dynamic cross-reference queries but I make an approach:
1. Write the main query with rows: project identifier, task subject and total hours in a date range.
SELECT p.identifier, e.issue_id, i.subject, round(SUM(e.hours),2) AS total_hours FROM redmine_nsp.time_entries e INNER JOIN redmine_nsp.issues i ON e.issue_id = i.id INNER JOIN redmine_nsp.projects p ON e.project_id = p.id WHERE e.spent_on BETWEEN '2014-07-01' AND '2014-07-07' GROUP BY[Read more...]
I have been meaning to update some systems to MariaDB 10.0 and finally had a bit of time to get around to that. The documentation of specifics of what’s needed to go from MariaDB 5.5 to 10.0 can be found here and while it’s not very long it seems there’s little to actually do.
Having already upgraded some servers from MySQL 5.5 to 5.6 the process and appropriate configuration changes were very similar so all in all a rather non event.
One thing which is always a concern if systems can not be down for long is the time to do the upgrade. While you see many blog posts talking about taking a backup via mysqldump and then loading it all back this is not really an option on many systems I manage and a replacement[Read more...]
The MySQL replication and load balancing plugin for PHP, PECL/mysqlnd_ms, aims to make using a cluster of MySQL servers instead of a single server as transparent as possible. Should you ever want to migrate your PHP app from a single MySQL server to any kind of MySQL cluster, install PECL/mysqlnd_ms and see how much breaks. A simple app, might need no code changes at all. Your APIs connect call remains unchanged, your query execution calls remain the same: one connection handle transparently switched to an appropriate cluster node (read-write splitting, weighted load[Read more...]
MySQL for Visual Studio is a product that includes all of the Visual Studio integration functionality to create and manage MySQL databases when developing .NET applications. The 1.2.3 version is a General Availability release of this product which is feature complete and is suitable for production environments.
In this blog post we are going to talk about one of the features included since MySQL for Excel 1.3.0, MySQL for Excel has always let you create new schemas and tables in a MySQL database, in versions lower than 1.3.0 these were created with the default character set and collation defined in the MySQL server. Starting with version 1.3.0 we introduced several features regarding collations:
Remember you can install the latest[Read more...]
It is not clear for many MySQL users that Percona XtraDB Cluster (PXC) and MariaDB Galera Cluster depend on the same Galera library i.e used in Galera Cluster for MySQL which is provided by Codership team:
But the question is, are there any performance differences between the three of them ?
Over the last several months we’ve designed and built an events dashboard that lets you inspect very large amounts of system event data quickly (interactively). This feature was driven by customer requests and feedback. The initial proof of concept established its usefulness right away, when customers began remarking that they’d diagnosed server issues by noticing events such as database restarts, replication failures, and configuration changes. At least one customer told us this saved them a long wild-goose chase.
The key concept is that event data is loaded fully into the browser and then you can thin-slice and drill down without reloading any events. And it’s fast. Really fast – it remains responsive even with hundreds of thousands of events. Here’s what the last 30 days of fine-grained events looks like on our own systems:[Read more...]
Covering indexes can result in orders of magnitude performance improvements for queries. Bradley’s presentation on covering indexes describes what a covering index is, how it can effect performance, and why it works. However, the definition of a covering index can get cumbersome since MySQL limits the number of columns in a key to 16 (32 on MariaDB).
Tokutek introduced multiple clustering indexes into MySQL to address these problems. Zardosht describes the multiple clustering indexes feature and how clustering indexes differ from covering indexes. Zardosht[Read more...]
MariaDB 5.5.39 was recently released (it is the latest MariaDB 5.5), and is available for download here:
This is a maintenance release, and so there are not too many big changes of note, just a number of normal bug fixes. However, there are a few items worth mentioning:
FromDual holds its annual company meeting this year in Barcelona, Spain.
We are pleased to invite everybody interested in MySQL technologies (MySQL, Galera Cluster, FromDual Tools, Percona Cluster, MariaDB, etc.) to participate on Thursday evening September 11 at the HCC MONTBLANC, Via Laietana 61, to meet, exchange ideas and discuss MySQL related topics.
The event starts at 18:00, we will meet in the hotel lobby. The planned schedule is:
Outbrain's orchestrator Version 1.0.5 is released.
Orchestrator now supports refactoring of masters via master-master topologies. It now allows promoting slaves as co-masters and detachment of instances from a co-master topology, effectively allowing for replacing an active master.
Drag a master:
The MariaDB project is pleased to announce the immediate availability of MariaDB 5.5.39. This is a Stable (GA) release.[Read more...]
Well over a thousand sessions have been submitted for the OpenStack Summit and two of them includes our good selves! We’ve submitted two talks with partners of ours:
… and would love it if the talks were included in the final agenda. For that to happen, we need a few[Read more...]
MySQL for Visual Studio 1.2 introduces several new features:
MySQL 5.6.20 was recently released (it is the latest MySQL 5.6, is GA), and is available for download here.
For this release, there is 1 “Security Fix”, 1 “InnoDB Important Change”, and 7 “Functionality Added or Changed” fixes, all of which should be read in case they might affect you (though for this release, these mostly appear to be minor – some [default] changes, build notes/changes, and deprecations):
binlog_impossible_modecontrols what happens if the server cannot write to the binary log, for example, due to a file error.
5.6.20 has a slew of bug fixes, functionality changes, and notes.
So why should you be reading the changes on a regular basis? There isa goldmine of information in them. For instance, if you use[Read more...]
Percona Replication Manager (PRM) continues to evolve and improve, I want to introduce two new features: Slave resync and Async stop.
This behavior is for regular non-gtid replication. When a master crashes and is no longer available, how do we make sure all the slaves are in a consistent state. It is easy to find the most up to date slave and promote it to be the new master based on the master execution position, the PRM agent already does that but how do we apply the missing transactions to the other slaves.
In order to solve that problem, I modified a tool originally written by Yelp, that outputs the MD5 sums of the payload (XID boundaries) and the commit positions of a binlog file. It produces an output like:
root@yves-desktop:/home/yves/src/PRM/percona-pacemaker-agents/tools/prm_binlog_parser# ./prm_binlog_parser.static.x86_64[Read more...]
Europe traditionally doesn’t have many MySQL-dedicated conferences, which is why I personally enjoy Percona Live London, now in its 2014 Edition. This year it happens November 3-4, and the call for presentations is still open — till August 17th.
Location-wise, London can’t be beat. And happening at Gloucester Road, you’re on the District/Circle/Picadilly lines to go to many[Read more...]
If you missed the hangout, check out the recording below:
Join us at #DBHangOps this Thursday, August, 07, 2014 at 11:00am pacific (18:00 GMT), to participate in the discussion about:
See all of you on Thursday!Show notes