There are times when you want to alter schema for all tables in the database. For example, let’s say in your project you have multiple databases with multiple tables on each of them. Suppose that you have columns within that table defined as DECIMAL(11,6). What it means is that the column will have 11 digits […]
So, waking up this morning to prepare for the first day of the MySQL Conference, the first news I pick up is that it's now Oracle Conference instead. Been speaking with a few people through the day and confusion as to how this is going to impact the company, development community, users or customers reigns. Personally, I'm more apprehensive than excited about it at this point - but frankly, I've spent more time thinking of how to apply MapReduce to large-scale ETL processes than about the acquisition today.
However, I'll keep digesting this for a while, and hopefully after a couple of days of discussing it with people here I can form a better opinion. I don't know Oracle that well - it never seemed like a very easily approachable company to me, and what connection I've had with the technology its felt a bit baroque and legacy, but I haven't even looked at …
[Read more]
  As I have blogged about before, I have worked for Oracle before,
  20 years ago or so. And since then, I have heard a lot of bad bad
  words on Oracle on the streets, both on Oracle the company and
  Oracle the database product. Actually, Oracle isn't about any of
  those things, no, just as in the case on MySQL, it's about
  people. And good people. You don't run and build a company like
  Oracle without good people.
  
  To be honest, most I know about the software industry and most of
  what I know about database technology, I learnt or was allowed to
  learn when I was with Oracle back then. And I can tell you that
  backing and supporting me back then wasn't a really obviously
  good thing to do (I don't know if it is now even). Bur Oracle
  did, and I owe them one for that.
  
  Also, I like the Oracle product. There are attributes with the
  product that are different from, say MySQL, and depending on what
  you look for, Oracle or MySQL might be …
This morning’s MySQL Conference keynotes had a number of inaccuracies, but one that I wish to point out is the characterizations of Drizzle. It looks to me like some Sun/Oracle/MySQL folks are trying to take credit, now that they’re seeing it become a resounding success, for the good work of the Drizzle project. It is not a technology incubator, nor is it the “MySQL Drizzle Project.” It is a new database server.
Today, for me is day 1 of the MySQL Confernece & Expo 2009. It seems to be going pretty well - and its only 2.45pm.
If you follow Planet MySQL, or happen to just have random conversations with people, the main buzz for the day is “Oracle buying Sun”. But let me not bore you with that. I just want to log some of my interesting conversations.
Over lunch I had a good discussion with users of MySQL, and one potential user of MySQL (his company uses Oracle, MS SQL Server, Sybase, and are now looking at MySQL). We talked about quite a number of things:
- The documentation (which I, and the rest of the MySQL users use) seems to not be complete for an Oracle person. Why? It seems we’re missing out on things like the models. We lack enough theory. People would like to “see” (visually) what the InnoDB buffer pool does, not just read about it. In fact, it also seems like we might need to be clearer with the use of …
This week throngs of MySQL developers, users, and enthusiasts descended on silicon valley. Apparently the valley’s cooling system can’t keep up because as they arrived the outside temperature went up into the 90s (32s for those of you who choose to use a sane temperature measurement system). I’m not attending the conference this year but I almost wish I was to get some of the air conditioning. It’s supposed to cool off and rain on Saturday. As the brain power leaves I suspect the valley is going to cool and moisture in the air will condense into rain, or tears.
I bet you thought this post was going to be about Oracle and Sun, sorry. I think the weather is more interesting.
I just pushed the code for my replication changes on launchpad:
$ bzr branch lp:~jan-kneschke/mysql-proxy/replication
The presentation should be available … soon.
  One of the first examples is about filtering binlogs. If you want
  to remove all ALTER statements from the replication
  stream (or in this case the binlog files) you can just iterate
  the binlog and copy everything to a new binlog, but the
  ALTER statement
local binlog = require("mysql.binlog")
local tokenizer = require("proxy.tokenizer")
local f_in = assert(binlog.open("/tmp/binlog-test.log"))
local f_out = assert(binlog.open("/tmp/binlog-test-filtered.log", "w"))
print("filtering /tmp/binlog-test.log to /tmp/binlog-test-filtered.log")
for event in f_in:next() do
    if event.type == "QUERY_EVENT" then
            local tokens = tokenizer.tokenize(event.query.query)
            local first_token = …I just pushed the code for my replication changes on launchpad:
$ bzr branch lp:~jan-kneschke/mysql-proxy/replication
The presentation should be available ... soon.
  One of the first examples is about filtering binlogs. If you want
  to remove all ALTER statements from the replication
  stream (or in this case the binlog files) you can just iterate
  the binlog and copy everything to a new binlog, but the
  ALTER statement
local binlog = require("mysql.binlog")
local tokenizer = require("proxy.tokenizer")
local f_in = assert(binlog.open("/tmp/binlog-test.log"))
local f_out = assert(binlog.open("/tmp/binlog-test-filtered.log", "w"))
print("filtering /tmp/binlog-test.log to /tmp/binlog-test-filtered.log")
for event in f_in:next() do
    if event.type == "QUERY_EVENT" then
            local tokens = tokenizer.tokenize(event.query.query)
            local first_token = tokenizer.first_stmt_token(tokens) …[Read more]
                    Part 2 of "Understanding How MySQL Works by Understanding Metadata", presented by Sheeri K. Cabral (The Pythian Group) and Patrick Galbraith (Lycos Inc.). This was a 3-hour tutorial.
The PDF of the slides can be found at http://technocation.org/files/doc/2009_04_Understanding.pdf.
From the official abstract at http://www.mysqlconf.com/mysql2009/public/schedule/detail/5682:
We have spent countless hours researching over 1,000 pieces of metadata. In the process, we have learned a lot about how MySQL works, and realized that it was a pretty good learning method.
  Tonight at 4:30 AM, USA Pacific time, my phone started to ring;
  it was a call from a Sun employee saying that Oracle has bought
  Sun and he wanted to join Monty Program Ab.
  
  Shortly after that I got a call from a Swedish newspaper,
  Computer Sweden, who asked me about my opinion
  about why Oracle would buy Sun.
  
  The reasons I see why Oracle is buying Sun are:
- Sun is making big hardware, that is easy to bundle with very
  big Oracle installations.
 
- Sun is making very good, reliable Intel boxes that work well
  for database usage.
 
- Sun's virtualization product, VirtualBox
 
- Sun tape Storage, very well suited for …