Follow up post to this one
At my company, we have some really old web servers that host our
website. They are from late 2004 and early 2005. Now, at the
time, I am sure they were quite expensive.
Recently, we wanted to move to newer web servers and we bought
the basic Dell R200 rack servers. Now, arguably they are quite
cheap, but thinking about it they will definitely be faster then
4 year old servers, right? Well, that’s what my predecessor
thought when he bought those servers and I myself didn’t think
about it till we wanted to start using them.
We noticed that the new servers are at least twice as slow as old
servers and that just completely baffled us. No one saw it …
Last weekend I started a shell that is based on the core libs of the MySQL Proxy and now code is good enough to be really useful.
As the shell is internally driven with a lua-script it is very
easy to change the display or the way how the result of a query
is processed. A simple feature that comes to mind is appending a
SHOW WARNINGS
whenever query resulted in warning.
root@127.0.0.1:3306 []> create table t2 ( id serial ) engine = foo; OK (warnings: 2, auto-commit: true, affected rows: 0, insert-id: 0) +---------+------+--------------------------------------------+ | Level | Code | Message | +---------+------+--------------------------------------------+ | Warning | 1286 | Unknown table engine 'foo' | | Warning | 1266 | Using storage engine MyISAM for table 't2' | +---------+------+--------------------------------------------+ OK (warnings: 0, auto-commit: true)
This …
[Read more]Alright my stats patch appears to be working ( its a first step anyways ), eventually this is going to make it into waffle grid… but I thought it would be useful as a standalone patch. Basically what this patch does is turn off the dynamic collection of stats by disabling the calls to dict_update_statistics_low & btr_estimate_number_of_different_key_vals for everything but the analyze statement. At this point its not really refined, but it does appear to work. i.e. It will need more refining in the future and may not 100% work in every little case. The short of it, this means that once you set your stats you should not have to worry about the cardinality of your tables changing dramatically.
Other databases ( even other storage engines ) allow you to control when and how your stats are gathered. Lots of shops analyze their tables once a week using a large sample set with the idea that their execution plans will stay …
[Read more]Heavy testing, headphones with no music, lots of Sanchez Gran Reserva, headphones with Miles Davis, more testing, an updated Installation Guide, Charles Mingus & Eric Dolphy, and I still couldn’t get a Release Candidate out.
Well, such is the life of the multi purpose hacker. Other people are always finding out new purposes for you, which makes your free time aproach zero.
Does this mean that the release date of rc-1 will never come? Nah, I don’t think so. I have high hopes for the next iteration.
Wanna help me? Please test the installation guide, and then test the cluster itself. There’s a contact mail in the guide (yep, I don’t fear spam, I love it, it’s great for art).
Thanks to the 5000+ anonymous folks who …
[Read more]So, there it was: The mandatory picture that every successful Kilimanjaro climber wants to brag with. And I am no better (or worse) than any of my predecessors. Of course, I want to show that I’ve conquered well over 13 % of the world’s Seven Summits.
What did I see from the summit? A new release of MySQL? To be honest, my mind was completely off business. I was contemplating the most basic human needs. I wasn’t feeling explicitly tired nor cold (except for my hands! I had taken off the gloves to take pictures). But I was completely out of breath, as the air is very thin at 5895 m above sea level.
Now, I’m back home, tending to an inbox of over 400 emails personally addressed to me (and an unknown amount received through mailing lists).
Luckily, I couldn’t access those emails from the hotel in Tanzania where we stayed after the climb, so instead, …
[Read more]This is the 137th edition of Log Buffer, the weekly review of database blogs. Dave Edwards is enjoying a week off, and so as part of my plot to take over the world, I am writing this week’s Log Buffer.
First, the fun stuff: Josh Berkus tells us that the American English Translation of the Manga Guide to Databases is available in Japanese Fairies and Third Normal Form.
Then, the basics:
Giri
Mandalika points to an article on Using MySQL with Java Technology. This is a
basic article on how to connect, and …
I’m told WordWeb, a dictionary application for Windows, allows you to find words, quite unlike the MacOSX dictionary. I’ve never even found a usable dictionary when I use Linux, that doesn’t require me to go online.
The whole idea is that if I search for the phrase cure all, I get back a thesaurus entry that suggests the word panacea. OK, that example alone wasn’t so great, because cure-all tends to be a word in these dictionaries. WordWeb Online allows me to have a “reverse dictionary” result, which I think is just fabulous (as long as I have access to an Internet connection).
Does such a Mac app exist? Seems WordWeb exists for the iPhone, but their Java app, requires an Internet connection.
What’s interesting is that they sell the dictionary data. They are powered by MySQL, and if you’re wanting to grab their …
[Read more]In Opensolaris 2008.11 you can create zones. But in contrast to zones in Solaris these Opensolaris zones do not contain packages from the global zone but a small set of dedicated packages, that are installed directly in the zone.So there are no more sparse zones, that inherit the packages from the global zone and you have to install additional packages via pkg command. (No more pkgadd!)If your local zone has no internet access you can install packages from the global zone as well. Although this is not documented. But the zoneadm -install does exactly this. Look at /usr/lib/brand/ipkg/pkgcreatezone
- Make sure the local zone is halted.
- From the global zone mount the local zone's root file
system.
- Set the envrironment variable
PKG_IMAGE=/wherever/the/rootfs/is/mounted
- Set the environment variable
PKG_CACHE=/var/pkg/download
- Use the regular pkg command. It will …
A new technical article entitled "Using the MySQL Connector/J JDBC Driver With the Java SE Platform", has been posted on java.sun.com at:
http://java.sun.com/developer/technicalArticles/mysql_java/index.html
This article explains the essential steps involved in accessing/manipulating the data in a MySQL database from a Java application. MySQL Connector/J JDBC driver was used in the example code to show the database connectivity, data manipulation steps. Application developers who are new to Java programming language [but not to MySQL database] are the target audience of this article.
Stay tuned for the next article in this series "Using MySQL with PHP" ..
A little publicized, but exceedingly useful feature of the MySQL command line client is the \G modifier. It formats the query output nicely, so you can read through it easier. To use it, you just replace the semi-colon at the end of the query with ‘\G’.
For example, checking the master status:
mysql> SHOW MASTER STATUS; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000193 | 7061 | | | +------------------+----------+--------------+------------------+ 1 row IN SET (0.00 sec) mysql> SHOW MASTER STATUS\G *************************** 1. row *************************** File: mysql-bin.000193 Position: 7061 Binlog_Do_DB: Binlog_Ignore_DB: 1 row IN SET (0.00 sec)
Now try this for the much larger SHOW SLAVE STATUS. Or for …
[Read more]