The titles of the videos look very much like “must watch”. Found via ThinkPHP, thanks.
After having a week to recover from the first exam I finally got around to taking the second one….and passed!!
Part II of the MySQL DBA Certification focused a lot more on the day to day running of the server, compared to Part I which was very much installation / configuration based.
Studying for the exam was a little difficult as I also had to work this week (as opposed to being on holiday!), but the skills you gain can be directly applied to everyday management of MySQL, and can be very rewarding especially if you focus on optimisation.
So what next you ask? Well after getting this far I thought it only fair that I give something back to the MySQL Community in the form of a MoinMoin Macro - …
[Read more]
The 2007 MySQL Conference is over, and I finally made it back
home. I have some notes on some of the sessions, which really
aren't that great, so if you want to see what you missed, you
should read Planet MySQL. But I will give some of the
highlights.
There's a lot of new development around storage engines.
MySQL-5.1 has a pluggable storage engine architecture which
allows you to load and unload storage engines while the server is
running. Brian Aker explained that this is for cases where you
have a stable server setup and only want to upgrade the storage
engine. All the storage engines in 5.1 are pluggable, and there
are already some third-party proprietary storage engines
available.
One of the relatively new third-party storage engines is SolidDB.
Solid has been around for quite awhile. In fact, I was using
Solid for a project in the late 1990's …
I'm putting together a page of projects which use MySQLdb. If your project is not
on this list, leave a comment, with a URL and brief description,
and I'll check it out.
Frameworks/Libraries
- …
The NDB/Connectors have added support for Ruby, as well as Asynchronous Transaction support for Java, Python and Perl.
The Ruby support, of course, means that new you can interact with your MySQL Cluster installation using the NDBAPI from all your Ruby code.
The async stuff is especially cool, because it means you can send transactions to the Cluster and get responses by way of callbacks defined in the connector language. So you can do something like this:
class testaclass(object):
def __init__(self, recAttr):
self.recAttr=recAttr
def __call__(self, ret, myTrans):
print "value = ", self.recAttr.get_value()
#snip
myTrans = myNdb.startTransaction()
myOper = myTrans.getNdbOperation("mytablename")
myOper.readTuple(ndbapi.NdbOperation.LM_Read)
myOper.equal("ATTR1", 245755 )
myRecAttr= myOper.getValue("ATTR2")
a = testaclass(myRecAttr) …[Read more]
Just for reference, here are some previous posts I did for the
2005 MySQL User Conference:
Not that these are particularly awesome or anything, but there
are a few travels notes which may possibly be useful if you
decide to go this year, since it's in the same location.
If you have the time, and you are from outside The Valley, catch …
Thanks to a gift from MySQL AB, I'll be attending the MySQL Conference & Expo 2007. I presented at the 2005 conference, and found the conference itself to be pretty educational. Plus the food is generally pretty good at the O'Reilly conferences. Of course the real reason people to conferences is for the swag. Now this year's PyCon had some pretty good swag; I got at least six free T-shirts and two Rubik's cubes. So top that.
I have to deal with it now and a lot of other people too, judging
by the utf8/unicode/encoding topics on the django mailing list. I
have found this one thread quite interesting and looks
like the problem solver, but may be I also just need to learn a
bit more about the bits and pieces that make this whole thing
work. This message obviously tells how to make mysql
completely aware and well-handling utf8.
Next thing on the list the django setting parameter DEFAULT_CHARSET.
I was fighting four days now, with a threading problem, which are known to be hard to track. But I finally found it and learned that I actually had made a beginner’s mistake.
What happened?
From the front end I trigger via AJAX a view that again starts a
thread that does some import work, that might take quite a while.
This enables the user to keep going and have the import run
without interrupting him/her. Every once in a while an
asynchronous call checks on the state of the import.
And here lies the problem: while the thread is running and busy
like a bee adding data in the DB the asynchronous call to check
on the state also tries to run a query and that causes the
following exception:
...
File "/Users/cain/programming/django/trunk/django/db/backends/mysql/base.py",
line 42, in execute
return self.cursor.execute(sql, params)
File …[Read more]
Here’s a very rough pre-release of NdbObject, an ORM mapping for python that maps Objects to NDB directly with no SQL code.