Showing entries 10603 to 10612 of 44044
« 10 Newer Entries | 10 Older Entries »
MySQL Group Replication: A small Corosync guide

MySQL Group Replication is here and with it comes the need to install and configure the underlying group communication toolkit that supports it: Corosync. Corosync is a well known and reliable Group Communication System that is used in such applications as Pacemaker.

In term of support, we develop MySQL Group Replication based on Corosync version 1.4.6, so this tutorial is based on this version. Regardless of this, no known problems are know to exists when using newer versions, but no extensive testing has been done on those.

Along with Corosync we also encourage the use of NSS to better secure your data that is transmitted in the group.

Installing

To install Corosync, you can rely on your packet manager for most distributions or compile it from source.

==> From the package manager

  • Debian distributions
$ sudo apt-get install corosync …
[Read more]
MySQL Group Replication: Distributed Recovery behind the scenes

The new addition to the MySQL planet, MySQL Group Replication is now on Labs Release for you to try it! It offers you update everywhere capabilities on any group of normal, out of the box, MySQL servers. Concurrent updates on a setup of several MySQL servers is now possible and this with our trademark: the ease of use.

In fact we ship MySQL Group Replication in such a way that for you to form a group and add new nodes, all that is needed is to configure the servers with your unique group id and just press start. In this post we show you the “behind the scenes” of this process, on how the node catches up with the remaining servers through distributed recovery.

The basics about Distributed Recovery

If we were to summarize what distributed recovery is, we could describe it as the process through which a new server gets missing data from a live node, while paying attention to what happens in the group, eventually catching …

[Read more]
Group communication behind the scenes

Introduction

The multi master plugin for MySQL is here. MySQL Group Replication ensures virtually synchronous updates on any node in a group of MySQL servers, with conflict handling and failure detection. Distributed recovery is also in the package to ease the process of adding new nodes.

For a better understanding on how things work, we go under the hood in this post and you will have a better understanding about the communication layer functionality and implementation.

Group Communication concepts Figure 1 – Plugin Architecture

As the architecture shown in Figure 1, Group Replication is a classic modular and layered piece of software and the bottom two layers comprise the communication module. But, it is not a regular …

[Read more]
MySQL Group Replication : Hello World!

The first preview  release of MySQL Group Replication, a MySQL plugin that brings multi-master update everywhere to MySQL, is available on labs. This plugin ties together concepts and technologies from distributed systems, such as group communication, with traditional database replication. The ultimate result is a seamlessly distributed and replicated database over a set of MySQL servers cooperating together to keep the replicated state strongly consistent.

Introduction

Before diving into the details of MySQL Group Replication, lets first introduce some background concepts and an overview of how things work. These will provide some context to help understand what this is all about and what are the differences between traditional MySQL replication and the one implemented in this new plugin.

[Read more]
MySQL Connector/Python 2.0.1 an 1.2.3 on PyPI

Both MySQL Connector/Python 2.0.1 and 1.2.3 are now available through the Python Package Index or PyPI. Leaving the previous version available is probably a good idea as you can always go back if needed.

Note that we still have no files hosted at PyPI.

MySQL Connector/Python 2.0.1 an 1.2.3 on PyPI

Both MySQL Connector/Python 2.0.1 and 1.2.3 are now available through the Python Package Index or PyPI. Leaving the previous version available is probably a good idea as you can always go back if needed.

Note that we still have no files hosted at PyPI.

New name and new challenges

Tue, 2014-09-30 08:55patriksallner

As we start the beginning of our FY15, I want to thank all our customers, partners, staff, and community members for their contributions this past year. I'm proud of what we collectively achieved even as we drove significant changes in our business and organization. It's energizing to feel the momentum and enthusiasm building around MariaDB.

So, as my first act for FY15, I am excited to announce that today SkySQL will change its name to MariaDB Corporation. This name change will more closely associate the MariaDB open-source database with the company behind it. You may have already noticed that we moved our corporate website from skysql.com to mariadb.com.

As the adoption of MariaDB grows within the MySQL community, so does its acceptance in the enterprise space. Having started as an exciting open source project, MariaDB has since been embraced by millions of enthusiastic developers and …

[Read more]
GROUP BY fixed

Friend and former colleague Roland Bouwman has written an excellent update on the GROUP BY implementation in MySQL.

MySQL’s implementation of GROUP BY has historically been quirky. Sometimes that quirkiness has been useful, but often it causes grief as SQL authors can make mistakes that are executed but don’t produce the results they want (or expect).

Simple example:

SELECT cat, COUNT(val) as cnt, othercol FROM tbl GROUP BY cat

The ‘cat‘ column is in the GROUP BY clause, the COUNT(val) is an aggregate, but the ‘othercol‘ column is … well… neither. What used to effectively happen is that the server would pick one othercol value from within each group. As I noted before, sometimes useful but often a pest as the server wouldn’t know if …

[Read more]
Optimizer Cost Model Improvements in MySQL 5.7.5 DMR

In a previous blog post we presented some of the issues with the current optimizer cost model and listed several ideas for improvements. The new 5.7.5 DMR contains the result of our initial work on improving the optimizer’s cost model:

  • Cost Model for WHERE Conditions. In previous versions of MySQL, the estimated number of rows from a table that will be joined with the next table only takes into account the conditions used by the access method. This often led to record estimates that were far too high and thus to a very wrong cost estimate for the join. With wrong cost estimates, the join optimizer might not find and choose the best join order. To solve this issue, a cost model that includes the …
[Read more]
A workaround for MySQL ERROR 1070

As documented in the Reference Manual MySQL supports a maximum of 16 columns per index. That's more than sufficient for most index use cases, but what about unique constraints? If I create a fact table with more than 16 dimension columns in my star schema, and then try to add an index to enforce a unique constraint across all of the dimension columns, then I'll get this error:

ERROR 1070 (42000): Too many key parts specified; max 16 parts allowed

For multi-column unique indexes, internally MySQL concatenates all of the column values together in a single hyphen-delimited string for comparison. Thus I can simulate a multi-column unique index by adding an extra column that stores the concatenated column values, and adding a unique index on that column.

Read on for details...

I could populate the new column …

[Read more]
Showing entries 10603 to 10612 of 44044
« 10 Newer Entries | 10 Older Entries »