Long saught and recently implemented in HeidiSQL: An editor for stored procedures and functions. See it in action by updating to a beta build:
There is now an alternative to setting up your own PHP
environment. You can download a server-only OpenSolaris web stack
and run it in
a virtual machine. XDebug, the PHP engine, Apache, and MySQL are
preconfigured on the web stack. You can work on your PHP project
in NetBeans IDE and use the FTP feature to deploy your PHP on the
OpenSolaris web stack.
Follow these steps to use the OpenSolaris web stack:
- Download the OpenSolaris web stack image and create a virtual machine for it.
- Configure the network connection on the virtual machine.
- Configure port forwarding.
- Create an FTP connection in NetBeans for the web stack on the virtual machine.
See the tutorial Deploying PHP to a Server-only OpenSolaris Web Stack for detailed instructions for setting up the OpenSolaris web stack on Sun …
[Read more]Python support has been added to the latest version of MySQL Workbench.
In addition to Lua, you can now write scripts and modules or
interact with the GRT shell using the Python language. The
integration allows you to use GRT objects and modules mostly in
the same way you would do with normal Python objects. The
built-in grt module contains everything related to
the GRT that’s exposed to Python, including:
- custom types for GRT lists, dicts and objects
- wrappers for GRT classes, that can be used and instantiated as a normal Python class;
- wrappers for registered GRT modules, that can be used like normal modules;
- a reference to the root node of the GRT globals tree;
You can inspect these objects with the standard
dir() command and in some cases with
help(), to access the …
It’s certain now that Peter Gulutzan will be at the MySQL User Conference, live on stage.
Details within a few days.
Last week (or rather last weekend) was quite productive. I was able to make a good progress migrating to the new mysql-test based testing framework. Reviewing the tests I was able to find and fix some bugs. For example there was a bug that ignored some columns while detecting index capabilities. As I mentioned earlier I also started to rework the output format. Here’s an example:
/* Query: select sum(col2) from t2 group by col1selectivity: all rows used tables: t2 (all rows) used aggregate functions: sum ( col2 ) ordering: implicit related existing indexes: t2.ix123(col1, col2, col3): covering, optimizes ORDER BY, optimizes GROUP BY */
As you can see now the tool reports used aggregate functions, if any. This is very convenient for manual query analysis, especially in non-trivial cases.
Next, the “ordering” now can be “implicit”. This is reported for the cases when there’s a GROUP BY clause and no ORDER …
[Read more]With this post I want to start the practice of writing short weekly summaries of QOT activities.
This week I was able to work on some bug reports: #12 #13 #14 #15. Some trivial crashes, some of which were already fixed before. As I wrote in my previous post, I have changed the way I do the releases so if you want to have all the latest features and fixes be sure to use the latest Launchpad version of QOT.
Besides the bugs I started to rework my testing environment. Earlier I had a set of C++ - based unit-tests. I used while-box …
[Read more]Sorry for the downtime of this site - until around a week ago I hosted my home page on a trusty Genesi Pegasos II system (powered by a PowerPC G4 Processor clocked at 1GHz, using Debian 4.0 PPC with 512 MB of RAM), serving these pages from my home DSL connection. Unfortunately this system provided no means of redundancy - the hard disk drive died.
Luckily I perform frequent backups, so I moved most parts of the site to a shared hosting space now - the picture gallery is unfortunately too big to fit into the space that I have there. I'll try to move the pictures into my Flickr account instead, but this will take some time.
Note that the primary domain name of this site is now lenzg.net - lenzg.org, (the …
[Read more]I don’t think I’ll be attending the MySQL Conference & Expo this year (I didn’t manage to get a session accepted), but I just learned from Twitter that Don MacAskill is delivering a keynote I would have liked to attend.
He’s planning to talk on MySQL and SSD-based storage. SmugMug is using Sun’s new 7000 series storage servers to great success and I am interested in seeing the benefits that from from SSD storage from someone who knows.
I’ll just have to bribe …
[Read more]General
Being quite busy with my full-time job at PrimeBase Technologies and quite limited in time for QOT development I was looking for ways to optimize the process around QOT.
I came to a conclusion that instead of preparing and releasing milestone binary releases it will be more optimal to declare the main project trunk to be the permanent release place and “release” the new features and bug-fixes by simply pushing them to the main trunk. This way I will be able to make individual features and bug fixes available as soon as possible. So
to install QOT for the first time you do:
1. install Bazaar
2. run “bzr branch lp:qot” from the shell to get the latest stable QOT sources
3. follow the usual QOT …
[Read more]Hi,
We are pleased to announce MONyog 3.0 - a major new release. MONyog is rapidly becoming a cost-effective alternative to expensive proprietary tools for MySQL monitoring.
Unlike databases like SQL Server & Oracle, MySQL does not provide powerful APIs to gather extensive profiling information about each and every query. MySQL developers and DBAs have largely used on a combination of the following techniques to find problem SQL:
- SHOW PROCESSLIST
- Slow Query Log and General Query Log
- SHOW PROFILES (available from MySQL Community version 5.0.37)
- Capturing and filtering tcpdump output
To overcome the shortcomings of profiling features in the MySQL server, MySQL Proxy was introduced which allows developers to route queries via MySQL Proxy and then extract profiling information from MySQL Proxy. (It also provides other features like load balancing, query rewriting, …
[Read more]