You are here
Feed aggregator
Mittendrin statt nur dabei – DOAG-Datenbank-Duell: Oracle XE vs. MySQL
Aus dem Hause Oracle gibt es zwei kostenfreie Datenbank-Systeme: Oracle XE und MySQL. Für alle, die mehr darüber wissen wollen als nur die Namen, stellt die DOAG (Deutsche Oracle-Anwendergruppe e.V.) sie in einem Duell einander gegenüber - mit Kurzvorträgen, Diskussionen und "Live Hacking". Unser CTO Oliver Sennhauser wird dabei die MySQL-Seite vertreten.
Neben diesen fachlichen Inhalten werden natürlich auch das leibliche Wohl und das Knüpfen von Kontakte nicht zu kurz kommen. Geben Sie Ihre Erfahrungen weiter, und profitieren Sie von denen der anderen!
Die Veranstaltung findet vom 5. zum 6. Februar im Derag Livinghotel Maximilian in Nürnberg statt, weitere Details und die Anmelde-Möglichkeit finden Sie hier.
Auf spannende und ereignisreiche Stunden mit Ihnen freut sich unser CTO Oliver Sennhauser.
MySQL Enterprise Incremental Backup simplified
MySQL Enterprise Backup (MEB) has the capability to make real incremental (differential and cumulative?) backups. The actual releases are quite cool and you should really look at it...
Unfortunately the original MySQL documentation is much too complicated for my simple mind. So I did some testing and simplified it a bit for our customers...
If you want to dive into the original documentation please look here: Making an Incremental Backup .
If you want to use MySQL Enterprise Backup please let us know and we send you a quote...
Prepare MySQL Backup infrastructure mkdir /backup/full /backup/incremental1 /backup/incremental2Full MySQL Backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --backup-dir=/backup/full backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --backup-dir=/backup/full apply-log
First MySQL Incremental Backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --incremental --incremental-base=dir:/backup/full --incremental-backup-dir=/backup/incremental1 backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --backup-dir=/backup/full --incremental-backup-dir=/backup/incremental1 apply-incremental-backup
Second MySQL Incremental Backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --incremental --incremental-base=dir:/backup/full --incremental-backup-dir=/backup/incremental2 backup mysqlbackup --defaults-file=/etc/my.cnf --user=root --backup-dir=/backup/full --incremental-backup-dir=/backup/incremental2 apply-incremental-backup
and so on...
MySQL Restore mysqlbackup --defaults-file=/etc/my.cnf --user=root --backup-dir=/backup/full copy-backHave fun with MySQL Enterprise Backup. If you need any help with your MySQL Backup concept, please let us know.
Creating Event Handlers with MySQL Enterprise Monitor
MySQL Enterprise Monitor (MEM) has by default no Event Handlers created and activated. These Event Handlers you have to define yourself according to your needs.
In this article we discuss how to create MySQL Enterprise Monitor Event Handlers with MEM v.3.0.18. For other (older) versions the steps may vary...
Task: Event Handler for maximum Connections reachedWe would like to be notified by MySQL Enterprise Monitor when the number of connections is near to max_connections.
For this we search first which Advisors are available at all: Configuration -> Advisors -> Availability.
Here we can see that we have an Advisor called Maximum Connection Limit Nearing Or Reached which is scheduled for every 5 minutes and has thresholds at 75, 85, 95 and 100%:
Now we know which Advisor should create and Event. As a next step we have to create and Event which should be triggered: Configuration -> Event Handling -> Create Event Handler.
Here we can create and Event with all its needed configuration: Events -> All -> server.
If we look at the Events we can even see the detailed description and how the values for the Event are collected:
Task: Event Handler for used disk space
For this Event Handler we need the Advisor Filesystem Free Space under Operating System:
In this advisor we can configure the Threshold as well:
In the Event Handler we can define which Assets shall be monitored. For example the mountpoint: /.
Local disks can only be monitored, if a local MySQL Enterprise Monitor Agent is installed. An agent-less MySQL Enterprise Monitor cannot monitor local disk resources...
Have fun using the MySQL Enterprise Monitor. If you need any help in installing or configuring MEM do not hesitate to contact us.
All these functions are also implemented in the FromDual Performance Monitor for MySQL. If you want to relay on Open Source technology only you should consider our Performance Monitor.
MySQL Environment MyEnv 1.1.4 has been released
FromDual has the pleasure to announce the release of the new version 1.1.4 of its popular MySQL, Galera Cluster, MariaDB and Percona Server multi-instance environment MyEnv.
The new MyEnv can be downloaded here.
In the inconceivable case that you find a bug in the MyEnv please report it to our bug tracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.1.x to 1.1.4 # cd ${HOME}/product # tar xf /download/myenv-1.1.4.tar.gz # rm -f myenv # ln -s myenv-1.1.4 myenvIf you are using plug-ins for showMyEnvStatus create all the links in the new directory structure:
cd ${HOME}/product/myenv ln -s ../../utl/oem_agent.php plg/showMyEnvStatus/Changes in MyEnv 1.1.4
Because an ugly but non-dangerous bugs we skipped the announcement of version 1.1.3.
All changes since MyEnv 1.1.2 are listed here. We recommend to skip version 1.1.3
MyEnv- Error messages are sent to stderr instead of stdout, start error messages are tested after up test.
- Error message if wrong user wants to stop database.
- MyEnv init script slightly improved.
- False positive error message in start fixed.
- Variable parsing in my.cnf made more robust.
- Error messages and warnings made more verbose/clear.
- Bug during stopping database with dummy instance fixed (MGB).
- Cgroups functionality added.
- PHP debug message is now just displayed in debug mode.
- installMyEnv cleans up my.cnf in basedir if it did not exists before to avoid nasty warning message.
- Move [client] and [mysqldump] section to top to not forget them later.
- Bug with empty myenv.conf fixed (KN).
- Install advice for SuSE was wrong for runlevels for MyEnv.
- my.cnf template updated.
- /tmp as location for socket removed because of RedHat tmpcleaner.
- datadir redundancy removed.
- lost+found folder was added to hideschema.
- installMyEnv.sh replaced by installMyEnv.
- Partitioning tools error output is now written to stderr correctly.
- log_maintenance.sh script contribution added (TS).
- HAproxy check added.
- purge_binary_log.py added.
- insert_test.sh improved.
- lb.monitor skript added.
For subscriptions of commercial use of MyEnv please get in contact with us.
Taxonomy upgrade extras: MyEnvoperationMySQL Operationsmulti instanceconsolidationtestingreleaseMySQL Environment MyEnv 1.1.4 has been released
FromDual has the pleasure to announce the release of the new version 1.1.4 of its popular MySQL, Galera Cluster, MariaDB and Percona Server multi-instance environment MyEnv.
The new MyEnv can be downloaded here.
In the inconceivable case that you find a bug in the MyEnv please report it to our bug tracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.1.x to 1.1.4 # cd ${HOME}/product # tar xf /download/myenv-1.1.4.tar.gz # rm -f myenv # ln -s myenv-1.1.4 myenvIf you are using plug-ins for showMyEnvStatus create all the links in the new directory structure:
cd ${HOME}/product/myenv ln -s ../../utl/oem_agent.php plg/showMyEnvStatus/Changes in MyEnv 1.1.4
Because an ugly but non-dangerous bugs we skipped the announcement of version 1.1.3.
All changes since MyEnv 1.1.2 are listed here. We recommend to skip version 1.1.3
MyEnv- Error messages are sent to stderr instead of stdout, start error messages are tested after up test.
- Error message if wrong user wants to stop database.
- MyEnv init script slightly improved.
- False positive error message in start fixed.
- Variable parsing in my.cnf made more robust.
- Error messages and warnings made more verbose/clear.
- Bug during stopping database with dummy instance fixed (MGB).
- Cgroups functionality added.
- PHP debug message is now just displayed in debug mode.
- installMyEnv cleans up my.cnf in basedir if it did not exists before to avoid nasty warning message.
- Move [client] and [mysqldump] section to top to not forget them later.
- Bug with empty myenv.conf fixed (KN).
- Install advice for SuSE was wrong for runlevels for MyEnv.
- my.cnf template updated.
- /tmp as location for socket removed because of RedHat tmpcleaner.
- datadir redundancy removed.
- lost+found folder was added to hideschema.
- installMyEnv.sh replaced by installMyEnv.
- Partitioning tools error output is now written to stderr correctly.
- log_maintenance.sh script contribution added (TS).
- HAproxy check added.
- purge_binary_log.py added.
- insert_test.sh improved.
- lb.monitor skript added.
For subscriptions of commercial use of MyEnv please get in contact with us.
Taxonomy upgrade extras: myenvoperationMySQL Operationsmulti instanceconsolidationtestingupgradereleaseMySQL Environment MyEnv 1.1.4 has been released
FromDual has the pleasure to announce the release of the new version 1.1.4 of its popular MySQL, Galera Cluster, MariaDB and Percona Server multi-instance environment MyEnv.
The new MyEnv can be downloaded here.
In the inconceivable case that you find a bug in the MyEnv please report it to our bug tracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.1.x to 1.1.4 # cd ${HOME}/product # tar xf /download/myenv-1.1.4.tar.gz # rm -f myenv # ln -s myenv-1.1.4 myenvIf you are using plug-ins for showMyEnvStatus create all the links in the new directory structure:
cd ${HOME}/product/myenv ln -s ../../utl/oem_agent.php plg/showMyEnvStatus/Changes in MyEnv 1.1.4
Because an ugly but non-dangerous bugs we skipped the announcement of version 1.1.3.
All changes since MyEnv 1.1.2 are listed here. We recommend to skip version 1.1.3
MyEnv- Error messages are sent to stderr instead of stdout, start error messages are tested after up test.
- Error message if wrong user wants to stop database.
- MyEnv init script slightly improved.
- False positive error message in start fixed.
- Variable parsing in my.cnf made more robust.
- Error messages and warnings made more verbose/clear.
- Bug during stopping database with dummy instance fixed (MGB).
- Cgroups functionality added.
- PHP debug message is now just displayed in debug mode.
- installMyEnv cleans up my.cnf in basedir if it did not exists before to avoid nasty warning message.
- Move [client] and [mysqldump] section to top to not forget them later.
- Bug with empty myenv.conf fixed (KN).
- Install advice for SuSE was wrong for runlevels for MyEnv.
- my.cnf template updated.
- /tmp as location for socket removed because of RedHat tmpcleaner.
- datadir redundancy removed.
- lost+found folder was added to hideschema.
- installMyEnv.sh replaced by installMyEnv.
- Partitioning tools error output is now written to stderr correctly.
- log_maintenance.sh script contribution added (TS).
- HAproxy check added.
- purge_binary_log.py added.
- insert_test.sh improved.
- lb.monitor skript added.
For subscriptions of commercial use of MyEnv please get in contact with us.
Nagios and Icinga plug-ins for MySQL 1.0.0 have been released
FromDual has the pleasure to announce the release of the new version 1.0.0 of its widely used Nagios and Icinga plug-ins for MySQL, Galera Cluster, MariaDB and Percona Server.
All plug-ins are basically renewed and should now work all correctly.
The new Nagios/Icinga plug-ins can be downloaded here.
In the inconceivable case that you find a bug in the Nagios/Icinga plug-ins please report it to our bug tracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Description of the current functionalityDetails about the functionality and the usage of each plug-in you get with the option: --help.
The following Nagios/Icinga plug-in for MySQL and MariaDB are currently available:
check_db_mysql.plThis Nagios/Icinga plug-in alerts you if your MySQL database is not up and running.
check_errorlog_mysql.pl and errorLogFilterRules.pmThis Nagios/Icinga plug-in alerts you if it finds some suspicious messages in the MySQL error log.
The rules which messages should be ignored can be found in the file errorLogFilterRules.pm. If you want to add your own filter rules please add them in this file as well.
This Nagios/Icinga plug-in alerts you if the actual number of nodes in your a Galera Cluster is not the expected one.
check_repl_mysql_cnt_slave_hosts.plThis Nagios/Icinga plug-in alerts you if your MySQL Slaves have not reported to their Master properly their existence with the report_host variable.
check_repl_mysql_heartbeat.plThis Nagios/Icinga plug-in alerts you if your MySQL Slave is too many heartbeats behind its Master.
check_repl_mysql_io_thread.plThis Nagios/Icinga plug-in alerts you if your MySQL Slaves IO thread is not up an running.
check_repl_mysql_read_exec_pos.plThis Nagios/Icinga plug-in alerts you if your MySQL Slaves read and execution positions differ too much.
check_repl_mysql_readonly.plThis Nagios/Icinga plug-in alerts you if your MySQL Slave is NOT set to readonly.
check_repl_mysql_seconds_behind_master.plThis Nagios/Icinga plug-in alerts you if your MySQL Slave falls too many seconds behind its Master.
check_repl_mysql_sql_thread.plThis Nagios/Icinga plug-in alerts you if your Slaves SQL thread is not up an running.
perf_mysql.plThis Nagios/Icinga plug-in gathers MySQL and MariaDB performance data.
Changes in FromDual Nagios/Icinga plug-ins 1.0.0 All plug-ins- Usage was improved. The usage can be shown with the --help option.
- Usage states now which GRANT privileges are needed for a specific plug-in.
- Examples added how to use each plug-in.
- Default socket location moved from /tmp/mysql.sock to /var/run/mysqld/mysqld.sock.
- New host/socket convention implemented in all scripts similar to MySQL client tools.
- -epn tag added for Icinga.
- Some bugs fixed.
- More filtering rules added.
- Filtering rules separated into own file.
- Entry point finding problem fixed.
- Script name fixed.
- Unknown command problem with Galera Cluster caught.
- mysqladmin ping removed and implemented in Perl.
For subscriptions for commercial use of this software please get in contact with us.
Linuxtag: Knowledge and People - and New Colleagues?
At FromDual, we are currently preparing for our participation in the "Chemnitzer Linux-Tage" in March.
While we don't yet know whether the programme committee accepted our proposed talks, we will have a booth and hope for interesting exchanges with others from the MySQL, database, Linux, ... world.
Of course, we will also mention that we are looking for additional colleagues - there are so many tasks that we need more people to handle them all.
(In case you got curious, look here: http://www.fromdual.com/mysql-dba-2014-12-de )
While I attended the Chemnitzer Linux-Tage already last year (thank you, Frank Hofmann, for recommending them!), it will be the first time there for FromDual as a company. I enjoyed the informal atmosphere, which made it easy to get into contact with new people, to learn, and to discuss both facts and opinions.
To those of you who didn't yet attend such events, I can only say: You are missing some great experiences! It is good to get stimulated by others, by their problems and their experiences, so that one's thoughts are broadened and start considering new fields. Often, they lead to insights that are helpful for one's own daily work.
In the opposite direction, we at FromDual hope that during the Linux-Tage we can help others to make (better) use of MySQL in all its variants, with its surrounding tools and products, so that everybody will profit.
The Chemnitzer Linux-Tage will take place on March 21 and 22, 2015, in Chemnitz, Germany.
Parts of the programme will probably be delivered in English, so even those of you who don't understand German might enjoy coming there.
If you now consider a visit, you will find further information here:
https://chemnitzer.linux-tage.de/2015/de
We will be happy to meet you in Chemnitz - to talk about whatever interests both you and us, maybe even about you joining us?
Linuxtag: Knowledge and People - and New Colleagues?
At FromDual, we are currently preparing for our participation in the "Chemnitzer Linux-Tage" in March.
While we don't yet know whether the programme committee accepted our proposed talks, we will have a booth and hope for interesting exchanges with others from the MySQL, database, Linux, ... world.
Of course, we will also mention that we are looking for additional colleagues - there are so many tasks that we need more people to handle them all.
(In case you got curious, look here: http://www.fromdual.com/mysql-dba-2014-12-de )
While I attended the Chemnitzer Linux-Tage already last year (thank you, Frank Hofmann, for recommending them!), it will be the first time there for FromDual as a company. I enjoyed the informal atmosphere, which made it easy to get into contact with new people, to learn, and to discuss both facts and opinions.
To those of you who didn't yet attend such events, I can only say: You are missing some great experiences! It is good to get stimulated by others, by their problems and their experiences, so that one's thoughts are broadened and start considering new fields. Often, they lead to insights that are helpful for one's own daily work.
In the opposite direction, we at FromDual hope that during the Linux-Tage we can help others to make (better) use of MySQL in all its variants, with its surrounding tools and products, so that everybody will profit.
The Chemnitzer Linux-Tage will take place on March 21 and 22, 2015, in Chemnitz, Germany.
Parts of the programme will probably be delivered in English, so even those of you who don't understand German might enjoy coming there.
If you now consider a visit, you will find further information here:
https://chemnitzer.linux-tage.de/2015/de
We will be happy to meet you in Chemnitz - to talk about whatever interests both you and us, maybe even about you joining us?
Linuxtag: Knowledge and People - and New Colleagues?
At FromDual, we are currently preparing for our participation in the "Chemnitzer Linux-Tage" in March.
While we don't yet know whether the programme committee accepted our proposed talks, we will have a booth and hope for interesting exchanges with others from the MySQL, database, Linux, ... world.
Of course, we will also mention that we are looking for additional colleagues - there are so many tasks that we need more people to handle them all.
(In case you got curious, look here: http://www.fromdual.com/mysql-dba-2014-12-de )
While I attended the Chemnitzer Linux-Tage already last year (thank you, Frank Hofmann, for recommending them!), it will be the first time there for FromDual as a company. I enjoyed the informal atmosphere, which made it easy to get into contact with new people, to learn, and to discuss both facts and opinions.
To those of you who didn't yet attend such events, I can only say: You are missing some great experiences! It is good to get stimulated by others, by their problems and their experiences, so that one's thoughts are broadened and start considering new fields. Often, they lead to insights that are helpful for one's own daily work.
In the opposite direction, we at FromDual hope that during the Linux-Tage we can help others to make (better) use of MySQL in all its variants, with its surrounding tools and products, so that everybody will profit.
The Chemnitzer Linux-Tage will take place on March 21 and 22, 2015, in Chemnitz, Germany.
Parts of the programme will probably be delivered in English, so even those of you who don't understand German might enjoy coming there.
If you now consider a visit, you will find further information here:
https://chemnitzer.linux-tage.de/2015/de
We will be happy to meet you in Chemnitz - to talk about whatever interests both you and us, maybe even about you joining us?
Download MySQL Enterprise Features
MySQL provides some great enterprise features beside the MySQL Server. The ones we are asked the most at customers are:
- MySQL Enterprise Backup (MEB)
- MySQL Enterprise Monitor (MEM) and
- MySQL Enterprise Workbench (MWB)
MySQL Enterprise Backup (MEB) is an alternative to the mysqldump backup utility. Its big advantage is its fast backup but even faster restore performance. This is a must for all MySQL users having bigger databases than let's say 10 to 20 Gigabytes and/or having hard requirements for restore times (MTTR).
Last implementation tests we did with a customer for an about 30 Gbyte database were:
MEBmysqldumpBackup10 minutes18 minutesRestore12 minutes80 minutesIf you need our help implementing MySQL Enterprise Backup into your backup infrastructure please get in contact with us. MySQL Enterprise Backup also seamlessly integrates into the FromDual Backup Manager for MySQL.
MySQL Enterprise Monitor (MEM)MySQL Enterprise Monitor (MEM) is an Enterprise Monitoring Solution for MySQL which Monitors your business critical MySQL databases. Various predefined advisors rise an alert if something with your precious MySQL database does not work as expected.
Our alternative competitive product is the FromDual Performance Monitor for MySQL.
MySQL Enterprise Workbench (MWB)MySQL Enterprise Workbench (MWB) is the tool modern MySQL Database administrators use to operate their MySQL databases. Old fashion ones still use the CLI... MySQL developers can easily write and test database queries and develop their data model with the ER diagram modeller.
Download Enterprise toolsBut how can we get now to these precious tools? This is quite easy following the screen shots below:
As a fist step you go to www.mysql.com/downloads:
Here you can find a link to Oracle eDelivery which is the MySQL/Oracle download facility. Then you get to the welcome screen:
Before you get access to the software you have to Sign In with your Oracle/MySQL customer account if you have one. If you do not have an account yet you can Create an Account to get to the software:
Then you have to agree (2 times) to the Terms & Restrictions (this is what Oracle is really good in). Once to the Oracle Trial License Agreement and once to the Export Restrictions:
Then you get to the Media Pack Search. Here you can define what product you are interested in and on which platform you are using it. Unfortunately a sub-product filter cannot be chosen. So you get a long list to pick your final package from:
An last you can download your product of desire:
Unfortunately the packages get some silly names like V59684-01.zip instead of meaningful names. But with the following command you get some information what is included in the package:
unzip -l V59684-01.zip Archive: V59684-01.zip Length Date Time Name --------- ---------- ----- ---- 2958631 2014-11-04 13:29 meb-3.11.1-linux-glibc2.5-x86-64bit.tar.gz 185 2014-11-05 08:30 meb-3.11.1-linux-glibc2.5-x86-64bit.tar.gz.asc 77 2014-11-04 13:29 meb-3.11.1-linux-glibc2.5-x86-64bit.tar.gz.md5 2130 2014-11-05 15:06 README.txt --------- ------- 2961023 4 filesHave fun trying the MySQL Enterprise Features. If you need any help installing or integrating them into your infrastructure, do not hesitate to contact FromDual.
MySQL table Point-in-Time-Recovery from mysqldump backup
Sometimes we face the situation where we have a full MySQL database backup done with mysqldump and then we have to restore and recover just one single table out of our huge mysqldump file.
Further our mysqldump backup was taken hours ago so we want to recover all the changes on that table since our backup was taken up to the end.
In this blog article we cover all the steps needed to achieve this goal for MySQL and MariaDB.
Recommendation: It is recommended to do theses steps on a testing system and then dump and restore your table back to the production system. If you do it directly on your production system you have to know exactly what you are doing...
Further this process should be tested carefully and regularly to get familiar with it and to assure your backup/restore/recovery procedure works properly.
The table we want to recover is called test.test from our backup full_dump.sql.gz. As a first step we have to do the recovery with the following command to our test database:
shell> zcat full_dump.sql.gz | extract_table.py --database=test --table=test | mysql -u rootThe script extract_table.py is part of the FromDual Recovery Manager to extract one single table from a mysqldump backup.
As a next step we have to extract the binary log file and its position where to start recovery from out of our dump:
shell> zcat full_dump.sql.gz | head -n 25 | grep CHANGE CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000216', MASTER_LOG_POS=1300976;Then we have to find out where we want to stop our Point-in-Time-Recovery. The need for recover is possibly due to a TRUCATE TABLE command or similar operation executed on the wrong system or it is just a time somebody has indicated us to recover to. The position to stop we can find as follows:
shell> mysqlbinlog -v mysql-bin.000216 | grep -B5 TRUNCATE --color #150123 19:53:14 server id 35622 end_log_pos 1302950 CRC32 0x24471494 Xid = 3803 COMMIT/*!*/; # at 1302950 #150123 19:53:14 server id 35622 end_log_pos 1303036 CRC32 0xf9ac63a6 Query thread_id=54 exec_time=0 error_code=0 SET TIMESTAMP=1422039194/*!*/; TRUNCATE TABLE testAnd as a last step we have to apply all the changes from the binary log to our testing database:
shell> mysqlbinlog --disable-log-bin --database=test --start-position=1300976 --stop-position=1302950 mysql-bin.000216 | mysql -u root --forceNow the table test.test is recovered to the wanted point in time and we can dump and restore it to its final location back to the production database.
shell> mysqldump --user=root --host=testing test test | mysql --user=root --host=production testThis process has been tested on MySQL 5.1.73, 5.5.38, 5.6.22 and 5.7.5 and also on MariaDB 10.0.10 and 10.1.0.
FromDual Backup and Recovery Manager for MySQL 1.2.1 has been released
FromDual has the pleasure to announce the release of the new version 1.2.1 of the popular Backup and Recovery Manager for MySQL and MariaDB (fromdual_bman).
You can download the FromDual Backup and Recovery Manager from here.
In the inconceivable case that you find a bug in the Backup and Recovery Manager please report it to our Bugtracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.2.0 to 1.2.1 # cd ${HOME}/product # tar xf /download/fromdual_brman-1.2.1.tar.gz # rm -f fromdual_brman # ln -s fromdual_brman-1.2.1 fromdual_brmanChanges in FromDual Backup Manager 1.2.1 FromDual Backup Manager
It contains mainly one very critical bug fix, one bug fix for using FromDual Backup Manger in combination with MariaDB and xtrabackup and several minor bug fixes and small improvements.
We STRONGLY RECOMMEND to upgrade immediately to v1.2.1 if you are using FromDual Backup Manager v1.2.0-RC1 and newer. In these versions errors of mysqldump in combination with the --direct-compress option are not handled correctly and a return code of 0 is returned which can be wrong. This leads to incomplete backups and loss of data during the restore.
You can verify your current FromDual Backup Manager version with the following command:
fromdual_bman --version- Merges of myEnv.inc with the one of MyEnv.
- Bug with MariaDB using xtrabackup fixed (PM).
- Lock file handling improved.
- Very important: max_allowed_packet bug fixed which was introduced in v1.2.0-RC1.
- Schema names with special characters are now handled properly.
- Log directory is automatically created if it does not exist.
- Error comment for --blocking-backup improved.
FromDual Backup and Recovery Manager for MySQL 1.2.1 has been released
FromDual has the pleasure to announce the release of the new version 1.2.1 of the popular Backup and Recovery Manager for MySQL and MariaDB (fromdual_bman).
You can download the FromDual Backup and Recovery Manager from here.
In the inconceivable case that you find a bug in the Backup and Recovery Manager please report it to our Bugtracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.2.0 to 1.2.1 # cd ${HOME}/product # tar xf /download/fromdual_brman-1.2.1.tar.gz # rm -f fromdual_brman # ln -s fromdual_brman-1.2.1 fromdual_brmanChanges in FromDual Backup Manager 1.2.1 FromDual Backup Manager
It contains mainly one very critical bug fix, one bug fix for using FromDual Backup Manger in combination with MariaDB and xtrabackup and several minor bug fixes and small improvements.
We STRONGLY RECOMMEND to upgrade immediately to v1.2.1 if you are using FromDual Backup Manager v1.2.0-RC1 and newer. In these versions errors of mysqldump in combination with the --direct-compress option are not handled correctly and a return code of 0 is returned which can be wrong. This leads to incomplete backups and loss of data during the restore.
You can verify your current FromDual Backup Manager version with the following command:
fromdual_bman --version- Merges of myEnv.inc with the one of MyEnv.
- Bug with MariaDB using xtrabackup fixed (PM).
- Lock file handling improved.
- Very important: max_allowed_packet bug fixed which was introduced in v1.2.0-RC1.
- Schema names with special characters are now handled properly.
- Log directory is automatically created if it does not exist.
- Error comment for --blocking-backup improved.
FromDual Backup Manager for MySQL 1.2.1 has been released
FromDual has the pleasure to announce the release of the new version 1.2.1 of the popular Backup Manager for MySQL and MariaDB (fromdual_bman).
You can download the FromDual Backup Manager from here.
In the inconceivable case that you find a bug in the Backup Manager please report it to our Bugtracker.
Any feedback, statements and testimonials are welcome as well! Please send them to feedback@fromdual.com.
Upgrade from 1.2.0 to 1.2.1 # cd ${HOME}/product # tar xf /download/fromdual_brman-1.2.1.tar.gz # rm -f fromdual_brman # ln -s fromdual_brman-1.2.1 fromdual_brmanChanges in FromDual Backup Manager 1.2.1 FromDual Backup Manager
It contains mainly one very critical bug fix, one bug fix for using FromDual Backup Manger in combination with MariaDB and xtrabackup and several minor bug fixes and small improvements.
We STRONGLY RECOMMEND to upgrade immediately to v1.2.1 if you are using FromDual Backup Manager v1.2.0-RC1 and newer. In these versions errors of mysqldump in combination with the --direct-compress option are not handled correctly and a return code of 0 is returned which can be wrong. This leads to incomplete backups and loss of data during the restore.
You can verify your current FromDual Backup Manager version with the following command:
fromdual_bman --version- Merges of myEnv.inc with the one of MyEnv.
- Bug with MariaDB using xtrabackup fixed (PM).
- Lock file handling improved.
- Very important: max_allowed_packet bug fixed which was introduced in v1.2.0-RC1.
- Schema names with special characters are now handled properly.
- Log directory is automatically created if it does not exist.
- Error comment for --blocking-backup improved.
Introducing Myself: Jörg Brühe
Often, in such introductions people use the phrase of "the new kid on the block". I won't. If I am to use those words, I will arrange them as "the kid on the new block". The reason is that I don't feel as a new kid in the MySQL village (or is it a city?), let alone in DBMS country.
Ever since I left university (Technical University of Berlin, Germany), I have been involved in SQL DBMS development. After my previous product's team had been dissolved in Berlin and maintenance moved to Riga, Latvia, as a cost-cutting measure, I joined MySQL AB in 2004 as a member of the Build Team. Some of you will remember my name from MySQL release announcements, others may have seen it in bug reports, newsgroup entries, or other MySQL communication. Together with the other MySQL colleagues, I got acquired by Sun in 2008 and then by Oracle in 2010.
In 2012, I decided I wanted a culture change, from a highly (and very strictly) organized corporation to a smaller, more flexible entity. That brought me to an internet site, where I worked as a DBA, concentrating on their (more than 100) MySQL installations. It was very interesting to view MySQL from the DBA side now, I got a big load of new experiences and learned a lot about using, running, and automating MySQL (rather than building and testing it).
That might have continued, but as usual the world is changing, and my DBA job was no exception: Company strategy was to shift those tasks more to the various application teams and to do without a central point for MySQL. It is a sign how far MySQL knowledge has spread, and how little effort may be sufficient to run MySQL, that this worked. OTOH, this invalidated the assumptions on which my job was based, and I did not really fit the alternatives left in that company.
In that situation, my contact to FromDual got renewed, and both the company and me felt we should be a good match. Till now, there is no indication we were wrong: I like the work, I feel I'm productive and make customers happy, the tasks are manifold and interesting (so interesting that writing the first blog gets delayed quite long), and I expect this will continue.
"Ad multos annos!"
Introducing Myself: Jörg Brühe
Often, in such introductions people use the phrase of "the new kid on the block". I won't. If I am to use those words, I will arrange them as "the kid on the new block". The reason is that I don't feel as a new kid in the MySQL village (or is it a city?), let alone in DBMS country.
Ever since I left university (Technical University of Berlin, Germany), I have been involved in SQL DBMS development. After my previous product's team had been dissolved in Berlin and maintenance moved to Riga, Latvia, as a cost-cutting measure, I joined MySQL AB in 2004 as a member of the Build Team. Some of you will remember my name from MySQL release announcements, others may have seen it in bug reports, newsgroup entries, or other MySQL communication. Together with the other MySQL colleagues, I got acquired by Sun in 2008 and then by Oracle in 2010.
In 2012, I decided I wanted a culture change, from a highly (and very strictly) organized corporation to a smaller, more flexible entity. That brought me to an internet site, where I worked as a DBA, concentrating on their (more than 100) MySQL installations. It was very interesting to view MySQL from the DBA side now, I got a big load of new experiences and learned a lot about using, running, and automating MySQL (rather than building and testing it).
That might have continued, but as usual the world is changing, and my DBA job was no exception: Company strategy was to shift those tasks more to the various application teams and to do without a central point for MySQL. It is a sign how far MySQL knowledge has spread, and how little effort may be sufficient to run MySQL, that this worked. OTOH, this invalidated the assumptions on which my job was based, and I did not really fit the alternatives left in that company.
In that situation, my contact to FromDual got renewed, and both the company and me felt we should be a good match. Till now, there is no indication we were wrong: I like the work, I feel I'm productive and make customers happy, the tasks are manifold and interesting (so interesting that writing the first blog gets delayed quite long), and I expect this will continue.
"Ad multos annos!"
Introducing Myself: Jörg Brühe
Often, in such introductions people use the phrase of "the new kid on the block". I won't. If I am to use those words, I will arrange them as "the kid on the new block". The reason is that I don't feel as a new kid in the MySQL village (or is it a city?), let alone in DBMS country.
Ever since I left university (Technical University of Berlin, Germany), I have been involved in SQL DBMS development. After my previous product's team had been dissolved in Berlin and maintenance moved to Riga, Latvia, as a cost-cutting measure, I joined MySQL AB in 2004 as a member of the Build Team. Some of you will remember my name from MySQL release announcements, others may have seen it in bug reports, newsgroup entries, or other MySQL communication. Together with the other MySQL colleagues, I got acquired by Sun in 2008 and then by Oracle in 2010.
In 2012, I decided I wanted a culture change, from a highly (and very strictly) organized corporation to a smaller, more flexible entity. That brought me to an internet site, where I worked as a DBA, concentrating on their (more than 100) MySQL installations. It was very interesting to view MySQL from the DBA side now, I got a big load of new experiences and learned a lot about using, running, and automating MySQL (rather than building and testing it).
That might have continued, but as usual the world is changing, and my DBA job was no exception: Company strategy was to shift those tasks more to the various application teams and to do without a central point for MySQL. It is a sign how far MySQL knowledge has spread, and how little effort may be sufficient to run MySQL, that this worked. OTOH, this invalidated the assumptions on which my job was based, and I did not really fit the alternatives left in that company.
In that situation, my contact to FromDual got renewed, and both the company and me felt we should be a good match. Till now, there is no indication we were wrong: I like the work, I feel I'm productive and make customers happy, the tasks are manifold and interesting (so interesting that writing the first blog gets delayed quite long), and I expect this will continue.
"Ad multos annos!"
Impacts of max_allowed_packet size problems on your MySQL database
We recently run into some troubles with max_allowed_packet size problems during backups with the FromDual Backup/Recovery Manager and thus I investigated a bit more in the symptoms of such problems.
Read more about: max_allowed_packet.
A general rule for max_allowed_packet size to avoid problems is: All clients and the server should have set the same value for max_allowed_packet size!
I prepared some data for the test which looked as follows:
mysql> SELECT id, LEFT(data, 30), LENGTH(data), ts FROM test; +----+--------------------------------+--------------+------+ | id | left(data, 30) | length(data) | ts | +----+--------------------------------+--------------+------+ | 1 | Anhang | 6 | NULL | | 2 | Anhang | 6 | NULL | | 3 | Anhangblablablablablablablabla | 2400006 | NULL | | 4 | Anhang | 6 | NULL | +----+--------------------------------+--------------+------+Max_packet_size was set to a too small value then:
mysql> SHOW GLOBAL VARIABLES WHERE variable_name = 'max_allowed_packet'; +--------------------+---------+ | Variable_name | Value | +--------------------+---------+ | max_allowed_packet | 1048576 | +--------------------+---------+The first test was to retrieve the too big row:
mysql> SELECT * FROM test WHERE id = 3; ERROR 2020 (HY000): Got packet bigger than 'max_allowed_packet' bytes mysql> SELECT CURRENT_USER(); ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 6 Current database: testWe got an error message AND we were disconnected from the server. This is indicated with the message MySQL server has gone away which is basically wrong. We were disconnected and not the server has died or similar in this case.
A further symptom is that we get an entry in the MySQL error log about this incident:
[Warning] Aborted connection 3 to db: 'test' user: 'root' host: 'localhost' (Got an error writing communication packets)So watching carefully such error messages in your MySQL error log with the script check_error_log_mysql.pl from our Nagios/Icinga plugins would be a good idea...
The mysqldump utility basically does the same as a SELECT command so I tried this out and got the same error:
shell> mysqldump -u root test > /tmp/test_dump.sql mysqldump: Error 2020: Got packet bigger than 'max_allowed_packet' bytes when dumping table `test` at row: 2And again we get an error message in the error log! This is also a good indicator to see if your backup, made with mysqldump failed in this case.
To get a proper dump we have to configure the mysqldump utility properly:
shell> mysqldump --max-allowed-packet=5000000 -u root test > /tmp/test_dump.sqlAfter the backup we tried to restore the data:
shell> mysql -u root test < /tmp/test_dump.sql ERROR 2006 (HY000) at line 40: MySQL server has gone awayAgain we got an error on the command line and in the MySQL error log:
[Warning] Aborted connection 11 to db: 'test' user: 'root' host: 'localhost' (Got a packet bigger than 'max_allowed_packet' bytes)and further the data are only partially loaded:
mysql> SELECT * FROM test; +----+--------+------+ | id | data | ts | +----+--------+------+ | 1 | Angang | NULL | | 2 | Angang | NULL | +----+--------+------+Another symptom we can see here is that the MySQL status aborted_clients is increased in all 3 situation:
mysql> SHOW GLOBAL STATUS WHERE variable_name = 'aborted_clients'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | Aborted_clients | 10 | +-----------------+-------+One positive aspect is that with MySQL 5.7.5 the first 2 symptoms do not appear any more...
Further information you can find here: Communication Errors and Aborted Connections.Kurs MySQL/MariaDB für Fortgeschrittene 09.-13. Februar 2015 in Essen
Vom Montag, 09. bis Freitag 13. Februar 2015 findet im Linux Hotel in Essen eine MySQL/MariaDB Schulung für Fortgeschrittene statt.
Falls Sie Interesse haben, an dieser Schulung teilzunehmen, bitten wir Sie, Sich schnell anzumelden, um Sich Ihren Platz zu sichern. Es sind nur noch wenige Plätze vorhanden.
Anmelden für die MySQL Schulung für Fortgeschrittene können Sie Sich hier.
Bitte vermerken Sie unter Anmerkungen, dass Sie über den FromDual Newsletter auf das Angebot aufmerksam gemacht wurden.
Alle übrigen Schulungstermine finden Sie unter MySQL/MariaDB Schulung.
Taxonomy upgrade extras: mysqlschulungmariadbtrainingPages
![Subscribe to FromDual aggregator](https://fromdual.ch/misc/feed.png)