» tagged pages
» logout

sorted by: recent | see : popular
Content Tagged with group + Articles

Why Drizzle? video

Brian Aker gives the “zinger” lightning talk about the newly announced “Drizzle”. This short (under 8 minutes) video captures Aker’s highlights of why he started the Drizzle project and how Drizzle is different from MySQL — both in what has been removed from MySQL and what features Drizzle can accomodate.

Play the video directly in your browser at http://technocation.org/node/576/play or download the 116 Mb file at http://technocation.org/node/576/download.

MySQL: Planet MySQL

Why MySQL 5.1 Is Not GA Yet, and How You Can Help

Yesterday I had a good conversation with Monty Widenius (a MySQL founder) about MySQL 5.1. Specifically, about the fact that MySQL 5.1 is not a GA (generally available) release.

My impression, which was wrong, was that it was difficult getting critical mass to download 5.1 and use it simply because it was not a GA release yet. I thought the paradox of needing to have a certain amount of usage before release was the barrier.

That’s not the case at all.
(more…)

MySQL: Planet MySQL

MySQL User Group in Malta

That’s right. MySQL now has a user group in Paradise.

I am always looking into connecting with other MySQL professionals, to share the laughs and tears, and to enjoy what we love working with every day, MySQL. I have always wanted to bring us all together, and I thought that this would have a good chance of doing so. Since I live in Malta, this made for the perfect location for it. If you live in Malta, or perhaps in Sicily or Tunisia, and want to take a trip, please do join us at our first meeting.

We will be having our first meeting in Mellieha, and please RSVP to me personally via email, westerlund (at) pythian.com if you want to attend. The date is set for Thursday, July 31st at 6pm. We will discuss the current use of MySQL, its future, and whatever else comes into mind. I myself would love to hear usage stories for our first meeting, so we all get an understanding of how MySQL is used in Malta and environs.

I will make sure there are some refreshments to be had.

Let’s keep ourself educated and aware of how other people solve problems that we all sometimes encounter, as well as their interesting technical solutions. And let’s have some fun doing so!

MySQL: Planet MySQL

Reviewing MONyog

I was contacted by the folks at MONyog and asked if I would review MONyog. Since using MONyog is something I have been wanting to do for a while, I jumped at the chance. Of course, “jumped” is relative; Rohit asked me at the MySQL User Conference back in April, and here it is two months later, in June. My apologies to folks for being slow.

This review is an overall review of MONyog as well as specifically reviewing the newest features released in the recent beta (Version 2.5 Beta 2). Feature requests are easily delineated with (feature request). This review is quite long, feel free to bookmark it and read it at your leisure. If you have comments please add them, even if it takes a while for you to read this entire article.

While the webyog website gives some information about what MONyog can do, it is a bit vague about what MONyog is, although there is a link to a PDF whitepaper on What is MONyog? which does answer much of these questions.

The screenshots available from the website are accurate, so I will not reproduce them here. I will note that I have not shared this feedback with the webyog team yet, so I may be upset that a feature is lacking, and the feature may be implemented but I missed it. I will post a follow-up in that case, even though they will likely comment here too.

My reference points — I have used other monitoring and graphing tools such as Nagios, Cacti, and Intermapper as well as MySQL’s Enterprise Monitor.

Overall

As an overall review — MONyog is the best out-of-the-box GUI monitoring tool for MySQL that I have seen. It “just works.” As promised, getting up and running quickly is easy, and having a centralized location for monitoring is very useful. The graphs are beautiful and the statistics that are graphed are useful time-savers.
(more…)

MySQL: Planet MySQL

BoF Tonight At Usenix Boston: Pros and Cons of Managed Services

From 7:30 - 8:30 pm tonight, Wed. June 25th, in the Berkeley room of the Sheraton Boston, I will be hosting a Birds of a Feather conversation entitled “Pros and Cons of Managed Services”. This will go beyond MySQL and even beyond remote database management, and just deal with the overall pros and cons.

Come, share your good and bad experiences, and discuss why managed services may or may not be appropriate for your situation. I will try to take notes at the BoF.

(Note: I have no idea if they check badges for Birds of a Feather sessions or not)

MySQL: Planet MySQL

The Guru is In: Usenix 2008, Boston

If you are attending Usenix 2008 at the Sheraton Hotel in downtown Boston, you can meet me and ask your burning MySQL questions at my “The Guru is In” session. On Friday, June 27th, 2008 from 2 - 3:30 pm in Constitution B, I will be helping folks out by optimizing queries and schemas, teaching general principles of working with MySQL databases, and answering (to the best of my ability) any other question they may throw at me.

The event details are at:
http://www.usenix.org/events/usenix08/tech/#fri

Hope to see you there!

MySQL: Planet MySQL

Twitter Should Get Back to Basics

Twitter has had many outages recently. On May 17th, 2008 http://blog.twitter.com/2007/05/devils-in-details.html was posted and says:

What went wrong? We checked in code to provide more accurate pagination, to better distribute and optimize our messaging system?basically we just kept tweaking when we should have called it a day. Details are great but getting too caught up in them is a mistake. I’ve been CEO of Twitter for two months now and this an awesome lesson learned. We’re seeing the bigger picture and Twitter is back. Please contact us if something isn’t working right (with Twitter that is).

(in other news, that post was made on May 17th and does not show up on http://blog.twitter.com, which it should, between the May 16th and May 19th posts. I found a reference in other posts and had to search the site to find that post).

A real “awesome lesson learned” is “do not tweak production without testing first.” In every job I have had I have first learned and then taught the concept of “test everything possible.” Which Twitter has not learned yet, because http://blog.twitter.com/2008/05/not-true.html, posted on Tuesday May 20th, states:

We caused a database to fail during a routine update early this afternoon.

As someone who has years of experience working with MySQL, and before that was a systems adminsitrator; as someone who was referred to as “the MySQL Queen” yesterday (by someone who wanted me to test their product, so yes, they were flattering me); I can assure you:

no matter how “routine” a change is, if you do it on production without testing it first, you are playing with fire, and 95% of the fires caused by not testing first are completely preventable.

I will repeat this, because repetition is important to learning concepts.

no matter how “routine” a change is, if you do it on production without testing it first, you are playing with fire, and 95% of the fires caused by not testing first are completely preventable.

With a proper testing environment, 19 out of 20 “whoops, didn’t expect THAT from a routine change!” issues are caught. And I can tell you that often “routine changes” cause unexpected results.

Now, I was online during an outage, and http://twitter.com/home was showing their “site isn’t working” page for at least 3 hours between 2 and 5 am EDT yesterday (Tuesday, May 20th, 2008).

So…..there is no read-only copy around that Twitter could use? Maybe I cannot tweet, but I should at least be able to read what was done before!

Of course, since last week Twitter has done the opposite — often I can see the most recent 20 or so posts, but not anything prior. Now, I understand that it is hard to get all the histories for the people I follow. But it only needs to be done once, and could then be cached — “Posts from who Sheeri follows on 5/20″. It would not be difficult, and I would be OK with the functionality changing such that “once you follow a new person, their tweets prior to when you followed them do not show up in the history.”

Alternatively, you could go the snarky way and say: http://www.techcrunch.com/2008/05/20/twitter-something-is-technically-wrong/ states:
What would be great is if Twitter just moved their blog to another platform so that it doesn?t fail when users need it most.

I am not a huge user of rails. But I will say that given the content of the public announcements, the platform is not the problem. It is the code release process that is the problem. Maybe there’s “agile development” happening, paired programming and code reviews. But there is not adequate testing.

Twitter — if you truly need scaling help, please ask for help — I know Pythian would be happy to help. However, if it really is as it seems — that basic good practice is not being followed — I would like to remind you that backups are really important too, just on the off chance that backups are not happening.

MySQL: Planet MySQL

MySQL Website a Reflection of Values

I understand that MySQL as a company wants to recruit paying customers. However, as a community user I have a hard time finding what I want on the MySQL website. Today’s frustration is brought to you by trying to find the documentation.

Go ahead, hit http://www.mysql.com. From there, where do you go to find the documentation?

It’s not Services, not even Services -> Support.

According to Products, the community server is not even a product. How is a potential new user, who wants to learn about MySQL, supposed to know a community version exists? Here are the products listed on the Products page:

MySQL Enterprise
MySQL Enterprise Monitor
MySQL Cluster
MySQL Embedded Database
MySQL Database Drivers
MySQL Database Tools

Where’s “MySQL Database” on that list? A website user basically has to know what they’re looking for, since that page does not help find “the mysql database”. You can guess it’s the “MySQL Enterprise” — but you’d be wrong. Imagine if you’re a person unfamiliar with MySQL who has been told “go to the MySQL website and get the free version of the database, it’s great!”

OK, OK, I know, you’re saying “click on Downloads”. Which takes me to the “choose which version you want to download.” OK, nice for newbies, but really annoying for the experienced. Why aren’t the links to download at the top, with the explanations just underneath? A newbie would be presented with the links, think “I don’t know which to choose!” but then see that the descriptions are just underneath. An experienced user can just click and go.

This of course is made even more silly when you realize that the community download link simply scrolls down. Yes, that’s right, the community downloads immediately follow that chart of explanations. Which means that in the current state, when the link is at the bottom of the chart, the link points you to the next line. If the link is at the top of the page, at least there’s a reason for it — to scroll down past the explanations.

Now recall that the exercise was to find documentation. There is no way to download the documentation here.

I am a non-paying user, not a developer. Going to the “Developer Zone” is not intuitive for me. However, that is exactly where I need to be:

* DevZone
* Downloads
* Documentation
* Articles
* Forums
* Bugs
* Forge
* Blogs

Given that list of topics, why on earth is this section called the “Developer Zone”? (it’s a rhetorical question!) Sure, if I’m a software developer I might think it’s useful to me. On any other website “developer zone” is relegated to advanced users, or folks using some different part of the product than what most people use (think Apple’s Developer Connection).

Take a look at that list. On any other website, it would be under “Support” or “Help” or “Learn”.

No wonder folks have no idea that the forums exist, much less the Forge or Planet MySQL. If I was a new user to MySQL and I wanted to find the documentation, I’d be very unhappy.

Heck, I’m very unhappy anyway — what kind of company has a huge community of people supporting each other and contributing back to the company, and does not give people an easy way to find the community?

MySQL: Planet MySQL

The Architecture Layer

Contemporary software engineering models include many loosely-defined layers. Database developers might help with other layers, but for the most part a database administrator’s domain is the persistence layer.


  • Presentation

  • Application

  • Business Logic

  • Persistence (also called Storage)

The Daily WTF has an article on The Mythical Business Layer makes the case for not separating the business layer and the application layer:

A good system (as in, one that’s maintainable by other people) has no choice but to duplicate, triplicate, or even-more-licate business logic. If Account_Number is a seven-digit required field, it should be declared as CHAR(7) NOT NULL in the database and have some client-side code to validate it was entered as seven digits. If the system allows data entry in other places by other means, that means more duplication of the Account_Number logic is required.

It almost goes without saying that business logic changes frequently and in unpredictable ways. The solution to this problem is not a cleverly coded business layer. Unfortunately, it?s much more boring than that. Accommodating change can only be accomplished through careful analysis and thorough testing.

I will call this merged business/application layer the “functional layer.”

The serious scaling requirements posed by most applications these days call for partitioning, clustering, sharding or some other term for “dividing up the data so it does not become the bottleneck”. Enter the “architecture layer”.

“Wait a minute,” I hear you asking. “Isn’t that just the persistence layer?”

Yes and no. To me, there’s a difference between the storage and the architecture of said storage. The database schema for storing a user profile is a persistence layer issue. Figuring out which database instance to go to is an architecture layer issue.

This is an important distinction for me. Many folks are coding the architecture layer directly into the functional layer. A “save_profile()” API function might call an ORM to deal with the persistence, or it will have MySQL (or other database) connection handling and queries. However, the database will grow, and at some point you will find yourself wanting to split the data [more].

This type of information, like the presentation layer, needs to be separate. Why should the application care whether save_profile(’Sheeri’,'hair color’,'blonde’) accesses database1 or database2? More importantly, why should there be major code changes to the functional layer if the architecture changes? Just like no functionality has changed when you change your website color from blue to red, there is no functionality change when you go from splitting data between 2 database servers to splitting among 3, or 10.

For me, the persistence layer is about how the data is stored. Which, explicitly and for the record, I also believe should be separate from the functional layer — if you store hair color and eye color in one table or 2, the functionality of the application has not changed; all that’s needed is a change in how that data is stored and retrieved.

The architecture layer is all about where the data is stored. Early forms of the architecture layer are configuration files, though most would not call that a “layer”. Database administrators should be able to change the architecture of the database system without requiring mucking about in the application’s functional code.

Thoughts?

MySQL: Planet MySQL

The Ingres Vultures Descend

In a despicable business practice, I received a message from a PR Firm representing Ingres. Now, I even wrote about the controversy that seems to have swept the open source community; but even my writings were not completely factually correct — I wrote that even if online backups were closed it was not necessarily the worst thing in the world. The actual parts of the online backup that are not open source and free are compression and encryption — that is all.

So really, we are talking about a very small part of backup. The last I saw most people used their own compressing (ie, | gzip -c) and encryption for backups. And honestly, I would rather use tried and true compression and encryption than something new that MySQL comes up with, so I do not even see most people wanting compression nor encryption.

But that’s besides the point. If Ingres thinks they can win customers over by swooping in when a controversy is happening, they are way more evil than I would ever have guessed. It’s not good business practice to do this kind of thing — it is cold, calculated, uncalled for, and just plain wrong.

As for my comments — firstly, MySQL did not make any particular “announcement”, and secondly, MySQL is already losing “feedback and contributions on its products from a large group of users in the community” because it does not have an easy way to get community patches committed to the source tree.

There is so much else that bothered me about the e-mail I received, so I will just copy it here for full context for readers:

Subject:  Ingres' Thoughts on Today's MySQL Announcement and What it Means for the Open Source Community

From:  Lindsey Pappas

Date:  Apr 15, 2008 5:33 PM

Hi Sheeri,

 Did you see MySQL ’s announcement on new features in MySQL Enterprise version of its product? This is interesting news for the open source community, as it appears that MySQL is moving away from true open source towards a proprietary model by not providing the same features in its community version. Ingres is a a leading provider of open source database management software and support services and views the news as the loss of a true competitor in the open source space.  By doing this, MySQL will lose feedback and contributions on its products from a large group of users in the community. Costs will go up and quality will go down.

 Ingres is a believer in the true open source of its products.  I can put you in touch with an executive at Ingres to hear thoughts on the news and what MySQL’s announcement means for the future of the open source community, including comment on:

·         The benefits of open source solutions that are identical between community and enterprise, functionality should not differ between products, cost or version.

·         The importance of an online backup component for mission critical applications.

·         In a community where everyone benefits from the valuable contributions and feedback on new developments and innovations from other players, MySQL?s move away from open source is a loss for the open source community.

Please let me know if you?d like to connect in the next day or so to discuss MySQL?s announcement and where the open source community is headed.

Thanks,

Lindsey

Lindsey Pappas
Atomic Public Relations
8 California Street
San Francisco, CA 94111
(415) 402-0230
lindsey@atomicpr.com

MySQL: Planet MySQL

Liveblogging: Who is the Dick on My Site?

Identity 2.0: A world that’s simple, safe and secure.

Who is the Dick on My Site? by Dick Hardt (Sxip Identity Corporation)

Quotes:
“Really, data is about people. It’s really identity data.”

“Identity helps you predict behavior.”

“Identity is who you are.”

“Identity is also what you like.”

“Identity enables you to uniquely identify somebody.”

“There are things that other people say about you, too.”

“Modern identity is about photo IDs so you can prove your identity.”

“Identity is a complicated issue….Everyone has a different idea of what it is.”

Identity transactions are:

  • party identification (who)
  • authorization (permission)
  • profile exchange (info about that person)
  • NOT record matching

Identity transactions can be: (more…)

MySQL: Planet MySQL

Unintentional Googlewhack Leads to MySQL Bug Report

While doing a standard audit for a new client, I recommended a few changes to get better performance. Because I had several changes, I used the documentation at

http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html

and found that innodb_flush_log_at_trx_commit is a dynamic variable. I was surprised, because most operations dealing with file sizes and operations are not dynamic. But the client proceeded with:

set global innodb_flush_log_at_trx_commit = 2;

and got:

ERROR 1193 (HY000): Unknown system variable 'innodb_flush_log_at_trx_commit'

So I searched for others who may have had the same error, and ended up getting an unintentional googlewhack. Well, it’s not a real Googlewhack, because it has more than 2 words and I used quotes to surround it — but I was pretty surprised that there were not a lot more people like me who trusted the manual. Granted, it’s “intuitive” that the variable is one that would need a restart….but because I was looking up others, I just looked up all of them, and thus fell into the trap.

The search I did was “Unknown system variable innodb_flush_log_at_trx_commit”

And the bug I filed is http://bugs.mysql.com/bug.php?id=35575.

MySQL: Planet MySQL

Neighborhoods and Communities

Recently I acquired Sesame Street Volume 1, and on the third DVD in the set I came across one of my favorite Sesame Street songs: “Who are the people in your neighborhood?”

Here’s a sample of one such skit, if you are not familiar with it, or if you want a bit of nostalgia http://youtube.com/watch?v=B9lpUjQvToY (note, play will likely start automatically, so tune your volume appropriately before clicking).

The refrain is “Who are the people in your neighborhood? The people that you meet each day!” I live in a city of 34,000 people just 6 miles northwest of Boston, MA. I know exactly one neighbor, across the street, whom we met because I sent my husband over to get her live band to stop playing loud music at her party at 2 am. I do not know many of the local business owners. I do not know who lives in my neighborhood, yet people live around me. Saying I live in a “neighborhood” might be true, but I have no ties or links to it.

Calling a group of people with common interests “community” is just as meaningless as saying I live in a “neighborhood”. There has to be a bond there. I am proud to be a part of the MySQL Community, which actually has forged bonds. Much like Sesame Street, with dentists and bus drivers, our community has many different types of people in it.

In fact, I know that there are many who “only” read and perhaps comment. Remember that every single child (and adult!) that watches Sesame Street is a valuable part of the community — after all, a bus driver is useless without people to drive around. Similarly, folks who develop tools would be doing useless work if there was not such a need for these tools.

The MySQL Community is very real to me. If I were to “move away” from this community, I would experience a loss. There are so many folks whom I will be glad to see and spend time with at the upcoming MySQL Users Conference, and if they are not there, I will definitely miss them.

I blog about MySQL because I enjoy helping others. More importantly, I’ve enjoyed helping out the MySQL community a lot. I have been a part of other “communities” that did not have very much momentum and I was the only or one of the only contributors. I have also been a part of communities in which I’m mostly a lurker, or a learner, and while I gain a lot from it, I much rather prefer a more balanced give-and-take (that’s just my personality).

Speaking of personality, I’m human, as is everyone whose blog feeds to Planet MySQL (organizations excluded). This means that when folks e-mail me or find me in person and say “I love your podcast!” and “Your blogging really helped me.” and “Thank you for all you do,” I feel really good about myself.

If you are new to the MySQL community, feel free to come up and talk to me (or anyone, really) — during the conference, or otherwise. Even if you feel you have nothing to say, just say hello.

And I must end with a disclaimer: I won last year’s “Community Advocate” award from MySQL, so I guess all in all, I’m still a community advocate. Long live the dolphin!

MySQL: Planet MySQL

MySQL Conference Sessions

At this year’s MySQL Conference & Expo, taking place in Santa Clara, California in mid-April, I’m giving two sessions:

  • Best Practices for Database Administrators
  • Database Security Using White-Hat Google Hacking

You can see more info about me here, including descriptions of the workshops.

I look forward to seeing many of you there. Make sure you say hello!

MySQL: Planet MySQL

Calling all MySQL Professionals who use LinkedIn

I have created a MySQL Professionals Group for networking with others in the space, in the tradition of the Oracle Professionals group and the SQL Server Professionals groups that I already participate in.

This is a great way to network with other professionals in your field of work. I hope you join us.

To join, please follow this invitation link.

Paul

MySQL: Planet MySQL

Why is Database Security So Hard?

I was recently asked a question by someone who had attended my Shmoocon talk entitled “Why are Databases So Hard to Secure?”. PDF slides are available (1.34 Mb). I was going to put this into a more formal structure, but the conversational nature works really well. I would love to see comments [...]

MySQL: Planet MySQL

Working at Pythian: 3 Months In

Well, in the “notes from the front line” part of this post…. I have been a MySQL DBA at The Pythian Group for three months (and 2 days) now. At most companies that is the probationary period, and I am still here, so that is a good sign….. So, after three months, how do I like [...]

MySQL: Planet MySQL

MySQL March Boston User Group + MySQL/Sun Mashup World Tour

In summary: Who: you, me, MySQL/Sun What: MySQL User Group with free swag, food, and a short workshop to boot. When: 7-9 pm, Monday March 10th Where: MIT Building E-51, room 372 Why: why the heck not! Because Sun just bought MySQL, and because there’s a user group each month. How: RSVP optional but requested [...]

MySQL: Planet MySQL

Why Postgres is Superior to MySQL

http://pgfoundry.org/projects/pllolcode/ Do I really need to say more?

MySQL: Planet MySQL

Source Controlling the Database Schema

In a linkage of biblical proportions, Log Buffer #83 pointed me to Tom Kyte’s reiteration which pointed me to Coding Horror’s rant about source controlling the database schema. Now, for starters, I agree with Tom’s sarcasm and Coding Horror’s rant — the database schema really should be source controlled in the same place as the application [...]

MySQL: Planet MySQL

I?m not worried at all. I think it?s great that Sun just bought MySQL for $1bb

The only criticism of the deal I could possibly give is that MySQL is still on the early phase of an exponential adoption curve and I think they’ve got lots of growth yet to come. But really, a billion dollars has a lot if not most of that growth factored into the price already. Think of what [...]

MySQL: Planet MySQL

Sheeri?s First Week at Pythian

The Pythian family got a new song last Monday — “Sheeri” means “my song” in Hebrew. This post on my own blog explains how I got the job. High winds delayed my flight last Monday, and we’ve had two snow storms since I arrived. Luckily, my real-life context switch has not been too difficult. [...]

MySQL: Planet MySQL

Pythian?s Paul Vallée on the OurSQL Podcast: the MySQL DBA

Now for some logrolling at its finest. I thought I’d try to help Sheeri, the MySQL She-BA, spread the word about the 21st episode of her OurSQL podcast as it is the second of a two-part interview with Pythian pres. Paul Vallée. The topic is, “The Rise of the MySQL DBA.” [...]

MySQL: Planet MySQL

Why Pedro Timóteo is Not a Sysadmin Any More

Or, what exactly is behind Pythian’s growth and market success? This is more of an essay than a blog post, but this subject comes up time and again, and since I tripped across this interesting blog post by Pedro Timóteo about why he has decided not to be a sysadmin any more, I thought now’s as [...]

MySQL: Planet MySQL

MySQL Conference 2007 2.1

Starting out bright and early again. I have a feeling Martin and Yannick might gang up on me for waking them up so early every morning and making sure we are on our way at 7am sharp, but it’s worth it. We did make it here for the keynotes. The first session was Freedom [...]

MySQL: Planet MySQL

MySQL Conference 2007 3.1

Another early start. But how could I miss Rasmus talking about PHP. The slides are there if you are interested. The history of PHP is fascinating, and it is interesting to see how it evolved. Rasmus also showed us how the MySQL conference site (run by O’Reilly) and the IBM site [...]

MySQL: Planet MySQL

Learn about Pythian: Tuesday 4/24 @ 4:40pm in Ballroom G

A quick note for those of you enjoying the MySQL Conference & Expo 2007 in Santa Clara this week. As part of Pythian’s Gold sponsorship of the conference, we’re trying something new. We understand that the tradeshow floor for booth sponsors is a bit out of the way, and in any case, there were no [...]

MySQL: Planet MySQL

MySQL Conference 2007 Day 0.1

It was a nice enough flight from Ottawa to Chicago to San Jose, if a little long. Security (or the baggage handlers) completely trashed our boxes of information folders, but I think we managed to salvage some… so if you’re looking for information on Pythian, come see us early. The weather here is just like [...]

MySQL: Planet MySQL

Pythian at the MySQL Conference 2007

I will be out of the office all next week, so expect more blog posts from me! That’s not a joke — both Yannick Gratton and I will be at the MySQL Conference in Santa Clara, taking in all the material we can, processing it, and spewing out what I hope will be [...]

MySQL: Planet MySQL

MySQL inks $1M deal - anyone know more details?

Big insider news on James Governor’s blog. If you don’t know who James Governor and Redmonk are, you should. They are giving the bigwigs (Gartner, IDC, Forrester et alia) a run for their money in technology analysis. Anyway, the news is this, and the details are very sketchy: MySQL has signed a million euro deal The client is [...]

MySQL: Planet MySQL