Managing SQL Drift: Ensuring Stability in Database Transitions

SQL drift is a significant challenge that occurs when SQL statements from an existing system produce unexpected results after migration to a new environment or system. These issues manifest in several critical ways: SQL statements may generate new execution errors, experience significant performance degradation, or yield differences in data integrity.

Read more

Identifying empty tables in MySQL

The following simple INFORMATION_SCHEMA statement will identify and also verify tables that have no rows. These may be candidate tables to remove from your data model. mysql --defaults-file=.my.cnf -N -e "

Read more

A simple FAILED SQL statement breaks MySQL 5.6 replication

I setup 6 shiny new MySQL 5.6.13 MySQL servers, ready for testing and production deployment tomorrow. I found that the New Relic MySQL Monitoring was throwing the following error. [2013-08-08 03:53:33 +0000] com.

Read more

DP#8 The disadvantages of row at a time processing

It can be hard for software engineers to understand the following principle, however it is very important for improving performance and obtaining immediate scalability options. The principle is “Do Less Work”.

Read more

MySQL configuration file created in /usr/my.cnf

As part of uncovering a new security improvement in MySQL 5.6 with the default installation being secured with a unique root MySQL password, the MySQL provided rpm’s installed the MySQL configuration file in /usr.

Read more

DP#4 The importance of using sql_mode

What if the data you retrieved from the database did not match the data the application claimed to had successfully stored? How comfortable would your organization feel about your skills and the products that are being used to store important information if data integrity was not guaranteed?

Read more

Unexplained (trivial) MySQL behavior

The -N or –skip-column-names is a convenient option with the mysql client to skip the header line of output. However I found when viewing the output via the terminal, some interesting and unexplained output.

Read more

Improved Security with MySQL 5.6

Installed on a clean CentOS 6.4 AWS instance. sudo su - cd /tmp wget http://cdn.mysql.com/Downloads/MySQL-5.6/MySQL-5.6.13-1.el6.x86_64.rpm-bundle.tar tar xvf MySQL-5.6.13-1.el6.x86_64.rpm-bundle.tar yum install -y libaio perl rpm -i MySQL*.rpm The following output is the sign that security is being considered with new MySQL versions.

Read more

MySQL Presentations to the Colombia Oracle Users Group

My slides for presentations on MySQL Backup and Recovery Essentials and Understanding and using MySQL in the Cloud from the Oracle Technology Network (OTN) event in Medellín‎ Colombia are now available.

Read more

Identify package management file contents

Recently when implementing Milliseconds in MySQL Proxy Lua Script I needed to identify what was installed from a given package. For CentOS $ sudo yum install -y yum-utils $ repoquery -q -l --plugins lua-socket /usr/lib64/lua/5.

Read more

MySQL Proxy and microseconds

By default the included Lua within MySQL proxy (0.8.3) does not include socket, necessary for getting microsecond granularity. To setup you have to install Lua and socket on the OS first:

Read more

Announcing the MySQL Plugin for New Relic

Many application developers would know of New Relic . A SaaS performance and monitoring tool targeted towards your web application monitoring including PHP, Ruby, Java, .Net, Python and Node. With the release today (June 19, 2013) of the New Relic Platform , custom monitoring of data stores including MySQL are now possible.

Read more

Percona Ireland??

Anybody else noticed that Percona appears to not be a US entity any more? I observed it today. $ sudo /usr/bin/innobackupex ... InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy and Percona Ireland Ltd 2009-2012.

Read more

Percona Live Conference Recommendations

While many attendees are repeat offenders, if 2013 is your first MySQL conference and you are relatively new with MySQL (say < 2 years experience), it can be daunting to determine which of the 8 or more concurrent sessions you should attend during the conference.

Read more

When is the error log filename not the right filename

When evaluating a MySQL system one of the first things to look at is the MySQL error log. This is defined by the log[_-]error variable in the MySQL Configuration file. Generally found like:

Read more