Showing entries 39271 to 39280 of 44864
« 10 Newer Entries | 10 Older Entries »
TechCrunch, Others Love Linux, MySQL
Introducing MySQL Table Checksum

MySQL Table Checksum is a tool to efficiently verify the contents of any MySQL table in any storage engine. You can use it to compare tables across many servers at once. The output is friendly and easy to use, both by eyeball and in UNIX command-line scripts. The provided MySQL Checksum Filter helps you winnow output so you only see tables that have problems. MySQL Table Checksum Following up on my earlier article about how to calculate a table checksum in MySQL, I’ve integrated that methodology, with improvements suggested by the commenters and others, into a single easy-to-use tool.

Launching the Quality Contribution Program
After a long period of preparation, my pet project is out! The Quality Contribution Program is here!
MySQL wants to reward its most active users who are contributing to the improvement of its products.
This is not a lottery, where you submit some contributions, and if you are chosen you get the prize. In this program, you start contributing, and when you reach a given level, you (and everybody else in the same position) will get a free subscription to MySQL Enterprise. The project rules say how much you should contribute to get a Basic, Silver, Gold, or even Platinum subscription.
What is the difference between MySQL and Postgres?

Klick on the image for the story. :)

Database fun with Amarok

I'm a GNOME user, but on my brother's suggestion I tried Amarok a month or so ago, and never looked back. I've used most of the popular music players for linux as well as iTunes & WMP, and I'd actually call Amarok the best on any platform. It's not even close.

One really nice feature is the database integration. I think every application should have this option, and not just because I work for a database company. Amarok can keep all its information in a MySQL database, and that includes the song lyrics it pulls down from the web.

read more

Pitfalls of converting to InnoDB

We often recommend to our clients to convert their current database from MyISAM tables to InnoDB.
The transfer by itself in most cases is almost plain, however the application can be broken by new unexpected errors
1205 (ER_LOCK_WAIT_TIMEOUT)

Lock wait timeout expired. Transaction was rolled back.

1213 (ER_LOCK_DEADLOCK)

Transaction deadlock. You should rerun the transaction.

It is not hard to handle these errors, but you should be aware of.
This is some thing we do in our PHP applications:

PLAIN TEXT CODE:

  1. class mysqlx extends mysqli {
  2.  
  3. ...
  4.  
  5.   function deadlock_query($query) {
  6.           $MAX_ATTEMPS = 100;
  7.           $current = 0;
  8.           while ($current++ <$MAX_ATTEMPS) …
[Read more]
NDB/Connectors for MySQL Cluster on Launchpad

I've been given the go ahead to release my NDB/Connectors code. These connectors wrap the NdbApi for a variety of languages, including Python, Perl, Java and C# at the moment. I'm managing development using Launchpad, so go to

https://launchpad.net/ndb-connectors

To get the latest version or status of the code. If you would like to contribute, feel free to branch a copy of the source using bzr and send me a revision bundle. There is also an ndb-connectors team on launchpad you can join if you'd like to participate more directly in the development. For either of these options to work, you need to first sign the MySQL Code Contributor License Agreement to assign copyright of your contributions to MySQL, Inc.

I hope to have a mailing list set up soon for discussion.

Returned

I came back from a two-week snowboarding trip to Zermatt -- my first to Switzerland, and what an excellent trip that was. Great powder, great freeriding, great weather. Will post some photos once I've sorted through them, but in the meantime, Sanna took some as well and posted them to her moblog.

On another note, I haven't mentioned Jim Starkey's comments to my previous post, but they're good reading to everyone interested in MySQL, with clarifications to some things I misunderstood in the documentation. I'm glad to hear that the "serial writes" don't in fact mean just one thread writing, as well as that he believes the engine will at a later stage allow multiple tablespaces per logical database.

The MySQL (Sakila) Credit Card

I was poking around at credit cards this morning and came across this one that seemed like it would be a good fit for folks who would like to have Sakila (the MySQL dolphin) in their wallet wherever they go.

The colors aren't quite right, and the dolphin isn't moving upward like most of the MySQL logos, but you get the idea.

(I did not get a card, decided against it)

Trees in SQL

The problem of how to handle trees in SQL has been talked about alot. The basic 3 ways are:

  • store the full path for each entry
  • store the parent for each node
  • use nested tree

Nested tree is good for read-many-write-less applications where the tree doesn't check over time too much as a write-operation is heavy-weight most of the time.

Referencing the Parent through the full path

Using the variant of the path involves a lot of string handling and is always slow. See below:

# use a full path to each node
CREATE TABLE tree_path (
  node_path VARCHAR(1024) PRIMARY KEY,
  name VARCHAR(32) NOT NULL,
  INDEX (name)
) ENGINE = innodb;

INSERT INTO tree_path VALUES
  ( '/0',     'Earth' ),
  ( '/0/0',   'Europe' ),
  ( '/0/0/1', 'Germany' ),
  ( '/1',     'Moon' ),
  ( '/0/1',   'Asia' );

# search for parent of 'Asia'
SELECT t1.name
  FROM tree_path AS t1
 WHERE t1.node_path = ( …
[Read more]
Showing entries 39271 to 39280 of 44864
« 10 Newer Entries | 10 Older Entries »