FromDual TechFeed (en)

InnoDB Graphs for MySQL Performance Monitor

Shinguz - Tue, 2011-06-14 10:41

We have just released v0.7.1 of the FromDual MySQL Performance Monitor. The new release can be downloaded from here.

In all editions some error messages have been cleaned-up, the fall-back data gather method mysql has been removed and the Maria SE template has been renamed to Aria.

In the edition dedicated to our customers most of the InnoDB graphs which are available with MEM v2.3.3 have been implemented now.

Please let us know, what you want to have monitored in addition and send us your feedback and …


Taxonomy upgrade extras:  Enterprise Monitor  Innodb  Monitoring  Performance Monitor  Graph  Mpm  Maas 

Be cautious when using Virtualized System with your Database

Shinguz - Wed, 2011-06-08 15:01

A customer rose a support case with a problem on his Master-Master set-up. The 2nd Master claims to have a problem:

master2> SHOW SLAVE STATUS<br>G
                ...
    Master_Log_File: master1-bin.000014
Read_Master_Log_Pos: 97975045
   Slave_IO_Running: No
  Slave_SQL_Running: Yes
Exec_Master_Log_Pos: 97975045
      Last_IO_Errno: 1236
      Last_IO_Error: Got fatal error 1236 from master when reading data from
                     binary log: 'Client requested master to start replication …

Taxonomy upgrade extras:  English  Multi-Master  Replication  San  Virtualization  Spof  Single-Point-of-Failure  Vmware 

German speaking MySQL User Group (DMySQLAG) founded today

Shinguz - Mon, 2011-06-06 17:14

Today the German speaking MySQL User Group (DMySQLAG) was officially founded in Berlin. The association advocates:

  • the information of the use, the handling and the experience with MySQL and development in the MySQL Eco-System as well as systems which use MySQL.
  • the exchange of experience between MySQL users about MySQL and other systems.
  • the Advice and Cooperation with Oracle and vendors of other systems.
  • the submission of suggestions of the members to Oracle and vendors of other systems.

The intention of …


Taxonomy upgrade extras:  English  Mysql  User Group 

When a MySQL table was last touched

Shinguz - Thu, 2011-06-02 20:56

In our last customer project we had around 600 Gbyte of data in a MySQL database. Because this database consumed a significant amount of our disk space and backups with the InnoDB backup tool took pretty long we wanted to find out if we could get rid of some of the tables.

This application was growing over the last 10 years and it was not clear if some tables are still in use or not.

But how to find out when a table was touched last? MySQL/InnoDB theoretically could know about but does not report this …


Taxonomy upgrade extras:  English  Mysql  Table  Read  Touched  Modified  Written 

Dumping BLOB's from the MySQL database

Shinguz - Fri, 2011-04-22 13:52

A customer who is handling digital certificates had a problem with one of those. So we had to investigate.

Because the certificate is in binary form it is stored in a BLOB and we had to extract it from the database to do some verifications.

What first came to my mind was to extract the certificate with the SELECT INTO OUTFILE command. But the verification tool complained and told us that the certificate has a wrong format.

Luckily I found in the documentation the following statement: If you use INTO …


Taxonomy upgrade extras:  English  Mysql  Blob  Dump  Select 

Configuration of MySQL for Shared Hosting

Shinguz - Fri, 2011-04-22 13:03

If you ask around about shared hosting setups with MySQL everybody is frightened. In fact it looks like shared hosting is one of the most difficult setups you can get.

The number of users is big, the number of tables huge and the load pattern is completely unpredictable and the queries often very, let us say: non-optimal.

Here one of the DBA wisdoms come into play: Controlling developers is like herding cats.

If you talk to the Shared MySQL Hoster they confirm that this setups are very demanding!

Why is …


Taxonomy upgrade extras:  Configuration  Shared  Hosting  Hoster  Setup  Limitnofile  Table_open_cache  Table_definition_cache  Open_files_limit  Multi-Tenant 

MySQL HA (high availability) Cluster cookbook

Shinguz - Sun, 2011-03-27 18:16

In the following article I have summarized some steps and hints to set-up a MySQL active/passive failover Cluster also sometimes called MySQL HA.

With such a set-up you can achieve a 99.99% (4x9) HA set-up for MySQL (52 minutes downtime per year). The same procedure also works for PostgreSQL, Oracle and other database systems running on Linux (DRBD runs on Linux only).

The concept

The concept of an active/passive failover Cluster is the following:

  • You have 2 servers (also called nodes).
  • They communicate …

Taxonomy upgrade extras:  English  High Availability  Cluster  Failover  Ha  Drbd  Heartbeat  Bonding  Active-Passive 

MySQL Performance Monitor with DRBD monitoring capabilities

Shinguz - Sat, 2011-03-26 11:25

The FromDual Performance Monitor for MySQL has now a new module for monitoring DRBD. Since more an more of our customers want to run MySQL High Availability solutions based on DRBD we have implemented this module.

We gather all information which are reported with the command:

# cat /proc/drbd

version: 8.3.8 (api:88/proto:86-94)
 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----
    ns:1241240 nr:14311680 dw:15033532 dr:1241281 al:198 bm:52 lo:0 pe:0 ua:0
    ap:0 ep:1 wo:b oos:0

Now you …


Taxonomy upgrade extras:  High Availability  Performance  Drbd  Monitor  Mpm  Maas 

Be careful when using SAN

Shinguz - Sun, 2011-03-06 10:13

Be careful when using SAN (Storage Area Networks) or similar shared storage solutions (and any other virtualization, consolidation or cloud solutions).

This week it happened again: A customer called us because he had some troubles with his on-line shop (note the date!). Everybody in his company complained that the databases are answering slowly.

When looking on the box (with iostat) we have seen some I/O load and some pending reads in InnoDB (SHOW ENGINE INNODB STATUS and SHOW GLOBAL STATUS LIKE …


Taxonomy upgrade extras:  English  Performance  San  Virtualization  Consolidation  Cloud 

channel_failover.pl v0.02

Shinguz - Fri, 2011-01-14 22:28

Starting and stopping, status and failover is possible now. Script basically works but should be made a bit more sophisticated still…

Let me know your findings and wishes.


Taxonomy upgrade extras: 

Closing Circle again and channel_failover script

Shinguz - Fri, 2011-01-14 15:54

One thing I forgot to mention: We lost Cluster B. So we rebuilt Cluster B from Cluster A.

Then we set-up channel ch1 from Cluster A to B. This worked fine. When we wanted to set-up Channel ch3 from Cluster B to A we got troubles starting the Slave.

We finally managed to start the Slave when we truncated the ndb_apply_status table. In the documentation is also something mentioned that a RESET SLAVE should work.

And travelling back from a customer I found some time to write a script to show the status of my …


Taxonomy upgrade extras: 

Query and traffic

Shinguz - Wed, 2011-01-12 19:19

Hello Ky,

Yes. You got me right! I meant the query on ndb_binlog_index.

With no traffic I mean NO DML statements (INSERT, UPDATE, DELETE, etc.) on that Cluster.

Thanks for asking and clearing this up!

Regards, Oli


Taxonomy upgrade extras: 

Careful using log_slave_updates

Shinguz - Wed, 2011-01-12 19:13

Hi Krishna,

Why do you think we should be carful using log_slave_updates in circular replication set-up’s?

Regards, Oli


Taxonomy upgrade extras: 

MySQL Cluster - Cluster circular replication with 2 replication channels

Shinguz - Mon, 2011-01-10 22:30

A few days ago I had to deal with MySQL Cluster replication. I did not do this for a while so I was prepared to expect some interesting surprises once again.

For those who MySQL Cluster - Cluster circular replication is the daily business they may skip this article. For all the others they possibly can profit from our learnings.

I am talking about the following MySQL Cluster set-up:

mysql_cluster_channel_failover.png

More detailed information about such set-ups you can find in the MySQL Cluster documentation.

Situations that lead to a …


Taxonomy upgrade extras:  English  Replication  Mysql Cluster  Channel  Failover  Circular 

Same test for InnoDB

Shinguz - Fri, 2011-01-07 22:03

I forgot to mention in the main post that I did these tests with 5.1.50.

Settings for MyISAM this time:

key_buffer_size         = 8M
sort_buffer_size        = 2M
read_buffer_size        = 128k
myisam_sort_buffer_size = 8M

Settings for InnoDB:

# plugin not built-in
innodb_file_per_table          = 1
innodb_log_file_size           = 128m
innodb_buffer_pool_size        = 384m
innodb-flush_log_at_trx_commit = 0
innodb_log_files_in_group      = 3
innodb_support_xa              = 0

InnoDB table WITHOUT …


Taxonomy upgrade extras: 

How can I find what InnoDB version I am using?

Shinguz - Sat, 2011-01-01 12:05

In the old days everything was simpler. We had one maker of our favourite database management system and possibly the choice between different Storage Engines. Mostly the decision has to be taken between MyISAM and InnoDB. When you care about your data integrity you have chosen InnoDB.

Nowadays it is more complex. We have several different makers of our favourite database management system: Oracle/MySQL, Monty Program AB and Percona with their products: MySQL, MariaDB and Percona Server.

We have different …


Taxonomy upgrade extras:  English  Storage Engine  Innodb  Plugin  Pbxt  Version  Xtradb  Builtin 

Impact of indices on MySQL

Shinguz - Fri, 2010-12-31 17:05

It is generally well known that indexes help a lot to speed up database queries (especially SELECT but also UPDATE and DELETE). It is less known, that indexes also have some disadvantages.

One of these disadvantages is, that indexes require space in memory and on disk. An other disadvantage of indexes is, that they slow down DML statements like INSERT and DELETE.

We often see at our customers that they do not realized this behavior. Now I found the time to show the impact of (too) many indexes graphically. …


Taxonomy upgrade extras:  English  Performance  Tuning  Index 

MySQL logon and logoff trigger for auditing

Shinguz - Fri, 2010-12-10 23:23

A while ago I did some research about MySQL audit functionality and logon a and logoff triggers. MySQL and MariaDB provide a logon trigger in the form of the init_connect variable but no logoff trigger where most of the work for auditing would be done. When we would have a logoff trigger we could track the login and possibility some activity of a user and implement auditing functionality.

Yesterday when I was looking into the code for an answer to the question of one of my customers this research came into …


Taxonomy upgrade extras:  English  Logon Trigger  Trigger  Login Trigger  Audit  Sql/Psm 

Transactional memory resident tables with PBXT

Shinguz - Sun, 2010-11-21 21:32

Introduction

In his presentation about PBXT at the DOAG Conference 2010 Paul McCullagh was speaking about memory resident PBXT tables. They will be available in version 1.1 of the PBXT Storage Engine Plugin. Memory resident PBXT tables should have similar characteristics like normal MySQL MEMORY</span> tables</a>. But in addition to the MEMORY tables they are transactional and can handle BLOB</span> and TEXT attributes.

An alternative to this feature would be the MySQL dynamic heap row …


Taxonomy upgrade extras:  English  Storage Engine  Transaction  Memory  Plugin  Resident  Pbxt  Blob  Memory Table 

MyEnv for MySQL Multi-Database set-ups

Shinguz - Sun, 2010-11-14 17:22

This week I showed one of my customers our MyEnv. He was very interested in it and suggested to make it known in public. In fact MyEnv is available for download already several years…

But I did not have the heart yet to announce it more publicly because it was not end user ready at all. So I used the weekend to make it nicer, consolidated some of the code, dropped old stuff etc. Now I think it is acceptable to use for public but not perfect.

So what is MyEnv?

MyEnv is a set of scripts to run …


Taxonomy upgrade extras:  Mysql  Environment  Database  Virtualization  Consolidation  Saas  Multi Instance  Myenv 

Pages

Subscribe to FromDual aggregator - FromDual TechFeed (en)