The Wayback Machine - https://web.archive.org/web/20121020055411/http://planet.mysql.com:80/
Home |  MySQL Buzz |  FAQ |  Feeds |  Submit your blog feed |  Feedback |  Archive |  Aggregate feed RSS 2.0 English Deutsch Español Français Italiano 日本語 Русский Português 中文
Showing entries 1 to 30 of 28095 Next 30 Older Entries
Real-time Replication Between Oracle and Oracle, and Oracle and MySQL
+0 Vote Up -0Vote Down
Re Oracle is the most powerful database system in the world. However, Oracle's expensive and complex replication makes it difficult to build highly available applications or move data in real-time to data warehouses and popular databases like MySQL.  In this video (recording of our live webcast on 10/18/12) you will learn how Continuent Tungsten solves problems with Oracle replication at a
Recovering from a bad UPDATE statement
+0 Vote Up -0Vote Down

Did you just run an UPDATE against your 10 million row users table without a WHERE clause?  Did you know that in MySQL 5.5 that sometimes you can recover from a bad UPDATE statement?  This is possible if you are running in binlog_format=ROW !

Imagine this scenario:

CREATE TABLE `t1` (
 `c1` int(11) NOT NULL AUTO_INCREMENT,
 `c2` varchar(10) NOT NULL,
 PRIMARY KEY (`c1`)
) ENGINE=InnoDB;
INSERT INTO `t1` (`c2`) VALUES ('michael'), ('peter'), ('aamina');

We run an accidental UPDATE statement that changes a row:

UPDATE `t1` SET `c2` = 'tom' WHERE `c1` = 2;

If we examine this UPDATE using the Binary Logging format of STATEMENT the entry would look like:

# at 464
#121019 16:10:42 server id 1 end_log_pos 532 Query thread_id=1 exec_time=0 error_code=0
SET TIMESTAMP=1350677442/*!*/;
BEGIN
/*!*/;
# at 532
  [Read more...]
Merit of Private Training
+0 Vote Up -0Vote Down

Percona has offered Training for years, and I have personally delivered my share of Public and Private training.  Below are my thoughts on the different training delivery options and how to choose the one that fits your needs.

The Onsite Public training is perhaps the most conventional type.  We get people from different people and go over our standard curriculum for the class  This is often the best choice when sending 1-2 employees, as they will likely establish connections with other students and benefit from their respective questions and comments –  This provides great insight and a much better learning experience.  Joining an Onsite Public course is also more affordable than Private Training too.  There are, however, downsid­­­es – one being its set curriculum.

  [Read more...]
MySQL Connector/Net 6.6.4 RC1 has been released
Employee +0 Vote Up -0Vote Down

MySQL Connector/Net 6.6.4, a new version of the all-managed .NET driver for MySQL has been released.  This is the Release Candidate intended to introduce users to the new features in the release.
Adapting Diagram File to Another Database
+0 Vote Up -0Vote Down

Some of our users have faced the situation when they need to change the connection details of the existing Database Diagram file.

Let’s assume the situation when you have several databases with identical schemas which are only located on different MySQL servers and you have created a database model that was saved in a Database Diagram file. Now, you want to avoid redesigning the database model from scratch and only reassign the existing database model to another MySQL server.

Here are some steps you can follow to achieve this:

1. Create a database diagram.

2. Arrange objects on the diagram so you can easily read them (create containers, notes, etc).

3. Save the diagram and close dbForge Studio for MySQL.

4. Open the Database

  [Read more...]
Amsterdam, MySQL User Group
Employee +2 Vote Up -0Vote Down
A comment was recently posted on the MySQL User Group Wiki page about a new user group in the Netherlands available via Meetup.com.

I wanted to take a moment and say thank you and ask everyone to support this new user group.

If people are aware of any user groups not listed, please feel free to post on the wiki page this information.
Log Buffer #291, A Carnival of the Vanities for DBAs
+0 Vote Up -0Vote Down
While Flex Baumgartner was jumping from the outer space, bloggers of database technologies were adventuring into the vistas of new technologies and sharing their experiences through their blogs. This Log Buffer Edition jumps right into the middle of database blogosphere and brings you Log Buffer #291. Oracle: Jason Lamon is doing OpenWorld 2012 recap and [...]
MySQL for Excel 1.1.0 GA has been released
Employee +2 Vote Up -0Vote Down

The MySQL Windows Experience Team is proud to announce the release of MySQL for Excel version 1.1.0 GA, one of our newest products contained in the MySQL Installer suite.  This new version introduces the Edit MySQL Data feature.

You can download it from our official Downloads page at http://dev.mysql.com/downloads/installer/.

Mozilla IT News, Thu 18 October
+1 Vote Up -0Vote Down

It has been several weeks since the last time I did a DB roundup, mostly due to travel. I spoke at Nagios World Conference 2012 at the end of September in St. Paul, Minneapolis, and then had a keynote and 2 talks at MySQL Connect, which was followed by Oracle OpenWorld and a Web Operations Team Meetup, which the DB team was invited to participate (and since I was in San Francisco anyway, I figured I’d stay for the meetup and the millionaire’s bacon (it was epic).
We have been busy, and getting some great and

  [Read more...]
Case Sensitive MySQL Searches
+0 Vote Up -2Vote Down

Here at End Point we strongly encourage the use of PostgreSQL. The reasons are numerous, but I'd like to highlight one today. MySQL's support for case sensitive search is explained somewhat opaquely in the aptly titled Case Sensitivity in String Searches documentation. In short, it explains that by default, MySQL won't treat strings as case sensitive when executing a statement as such:

SELECT first_name FROM contacts WHERE first_name REGEXP '^[a-z]';

This simple search to look for contacts whose first name starts with a lower case letter, will return *all* contacts because in the default character set used by MySQL (latin1), upper and lower case letters share the same "sort value".

UPDATE: After many helpful comments from

  [Read more...]
InnoDB DDL: kudos to quick responders on bugs.mysql.com
+3 Vote Up -0Vote Down

Continuing my experiments with 5.6 InnoDB online DDL, a bug which I've opened, and another which I commented on were quickly answered and explained by the Oracle/MySQL team.

On both accounts I'm happy to acknowledge the issue is resolved; in both cases I failed to produce a real bug scenario. Good lesson. Kudos for quick and informative responses!

What's left of my experiment, then? Still a lot to check.

I am mainly still confused with which operations exactly can use LOCK=NONE (allowing for updated to table while ALTERing). So far I am only able to produce ALTERs with LOCK=SHARED, meaning table is readable, but cannot be updated.

I will want to test

  [Read more...]
My Talk Next Week at HighLoad++
+1 Vote Up -0Vote Down

Next week I’ll be visiting Moscow to talk at Highload++. The conference will take place during Monday 22nd and Tuesday 23rd at the Radisson hotel. I will be giving my personal version of an indexing talk that my colleagues have given in meetups and conferences in the US.

Highload++ conference is targeted to address the issues of complex high traffic web properties. Most of these sites depend on databases to deliver their content, record the traffic and report the application activities in real time. As I learned early in my career at MySQL, the database schema and in particular the indexing strategy, are critical to achieve the highest possible performance out of the

  [Read more...]
Experimenting with 5.6 InnoDB Online DDL (bugs included)
+2 Vote Up -1Vote Down

MySQL 5.6 offers the groundbreaking online DDL operations for InnoDB. Most common use cases will enjoy this feature, and the need for online alter table scripts will decrease. This is a killer feature!

I've put this new feature to the usability test. How did it go? Not too well, I'm afraid.

[Updates to this text inline], also see this followup.

sakila & DDL

sakila is still a very useful database. I say "still" because it is not very large, and computing power is getting stronger; yet on my laptop some operations can still take many seconds to

  [Read more...]
Amazon RDS – prime time? Time will tell
+0 Vote Up -0Vote Down
A client of ours is just getting started with Amazon Relational Database Service (RDS) and I wonder as time marches on how popular this cloud solution is going to play out for them and Amazon as a valid/useable service offering. Many times in the past we have encountered off-the-shelf solutions from vendor A based on [...]
MySQL Failover Utility
Employee +4 Vote Up -0Vote Down
I was giving a replication talk at Ohio Linux Fest last week and we touched a little bit on the MySQL Failover Utility and how it works with MySQL 5.6 .

The first thing that this along with Innodb and other replication enhancements are big GPL offerings from Oracle to the community.

First the usage:

[root@mysql-master python]# ./mysqlfailover --help
Usage: mysqlfailover --master=roo@localhost --discover-slaves-login=root --candidates=root@host123:3306,root@host456:3306

mysqlfailover - automatic replication health monitoring and failover


....

  --candidates=CANDIDATES
                        connection information for candidate slave servers for
  [Read more...]
Green Mutexes, part 2
+2 Vote Up -0Vote Down

Bradley Kuszmaul of TokuDB fame pointed out that my benchmark for Green Mutexes used usleep to implement lock hold times of a few microseconds and that usleep(1) would sleep for much more than 1 microsecond. So I changed the test code to use gettimeofday to implement the lock hold time and repeated the tests.

 

There are a few differences with the new results. First, the lock hold time is now accurate when less than 50 microseconds. Second, the thread that holds the lock uses the CPU while waiting to unlock so CPU utilization should

  [Read more...]
Once more about comparison of subquery optimization in MySQL 5.6 and MariaDb 5.5, once more about nothing...
+10 Vote Up -14Vote Down

Has it ever happened to you, when attending a party or any other convention, to enter the hall, see a gang of nice people drinking, smiling, laughing, doing small talks, and you saying “hi” to them and in response getting just and empty stare somewhere above your head? And you then – trying to approach a guy looking quite familiar to you – stretch your hand to shake his hand just to watch him demonstratively turn his back to you? And so there you nervously looking around, and stealthily checking your back (no, no tail), and throwing a glance at your toes (still no hooves), and you passing your palm across your sweating forehead (no hints of horns). And “am I plagued?” comes to your head as you start regretting utterly that your appeared here at all, and you start wishing to be disintegrated, annihilated, completely blown out... You don't have to.  [Read more...]
RMOUG Training Days 2013 & MySQL
Employee +2 Vote Up -0Vote Down

Call for Abstracts Deadline Extended until October 22! 

MySQL Sessions are needed ! Submit an abstract for RMOUG Training Days 2013! They have extended the abstract submission deadline to Monday, October 22.

They are looking for presentations on the following topics:
  • Application Development
  • Business Intelligence
  • Database Administration
  • DBA Deep Dive
  • Database Tools of the Trade
  • Middleware
All primary authors of selected abstracts receive a complimentary conference registration.

Visit   [Read more...]
MySQL Conference & Expo Call for Papers - tips on submitting a great proposal
+2 Vote Up -0Vote Down

It's the time of the year again: You have 2 more weeks to submit a great proposal to the biggest and baddest MySQL Conference: Percona Live MySQL Conference and Expo 2013 (Santa Clara). Like many things in the MySQL community, this conference has also gone through a transformation over the past 3 years. But last year the growing pains and uncertainty ended with Percona putting up a great show. Attendance was up again (over 1000) and there was a sense of energy and excitement for the future of MySQL. If you are like me and like to dwell in nostalgia (so that you can get into the right mood for submitting great proposals) my coverage of last year's conference is found here: part 1,

  [Read more...]
Simple bash shell script for running batch MySQL jobs
+1 Vote Up -0Vote Down

The other day I needed to run a simple mysql job to backup and delete some database records on a live server. Being a live server, it is important to make sure you aren't asking the database to take on jobs that could potentially lock it up. Better to run a batch job. Running a batch is simple. You can call it right from the mysql console with:

source [path_to]/[the_batch_script].sql

But what if there are millions of records that need deleting? Bash shell script to the rescue.

Here is the idea of the SQL job that needed to get run a few times

START TRANSACTION;

/* Find what you want to delete and put a LIMIT on your batch size */
CREATE TEMPORARY TABLE records_to_delete_temp SELECT id from `records` where ..... limit 1000;       

/* Creating backup table to archive spam orders */
CREATE TABLE IF NOT
  [Read more...]
MySQL documentation writer wanted
Employee +8 Vote Up -0Vote Down
As MySQL is thriving and growing, we're looking for an experienced technical writer located in Europe or North America to join the MySQL documentation team.

For this job, we need the best and most dedicated people around. You will be part of a geographically distributed documentation team responsible for the technical documentation of all MySQL products. Team members are expected to work independently, requiring discipline and excellent time-management skills as well as the technical facilities to communicate across the Internet.

Candidates should be prepared to work intensively with our engineers and support personnel. The overall team is highly distributed across different geographies and time zones. Our source format is DocBook XML. We're not just writing documentation, but also handling publication. This means you should be familiar with DocBook, and  [Read more...]
Configuring email in the Cloud
+2 Vote Up -5Vote Down

What a relief! A few simple configuration steps gives me new hope for coping with email.

It unlikely matters to you, but it does to me: My inbox is down to zero. That is, both my two inboxes are empty. I get work email to my @skysql.com address and private email to my @arno.fi, both of which have been suffering from bad email habits.

Inspired by years of discussions with Giuseppe Maxia, who is living proof that proper IT tools make geeks work smarter, faster and better, I bought the book "lifehacker". The first one out of over 100 hacks is labeled "Empty Your Inbox (and Keep It

  [Read more...]
Presenting “MongoDB and Fractal Tree Indexes” at MongoDB Boston 2012
+0 Vote Up -1Vote Down

I’ll be presenting “MongoDB and Fractal Tree Indexes” at MongoDB Boston 2012 on October 24th.  My presentation covers the basics of B-trees and Fractal Tree Indexes, the benchmarks we’ve run so far, and the development road map going forward.

I’ve been to this one day conference twice now and both times came away with a better understanding of MongoDB’s capabilities, use-cases, and many questions answered via their deep technical dives.  I highly recommend current MongoDB users and anyone considering a MongoDB project attend – it appears that seats are still available.

So, how do you sync your database schema?
+8 Vote Up -0Vote Down

It is almost an everyday task for developers to ensure the schema are in sync in their test/development/production databases. No doubt that everyone who works with MySQL servers will encounter situations where schema should be synchronized. When this happens, there must be a reliable solution where it should work in any complex situation.

Challenge:

You have made numerous MySQL schema changes to your databases during development of a new feature. Now you want to sync development and production schemas so that they match when you

  [Read more...]
Green Mutexes
+2 Vote Up -0Vote Down

InnoDB implements a mutex and rw-lock using pthread synchronization objects when compiled for Linux. These add a great feature -- SHOW INNODB STATUS is able to list the objects and locations where threads are blocked. Unfortunately this comes at a price. The InnoDB mutex uses much more CPU than a pthread mutex for workloads with mutex contention. Feature request 52806 is open for this but the feature request description is vague.

 

How much more CPU does it use?

 

I extracted all of the code needed to use an InnoDB mutex into a standalone file. This includes much of the sync array code. I then added benchmark functions that do the following in a loop: lock the mutex, increment a counter, sleep for a configurable amount of time and then

  [Read more...]
How to send input to many terminals
+0 Vote Up -0Vote Down

Do you ever find yourself wanting to open several terminal windows and send the same commands to all of them? I’ve had this need many times, and I’ve never found a completely satisfactory solution. I’ve also known a lot of people who’ve written various sets of scripts to help them accomplish such tasks.

In no particular order, here are a few ways I’ve done this in the past:

  • Facebook’s pmysql client
  • The dsh tool
  • Several screen windows named remoteXXX, followed by a bash for-loop: while read cmd; do screen -X at remote# stuff "$cmd"; done
  • Using many PuTTY windows and the puttycs tool
  • Opening many tabs in KDE’s Kterm tool and selecting the
  •   [Read more...]
    Percona Live: MySQL Conference and Expo Call for Papers Extended!
    +1 Vote Up -3Vote Down

    The call for papers for Percona Live: MySQL Conference and Expo 2013 has been extended through October 31st. The conference will be held in Santa Clara, California from Monday, April 22nd through Thursday April 25th (and this year it’s not during Passover!).
    Why You Should Submit
    Percona Live is a meeting of the minds – not just the April Santa Clara conference, but all the Percona Live conferences. If you get a proposal accepted, you get free admission to the conference!
    There is no cost to submit, and you do not have to tell anyone you submitted. I have submitted to conferences and been rejected – it stinks. But there is no reason not to submit. Submit a few presentations on different topics, because the presentation you have in mind might be submitted by

      [Read more...]
    Percona Live MySQL Conference and Expo 2013, Call for Papers
    +2 Vote Up -0Vote Down

    I'm honored to accept the role of conference chairman in the upcoming Percona Live MySQL Conference and Expo, April 22th-25th, 2013, Santa Clara, CA. Here are a few administrative announcements:

    Call for Papers

    Call for papers is extended until Oct 31st. We've already received a good number of submissions, but wish to provide with another chance for latecomers. Now is a good time to submit!

    The committee will begin the long reviewing process shortly.

    Committee

    Members of the reviewing committee are:

    • Roland Bouman (Pentaho)
    • Ronald Bradford (Continuent)
    • Laine Campbell (PalominoDB)
    • Colin Charles (MontyProgram)
      [Read more...]
    How to avoid two backups running at the same time
    +1 Vote Up -0Vote Down

    When your backup script is running for too long it sometimes causes the second backup script starting at the time when previous backup is still running. This increasing pressure on the database, makes server slower, could start chain of backup processes and in some cases may break backup integrity.

    Simplest solution is to avoid this undesired situation by adding locking to your backup script and prevent script to start second time when it’s already running.

    Here is working sample. You will need to replace “sleep 10″ string with actual backup script call:

    #!/bin/bash
    
    LOCK_NAME="/tmp/my.lock"
    if [[ -e $LOCK_NAME ]] ; then
            echo "re-entry, exiting"
            exit 1
    fi
    
    ### Placing lock file
    touch $LOCK_NAME
    echo -n "Started..."
    
    ### Performing required work
      [Read more...]
    Webinar Thu 10/18: Real-time Replication Between Oracle and Oracle, and Oracle and MySQL
    +0 Vote Up -0Vote Down
    Oracle is the most powerful database system in the world. However, Oracle's expensive and complex replication makes it difficult to build highly available applications or move data in real-time to data warehouses and popular databases like MySQL. In this webinar you will learn how Continuent Tungsten solves problems with Oracle replication at a fraction of the cost of other solutions and with
    Showing entries 1 to 30 of 28095 Next 30 Older Entries

    Planet MySQL © 1995, 2012, Oracle Corporation and/or its affiliates   Legal Policies | Your Privacy Rights | Terms of Use

    Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.