Planet MySQL Planet MySQL: Meta Deutsch Español Français Italiano 日本語 Русский Português 中文
Showing entries 1 to 10 of 12 2 Older Entries

Displaying posts with tag: Tips and Tricks (reset)

Fun with MySQL Cluster Memcached #1 - "ERROR: You can't mix -e with the old options"
+1 Vote Up -0Vote Down

When using the bundled memcached that comes with MySQL Cluster and trying to set one of the 'classic' options along with passing the cluster connect string with -e you may end up getting the following message:

  ERROR: You can't mix -e with the old options

read more

Configuring email in the Cloud
+2 Vote Up -6Vote 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 "

  [Read more...]
Nasty InnoDB regression in MySQL 5.5.25
+3 Vote Up -0Vote Down

We just ran into a nasty InnoDB bug that only seems to exist in MySQL 5.5.25:

An InnoDB update that modifies a rows primary key can trigger some recursive behavior that creates new rows until all disk space is exceeded. This does not affect all primary key updates in general but only gets triggered when a few other conditions are also met, so you're not too likely to run into it, but if you do your mysqld server will waste a lot of IO bandwidth and storage space on this and will usually eventually run out of disk space.

read more

Adding a case insensitive, distinct unicode collation
+6 Vote Up -1Vote Down

Every once in a while questions like the one in MySQL Bug #60843 or Bug #19567 come up:

What collation should i use if i want case insensitive behavior but also want all accented letter to be treated as distinct to their base letters?

or shorter, as the reporter of bug #60843 put it:

I need something like utf8_bin + ci

utf8_general_ci and utf8_unicode_ci unfortunately do not provide this behavior and utf8_bin is obviously not case insensitive.

…  [Read more...]
Using the MySQL stack trace to isolate bugs
+2 Vote Up -0Vote Down

I came across an interesting error reported on #mysql the other day. When I went through it with the reporter it looks like we uncovered up to two bugs in InnoDB (or rather XtraDB as it was Percona Server). I thought it might be useful to go through the error message, including the stack trace, to show that you don't need to be a developer to track down some useful information.

read more

SkySQL Presents a New Community Resource
+1 Vote Up -2Vote Down

SkySQL has always been committed to the MySQL® community and today we've unveiled a new resource page for the community. This is designed for the community to get a single point of information, assistance, and inspiration. While we are starting quite modestly it is up to you, the community, to make this the best resource for MySQL and related technologies.

read more

Consistent transactions between storage engines
+1 Vote Up -0Vote Down

You may not realize it, but in MariaDB 5.2 and earlier and in MySQL up to version 5.5, START TRANSACTION WITH CONSISTENT SNAPSHOT does not give any guarantees of consistency between different storage engines.

For example, suppose you have two transactions which run in parallel:

Transaction T1:

BEGIN;
    SET @t = NOW();
    UPDATE xtradb_table SET a= @t WHERE id = 5;
    UPDATE pbxt_table SET b= @t WHERE id = 5;
    COMMIT;

Transaction T2:

SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
    START TRANSACTION WITH CONSISTENT SNAPSHOT;
    SELECT t1.a, t2.b
      FROM xtradb_table t1 …
  [Read more...]
How to produce a full stack trace for mysqld
+0 Vote Up -0Vote Down

The information here was adapted from the AskMonty Knowledgebase.

There are two main parts to MariaDB and MySQL: The mysqld server and whatever client you use to interact with the server. The server is absolutely essential and must remain up and running. mysqld is normally very reliable, but there are rare occasions when it will fail. When mysqld fails hard (or core dump) it will, by default, write a stack trace in the 'hostname'.err file in the database directory. However, in some cases this is not enough to find out …

  [Read more...]
The Importance of Planning
+0 Vote Up -0Vote Down

Whenever I start a new project with MySQL or MariaDB I am tempted to jump in and start creating my schema and tables with nothing more than a basic outline of the requirements. Often the justification I give myself is that the sooner I have something up and running, the better off I'll be, and besides, there will be plenty of time to sort things out later. Even when I am absolutely sure my ad-hoc schema is only for "development purposes" and will "never ever be used in production" it often is.

 

A lot of grief can be avoided if time is taken right at the start, before any tables are defined, to plan. This is big picture time and every …

  [Read more...]
Running MySQL or MariaDB from the source directory
+0 Vote Up -0Vote Down

One issue that developers often run into is needing or wanting to run a development version of MariaDB or MySQL on their desktop when there is already a production version installed. You may want to try out a new feature, or experiment with a patch, or maybe you're developing a new storage engine, or just having fun hacking on the code. Whatever the reason, when this happens to me I often want to be able to run the non-standard version without replacing my currently installed version.

Fortunately, the process for doing so is easy. The instructions below are adapted from the …

  [Read more...]
Showing entries 1 to 10 of 12 2 Older Entries

Planet MySQL © 1995, 2014, 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.