These days I spend more time looking at /proc/diskstats than I do at iostat. The problem with iostat is that it lumps reads and writes together, and I want to see them separately. That’s really important on a database server (e.g. MySQL performance analysis). It’s not easy to read /proc/diskstats by looking at them, though. So I usually do the following to get a nice readable table: Grep out the device I want to examine.
A SELECT statement with COUNT returns the number of rows retrieved by the SELECT statement (see mysql select count). For performance reasons, the desired result is to limit that count. Including a LIMIT clause in the SELECT statement will not work since it only restricts the number of rows returned, which is always one. The […]
Sometimes you may need to collect facebook user’s basic data for your website or application. Then you’ve to call graph api or legacy api or fql query to collect some specific data. This is a basic requirements for most of the fbconnect base website or facebook application. For this reason, here I’m sharing the code, [...]
[Read more]I have been talking with a group of folks who have been making a product that has lots of free functionality, including the ability to centrally manage many MySQL instances. The administration functions include starting and stopping MySQL, seeing status and system variables, seeing and managing the MySQL config file (/etc/my.cnf), seeing and managing accounts, a small dashboard of overall health graphs, and more.
With this free tool you can look at and manage local and remote databases. It supports ssh tunneling, including ssh using password-protected ssh keys. It’s pretty neat, and I have been working with the product manager to add features. I think this took will become the de facto standard for centralized GUI administration of MySQL.
The tool is
MySQL workbench….Surprise! One of the best new features for the
administrator is that you can now create an administration
connection for an existing workbench connection …
A MySQL user group member saw that I use Poderosa as my ssh-on-Windows tool, and asked why I did not use PuTTY. My response was that I like having tabbed windows and hate having to keep opening another PuTTY program every time I want to open another connection. With Poderosa I can open a new connection with Alt-N, and I can even connect directly to Cygwin with an icon.
But Poderosa is not the tool I wanted to mention….Another user group member mentioned PuTTY Connection Manager. It wraps around PuTTY and gets the existing saved connections, makes a nicely tabbed browsing window where you can open sessions by double-clicking the connections, which are now listed on the right-hand side.
See screenshot below:
I have not played with …
[Read more]So it seems Red Hat is a bit surprised (I’m not) by the number of subscribers on the “DRBD in RHEL 6, please” bug tripling in a couple of days. I guess they are also getting a few more tweets than usual about this.
But please, Red Hat’s EMEA Chief Supreme Open Source Evangelist saying “DRBD is limited with regard to integration with [Red Hat] Cluster”? Give me a break. I wrote the Red Hat Cluster Suite integration for DRBD. Lon Hohberger merged it almost a year ago. …
[Read more]I give quite a lot of presentations. A whole lot less than I used to, but still quite a few per year. Most of the time, the presentations are on performance tuning MySQL.
Almost every time I give a presentation on MySQL performance tuning — and this happens 100% of the time if I am presenting to a Windows SQL Server crowd — I get the following question:
Why don’t you cover using stored procedures in order to increase performance? Wouldn’t that be the easiest way to get better performance since the stored procedures will only be parsed once and then the compiled bytecode would be efficiently executed from then on?
Every person that asks this question assumes something about MySQL’s stored procedure implementation; they incorrectly believe that stored procedures are compiled and stored in a global stored procedure cache, similar to the stored procedure cache in Microsoft SQL Server[1] or Oracle[2]. …
[Read more]We’ve long wondered what might happen to all of that open source software from Sun Microsystems now that it’s at Oracle? Obviously, some pieces continue to live at Oracle (Java, Solaris, MySQL), but there are a number of open source projects that Oracle has either neglected to talk about or have been overlooked, particularly as we focused on user reactions, implications and finally approval of Oracle’s acquisition of Sun.
One significant group of open source technologies from Sun is its OpenSSO single sign-on identity and access …
[Read more]Hi all!
I was swamped with registrations for the online contributor tutorial for Drizzle, and so I’ve bumped up my account to a DimDim Pro account. This means two things:
- I can take >20 registrations
- I can record the session
So, Diego, rest assured, the session will be recorded (hopefully with no glitches). I’m going to call DimDim to see if I can do a practice recording beforehand to verify Linux64 is a platform they support for recording (if not, I’ll go to my neighbour’s Windows computer to record)
Again, if you’re interested in the webinar, please do register using the widget below:
Cheers,
jay
I like to write tools that make hard things easy, when possible. By and large, MySQL is easy and simple. But some simple things are too hard with MySQL. I want to change that, at least for the things that matter the most to me, and which I think I know how to fix.
I will probably write a lot about this. I have already written a number of rants blog posts about the lack of instrumentation in MySQL, and that is where I’ll probably continue to put most of my energy.
To begin with, imagine this simple scenario. You are a remote DBA. Your client says “New Relic is showing periods of slow response time from the database.” You connect to MySQL at the command line and try to troubleshoot. How do you catch the problem in action, from within the database itself? The following are no good:
- It doesn’t count to see the problem two minutes later by observing the application tier, as New Relic does. That’s too late, and …