Showing entries 28706 to 28715 of 44077
« 10 Newer Entries | 10 Older Entries »
Los Angeles MySQL meetup with Facebook DBA, Chris Schneider


South Californians, mark your calendars! On February 24th at 7,30pm the Los Angeles Meetup Group will host Chris Schneider, Facebook DBA, who will talk about "Scaling MySQL".

Now, if I talk about scaling MySQL, I will refer to personal experience in my consulting career, when 10 million people connected all at once to my customer's web site. You may be interested in the story or simply yawn. But when a Facebook DBA talks to you about scaling, 10 million connection is low traffic, and scaling takes a completely different meaning.

In this meetup, Chris will talk about different methodologies used at Facebook to deal with their scaling issues. If you are near Los Angeles on February 24th, you don't want to miss this …

[Read more]
Installing Apache / PHP / MySQL / phpMyAdmin / Eclipse Zend PDT / Zend Framework: on XP Gaming machine

Since I’m creating a new install of a development environment on an XP gaming machine, I thought I’d just document the process for posterity. Make sure you are running at least Service Pack 2. Here is the version I’m installing: … Continue reading →

Facebook DBA, Chris Schneider to speak at Los Angeles MySQL Meetup Tuesday February 24

We have an exciting meetup coming up on February 24th, 2009. Not too many companies need to deal with the scaling issues that Facebook does. Chris will be speaking about Scaling Mysql. Don’t miss it!

OurDelta MySQL builds for Debian 5.0 (Lenny)

Peter has done the prep work for building on Lenny, see our Debian page for info on how to configure apt for easy updating (Lenny comes with 5.0.51).

Swapping Column Values in MySQL

Today I had to swap 2 columns in one of my MySQL tables. The task, which seems easily accomplishable by a temp variable, proved to be a bit harder to complete. But only just a bit.

Here are my findings:

  1. The

    UPDATE swap_test SET x=y, y=x;

    approach doesn't work, as it'll just set both values to y.

    PostgreSQL seems to handle this query differently, as it apparently uses the old values throughout the whole query. [Reference]
  2. Here's a method that uses a temporary variable. Thanks to Antony from the comments for the "IS NOT NULL" tweak. Without it, the query works unpredictably. See the table schema at the end of the post. This method doesn't swap the values if one of them is NULL. Use method #3 that doesn't have this limitation. …

[Read more]
Open Source Events in the DFW Area

February 2009 has been a very busy time for presentations on Open Source Software in the Dallas/Fort Worth Area. Yahoo's Tommy Falgout presented at the recent DallasPHP.Org meeting on Scaling MySQL. You can find his presentation at http://www.dallasphp.org and I highly recommend their meetings as an excellent.

Next up is the Dallas OpenSolaris/Dallas Sun Users Group(DSUG)and they are offering the ultimate geek-bait! Free Pizza!

Meetings Held the Third Thursday of Every Month
Next Session: Thurs Feb 19th (6:30PM Pizza, 7:00PM Program)
Topic: Open Source Roundtable - share your Open Source experiences with the group
Speaker: Jim McGuinness will kick off the discussion with updates on MySQL, Glassfish and Openoffice
Location: Dallas Sun Office, Mansion Conference Room
16000 North Dallas Parkway, Suite 700

Register here: …
[Read more]
MySQL Proxy: Lua classes

On the mailing lists we get the question from time to time:

How can I access internal information inside a proxy script ?

MC documented them in the manual, perhaps it is easier to get an idea if you see a picture instead.

The file is generated from a .dot file which will soon end up in the lauchpad trees. The above graph is a bit ahead of time as it references my routing tree which changes the way the "address" fields are exposed.

MySQL Memory allocation & TMPDIR

A quick one here, we often talk about effectively utilizing memory to get the most of your MySQL Server.  I wanted to remind folks to not forget about allocating memory to a tmpfs for the tmpdir.  Certainly this is not going to help everyone, but those who create lots of temporary table will find the performance boost most welcome. In fact in some cases you maybe better off allocating a little extra memory to a tmpfs then you would be the innodb buffer pool, but like everything it depends on your workload and environment.

What is tmpfs?  In a nutshell a filesystem ontop of a ramdisk  used for temporay file access.  Read the wiki page for more.   Sounds like a great thing for /tmp right? By the way It really urks me that most people leave /tmp as part of the root filesystem ….  shameful, read my common mistakes post for more complaining …

[Read more]
When are you required to have a commercial MySQL license?

As you may know, MySQL has a dual-licensing model. You can get the source under the GPL version 2, or you can buy a commercial license.

I’ve recently been hearing a lot of confusion about when you have to buy a commercial license. People I’ve spoken to wrongly believe that they’re required to purchase a license if they’re going to use MySQL in anything but a not-for-profit business, for example. I don’t know how these notions get started, but they do.

So when are you required to buy a commercial license? It’s very simple: when you want to do something with MySQL that the GPL doesn’t permit.

I am not a lawyer, and you should do your own legal research, but misinterpretation of the GPL is rampant and I think I should try to counteract the misinformation about it if I can. Note that in this article I will …

[Read more]
Yet more on Stored Procedure performance

In Karlsson's blog post, More on Stored Procedure performance, he has written a simple C program to send queries repeatedly to the MySQL server in order to do performance measurement. Unfortunately, his sample client will end up factoring a lot of the synchronous communications overhead in to his performance comparison.

I think that he should enable the MySQL multi-statement feature and then perform his comparison by concatenating the test statement repeatedly before sending it to the server:

#include <my_global.h>
#include <mysql.h>
#include <my_sys.h>
#define MY_SOCKET "/tmp/mysql.sock"

int main(int argc, char *argv[])
{
MYSQL *pMySQL;
int i, nLoop;
char *pStmt;

if(argc < 2)
{
[Read more]
Showing entries 28706 to 28715 of 44077
« 10 Newer Entries | 10 Older Entries »