Showing entries 33766 to 33775 of 44087
« 10 Newer Entries | 10 Older Entries »
MySQL plugins in Debian

MySQL 5.1 and up supports a plugin interface that allows the loading and unloading of server components at runtime, without restarting the server. Today I started working on a mysql-storage-engines package for MySQL 5.1 in Debian, which includes the PrimeBase XT and Sphinx storage engines. I currently do not plan to create separate binary packages (like mysql-engine-pbxt and mysql-engine-sphinx) for every single plugin.

Suggestions for additional plugins which should be added are welcome.

MySQL Sandbox 1.18 - server groups and Proxy support

MySQL Sandbox 1.18 was released today. The changes log has mostly bug fixes, but also two major additions:

  • The ability of creating a group of unrelated servers. Previously, there was only the set_replication.pl command, to create a set of master+slaves. Now the set_many.pl command will create unrelated servers;
  • The creation of a start_proxy script with replication installations. This script starts MySQL Proxy using as backends all the servers in the group.


If you missed the previous episodes, MySQL Sandbox is a tool used to install an isolated MySQL server, independently from existing instances in the host. It can also install a replicated system of 1 master + N slaves. All the …

[Read more]
On possibility to have more than 64 indexes

I was asked on Sun Tech Days whether it is possible to use more than 64 indexes in MySQL. I've asked my colleague, Ingo Strüwing, and found out the following: yes, it is possible to have more than 64 indexes, and no additional patches are required. You can get 5.0 source tarball, ./configure it with --with-max-indexes=128 and you'll get a server that can use up to 128 indexes. One needs to be cautious though:

  • --with-max-indexes=N option looks like you could configure server with arbitrary maximum number of indexes. That's not true, if you use N>128 then the server will compile but it will not even be able to start.
  • 128-indexes build of server is not widely used, so potentially it can be less stable than the regular build. My experience: I compiled current 5.0 source with --with-max-indexes=128 and it has passed all bundled tests (good) but I don't see any …
[Read more]
Unexpected SEO results

I had need to show my new employer the official MySQL business shirt, so I did a Google Search on “mysql conference photos” (without the quotes) as I know I’ve seen photos of staff at the conference online before. Google Search Link

To my utter surprise, Google provided 3 image search results. Two of them were of Paul McCUllagh, colleague of my new company PrimeBase Technologies. Not only was this unexpected, the first image of Paul was actually from my own Blog. Go figure how we managed that Search Engine Optimization.

Come and get a t-shirt at UC2008

Here I am at my desk sporting the PrimeBase supporters t-shirt that will be available at the exhibitors booth at the 2008 MySQL Conference. The front is rather uneventful with the official logo, but the back will be worth the experience. So everybody interested in supporting PBXT as the transactional storage engine for MySQL developed by the community and for the community, please come and see us and mention the secret password.

We have been placed way back in the right hand side of the exhibitors hall at booth 518, in front of the Open Source and OEM providers.

Kickfire Kickfire Kickfire

So it looks like these days Kickfire welcomed everyone to tell they've been working with Kickfire - Baron Keith Frank is writing about KickFire. Good Job Kickfire PR team you really energized community.
We also were working with Kickfire for quite a while and are also very excited to give it a try.

Enough have been written about technical basics by other people so I would not waste my time retelling.

I also prefer us to write about results of real testing rather than speculating on PR communications. Finding what products are good for, what are their sweet spots and limits is our mission. I will be playing hands on with …

[Read more]
Installing 5.0.51a MySQL Community Edition on Windows Vista

I'm still working on getting all of my tools and apps onto my new laptop, which is running Vista Ultimate. I downloaded the latest version of MySQL Community Edition and proceeded to install it. I didn't consider the effects of User Account Control (UAC) on the installation. I should have, considering this is one of the gotchas when installing SQL Server Reporting Services on Vista. The installation looked successful until the point where I was prompted to configure the MySQL service. No error message, nothing. So I rooted through, found and ran the MySQL Server Instance Config Wizard, but received an error I hadn't seen before. I did a Google search and came across this blog post which links to a document on …

[Read more]
Hacking for Faster Insertions: Is this really how you want to spend your time?

Recall that I’ve claimed that it takes 28 years to fill a disk with random insertions, given a set of reasonable assumptions.  Recall what they are:

We are focusing on the storage engine (a la MySQL) level, and we are looking at a database on a single disk—the one we are using for illustration is the 1TB Hitachi Deskstar 7K1000.  It has a disk seek time 14ms and transfer rate of around 69MB/s. [See tomshardware.com] We insert random pairs, each 8 bytes.  So that’s 62.5 billion pairs to fill the disk, and at 4KB-size blocks, that 2^28 leaves (= 2^40 bytes / 2^12 bytes/leaf).

Now, my analysis requires each insertion to induce a disk seek.  Suppose we do something clever with main memory.  After all, we have this main memory hanging around.  It should be possible to buffer up some insertions, and once we fill up main memory, insert key/value pairs that belong on the same leaf.  Thus, fetching a …

[Read more]
Multi-Column IN clause - Unexpected MySQL Issue

We have an application which stores massive amount of urls. To save on indexes instead of using URL we index CRC32 of the URL which allows to find matching urls quickly. There is a bit of chance there would be some false positives but these are filtered out after reading the data so it works all pretty well.

If we just process urls one by one it works great:

PLAIN TEXT SQL:

  1. mysql> EXPLAIN SELECT url FROM 124pages.124pages WHERE url_crc=484036220 AND url="http://www.dell.com/";
  2. +----+-------------+----------+------+---------------+---------+---------+-------+------+-------------+
  3. | id | select_type | TABLE    | type | possible_keys | KEY     | key_len | ref   | rows | Extra       |
  4. +----+-------------+----------+------+---------------+---------+---------+-------+------+-------------+
  5. |  1 | …
[Read more]
MySQL Proxy Lua scripts cannot be written as a module?

Yesterday I went through hell while testing the MySQL Proxy partition Lua scripts I am working on in a high concurrency environment. I am sending multiple queries to the server and build up a combined result set in read_query_result - something like this. The proxy returned weird results complaining about multiple result sets being sent from time to time at totally different places even though I was sure that for each query only one result set has been sent. And some of the results were just wrong, a lot of our tests failed unexpectedly.

After long hours flicking almost every switch I simply removed the Lua module declaration from the main LUA script passed to the proxy via proxy-lua-script since it was the only thing left that …

[Read more]
Showing entries 33766 to 33775 of 44087
« 10 Newer Entries | 10 Older Entries »