Starting with MySQL 5.6, MySQL commercial-license builds use OpenSSL. yaSSL – previously used as the default SSL library for all builds – remains the implementation for Community (GPL) builds, and users comfortable building from source can choose to build with OpenSSL instead. Daniel van Eeden recently requested a global variable to indicate which SSL library was used to compile the server (bug#69226), and it’s a good request. It’s something I’ve previously requested as well, having been fooled by the use of have_openssl as a synonym for …
[Read more]I would like to invite everyone who is around Trondheim, Norway to the "MySQL mini-seminar" taking place on June 19, 2013 in Oracle office. Do not miss this great opportunity to meet great MySQL engineers who are looking forward to meeting you and talking about MySQL!!!
Please see the official invitation in English and Norwegian
below.
Invitation to MySQL mini-seminar
Many people are unaware that a great number of the MySQL
developers are located in Trondheim, Norway, and that we have a
lot of competence we would love to share.
We therefore invite anyone in Trondheim who's interested in MySQL
to a mini-seminar located the Oracle's offices on Lade, June 19
at 3 pm.
The agenda will be:
- Presentation: MySQL Query Optimizer: an overview, by Jørgen Løland, MySQL Optimizer team
- Q&A, discussions
- Suggestions for presentations on …
Last week we released MySQL Connector/Python v1.0.10. Release notes can be found in the MySQL Developver Zone.
A notable fix in Connector/Python v1.0.10 which might interest a few users is adding support for LOAD DATA LOCAL INFILE. It allows you to import CSV using a simple SQL statement.
Please use the MySQL Bugs website to report any problem.
Some useful links:
- Documentation: …
The third meeting for the MySQL User Group NL will be hosted by
Snow B.V. in the
Snow
office in Geldermalsen.
The Agenda:
- Choosing the Best Sharding Policy - Doran Levari (ScaleBase, using a video link)
- Performance Monitoring with Statsd and Graphite - Art van Scheppingen (Spil Games)
- Basic MySQL performance tuning for sysadmins - Daniël van Eeden (Snow)
Please RSVP on the meetup.com page.
The user group now has more than 100 members!
Stewart blogged about the archive storage
engine and he asked the Internet to test how fast ARCHIVE is
compared with other MySQL storage engines like Percona XtraDB and
Tokutek TokuDB. Since I've been curious about this subject as
well, I decided to give it a quick test.
Not very compressible data
I took a star schema benchmark "lineorder" file and grabbed the
first 15M rows. To each row I added a TEXT field called
"extra_data". This field contains 10 random words from
/usr/share/dict/words separated by space. This adds up to just
about 3GB of raw input data.
Insert performance with no indexes (best to worst)
TokuDB: 187K rows/sec
Query OK, 15000000 rows affected (1 min 20.25 sec)
XtraDB (uncompressed): 119K rows/sec:
Query OK, 15000000 rows affected …[Read more]
Stewart blogged about the archive storage
engine and he asked the Internet to test how fast ARCHIVE is
compared with other MySQL storage engines like Percona XtraDB and
Tokutek TokuDB. Since I've been curious about this subject as
well, I decided to give it a quick test.
Not very compressible data
I took a star schema benchmark "lineorder" file and grabbed the
first 15M rows. To each row I added a TEXT field called
"extra_data". This field contains 10 random words from
/usr/share/dict/words separated by space. This adds up to just
about 3GB of raw input data.
Insert performance with no indexes (best to worst)
TokuDB: 187K rows/sec
Query OK, 15000000 rows affected (1 min 20.25 sec)
XtraDB (uncompressed): 119K rows/sec:
Query OK, 15000000 rows affected …[Read more]
I talk with lot of people who are really interested in Percona XtraDB Cluster (PXC) and mostly they are interested in PXC as a high-availability solution. But, what they tend not to think too much about is if moving from async to synchronous replication is right for their application or not.
Facts about Galera replication
There’s a lot of different facts about Galera that come into play here, and it isn’t always obvious how they will affect your database workload. For example:
- Transaction commit takes approximately the worst packet round trip time (RTT) between any two nodes in your cluster.
- Transaction apply on slave nodes is still asynchronous from client commit (except on the original node where the transaction is committed)
- Galera prevents writing conflicts to these pending transactions …
As many have noted we have released another milestone release of
MySQL Cluster 7.3. One of the main features of 7.3 is obviously
foreign keys. In this post I am going to describe one more
feature added to MySQL Cluster in the second milestone release
which is called Connection Thread Scalability.
http://dev.mysql.com/tech-resources/articles/cluster-7.3-dmr2.html
Almost all software designed for multithreaded use cases in the
1990s have some sort of big kernel mutex, as a matter of a fact
this is also true for some hyped new software written in this
millenium and even in this decade. Linux had its big kernel
mutex, InnoDB had its kernel mutex, MySQL server had its
LOCK_open mutex. All these mutexes are characterized by the fact
that these mutexes protects many things that often have no
connection with each other. Most of …
The MySQL general query log can be a useful debugging tool, showing commands received from clients. In versions through MySQL 5.5, you could count on the GQL to log every command it received – the logging happened before parsing. That can be helpful – for example, the GQL entries might have records of somebody unsuccessfully attempting to exploit SQL injection vulnerabilities that result in syntax exceptions.
Here’s a sample, which I’ll run in both 5.5 and 5.6 and show the resulting GQL:
mysql> SELECT 1; +---+ | 1 | +---+ | 1 | +---+ 1 row in set (0.00 sec) mysql> SELECT NOTHING(); ERROR 1305 (42000): FUNCTION NOTHING does not exist mysql> SELECT 2; +---+ | 2 | +---+ | 2 | +---+ 1 row in set (0.00 sec)
In 5.5, this produces the following in the general query log:
130513 18:26:34 1 Query SELECT 1 130513 18:26:40 1 Query SELECT NOTHING() 130513 18:26:44 1 Query …[Read more]
tl;dr: Make sure you flash an LSI-9211 to IT firmware rev#14 to get it to work with Linux and SSD trim. You may have to downgrade from newer firmware to older firmware to get the card to work.
Finding a SATA III controller with more than one PCI-e lane
After a recent hardware issue I decided to upgrade my computer to
use new Intel 520 120MB SSD drives in RAID for improved
performance. The motherboard I use (an ASUS Rampage III
extreme) has a Marvel SATA III controller with two ports, but I
discovered that it is connected via only a single PCI-e lane
(each lane can do at most 400MB/sec*). This means that it
can't effectively support even a single Intel 520 because one
device can saturate the SATA III bus (An Intel 520 is rated at up
to 550MB/sec sequential write).
So I went on a quest for a new SATA 3 controller. To Frys!
I exclaimed. But unfortunately, all the PCI-e 2.x SATA III …