After some testing and setup we have decided to use Eventum for our support ticketing needs. This featureful system will be in use for all of your support questions related to Kontrollbase – the MySQL analytics and performance tuning web application, as well as Kontrollkit – the collection of server automation scripts. You can read [...]
Just a quick notice to let everyone know that there is a new version of Kontrollkit available. There are two new scripts included as well as some good updates to the my.cnf files. You can download the new version here: http://kontrollsoft.com/software-downloads kt-mysql-systemcheck – generates a report for point-in-time system status that is useful for troubleshooting MySQL [...]
If you have been reading the Kontrollbase performance reports and noticed that one alert says your connection usage vs max connections ration is too high but then recommends you to decrease the max_connections variable, then you will find this fix handy. Its two simple queries that execute on the Kontrollbase schema to update the max_connections [...]
It is a pleasure to announce that Kontrollbase – the MySQL analytics and performance monitoring webapp for MySQL servers – has a new sponsor. Network Redux is located in Portland, Oregon and offers enterprise quality dedicated and managed hosting as well as cloud services. Thomas Brenneke contacted me to discuss his interest in utilizing the [...]
Good news: As you read this, you can very soon start downloading the first version of MySQL 5.5 from http://dev.mysql.com/downloads/.
Some things are the same as before, others are different. Let’s start by looking at the version string, SELECT VERSION();
mysql> SELECT VERSION(); +--------------+ | version() | +--------------+ | 5.5.0-m2-log | +--------------+ 1 row in set (0.00 sec) mysql>
And let’s look at the highlights of the release notes, or better still, MySQL 5.5 in a nutshell in the manual on http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html. Top of the list is …
[Read more]Some notes from my recent installation of MySQL 5.4.2-beta on a PPC G5 box running OSX 10.5.8. Hopefully these notes will save someone a bit of time when they begin the “I want to make my mac a development box” process. I’m not going to cover installing/configuring Apache and PHP since the web is full of those articles already. So, first things first, I downloaded the pkg file – not the tarball – from the MySQL downloads site and installed the following files in the following order:
- mysql-5.4.2-beta-osx10.5-powerpc-64bit.pkg
- MySQLStartupItem.pkg
- MySQL.prefPane
CNF File Settings
Here are some interesting settings that you may want to be aware of with 5.4 and OSX
- Do not set innodb_flush_method=fdatasync – it’s not a valid option, and the default after install is actually blank.
- Do not set “nice = …
I was actually exploring inotify-tools for something else, but they can also be handy for seeing what goes on below a mysqld process. inotify hooks into the filesystem handlers, and sees which files are accessed. You can then set triggers, or just display a tally over a certain period.
It has been a standard Linux kernel module since 2.6.13
(2005, wow that’s a long time ago already) and can be
used through calls or the inotify-tools (commandline). So with
the instrumentation already in the kernel, apt-get install
inotify-tools
is all you need to get started.
# inotifywatch -v -t 20 -r /var/lib/mysql/* /var/lib/mysql/zabbix/* Establishing watches... Setting up watch(es) on /var/lib/mysql/mysql/user.frm OK, /var/lib/mysql/mysql/user.frm is now being watched. [...] Total of 212 watches. Finished establishing watches, now collecting …[Read more]
install_driver(mysql) failed: Can't load
'/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so'
for module DBD::mysql: /usr/lib64/libmysqlclient.so.15: version
`libmysqlclient_15' not found (required by
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so)
at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm
line 230.
at (eval line 3
After a lot of mucking around I noticed that the MySQL-shared-community RPM was installed, not the MySQL-shared-compat RPM like my usual installs. So…
rpm -Uvh
MySQL-shared-compat-5.1.33-0.rhel5.x86_64.rpm
Quick post here for a problem that other people might run into
and wonder how to fix. Let’s say you have the following
error:
install_driver(mysql) failed: Can't load
'/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so'
for module DBD::mysql: libmysqlclient.so.14: cannot open shared
object file: No such file or directory at
/usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/DynaLoader.pm
line 230.
at line 3
Compilation failed in require at line 3.
Perhaps a required shared library or dll isn't installed where
expected
at ./kontroll-client-5.0.x_linux-x86-2.0.1.pl line
193
Well, you probably need to symlink “libmysqlclient.so.14″ to the
existing one that is most likely of a newer version.
> find / -name "libmysqlclient*"
/usr/lib64/libmysqlclient.so.15
/usr/lib64/libmysqlclient_r.so
…
I saw something interesting today when helping out someone on the
#mysql IRC channel. It was a cnf file that was designed to
destroy a server. Before I get into the why-not, here are the
goods:
...snip...
read_buffer = 128M
join_buffer = 128M
key_buffer = 512M
max_allowed_packet = 200M
thread_stack = 192K
thread_concurrency = 8
thread_cache_size = 64
query_cache_limit = 256M
query_cache_size = 256M
table_cache = 8192
query_cache_type = 1
sort_buffer = 128M
record_buffer = 128M
myisam_sort_buffer_size = 128M
thread_cache = 64
max_user_connections = 500
wait_timeout = 200
max_connections = 4096
tmp_table_size = 1000M
max_heap_table_size = 1000M
...snip...
Now, you may ask why these settings are bad. I will tell you. First, an equation for calculating per-thread …
[Read more]