Showing entries 39536 to 39545 of 44067
« 10 Newer Entries | 10 Older Entries »
Setup XServe G5 with 10.4 Client as MySQL Server

Well, the new Quad Xeon 64-bit Intel XServes are shipping November 2006, so there are deals to be found on PowerPC XServes on eBay. We needed another XServe to add to our few G4 XServes, so we decided to get the fastest machine we could on eBay and use it as our dedicated MySQL server instead of the G4. We got a good deal on a cluster Dual 2.0 GHz G5 on eBay recently. It came with 10.3 Panther Server, but we want to use Tiger and I don't want to pay $499 for OS X Server Tiger right now (I'll wait a year when they are going to be $149 long after Leopard Server has shipped). So we are going to use Tiger 10.4 client on this headless G5 XServe. This article documents some of the details in getting this set up......

MySQL: Stanford GSB case study (Part II)

Christof Wittig, CEO of db4o, and former student at Stanford's Graduate School of Business, has written an excellent follow-up to his original MySQL case study.

Christof does a great job of tracing the challenges facing MySQL, as well as the way the company has successfully responded to many of them. He also identifies an interesting, parallel trend to how Linux spread:

The first enterprise-wide users of MySQL were Internet-enabled start-up companies which turned to free open source software stacks such as LAMP to get their business off the ground. These companies not only saw the lower cost advantages of open source, but also valued the ability to modify parts of the underlying software to differentiate themselves in …

[Read more]
Database partitioning

We’ve been experimenting lately with database partitioning (in version 2.3.2-dev, make sure to update your kettle.jar to the latest snapshot). In our context, database partitioning means that we divide our data over a cluster of several databases.

A typical way of doing that is that you divide the customer_id by the number of hosts in the cluster and get the remainder. If the remainder is 0, you store the data on the first host in the cluster, 1 for the second, 2 for the third, etc.

This sort of thing is something that we’ve been implementing in Kettle for the last couple of weeks. The reasoning is simple: if one database is not up to the task, split the load over 2 or 5 or 10 databases on any amount of hosts.  ( Now imagine all the PCs at work all running an in-memory database )
Besides small changes to the Kettle transformation …

[Read more]
Using Sphinx as MySQL data retrieval accelerator

I've run into the following thread couple of days ago:

Basically someone is using sphinx to perform search simply on attributes (date, group etc) and get sorted result set and claiming it is way faster than getting it with MySQL. Honestly I can well believe it for cases when you want to know number of matching rows as well as if you can't build efficient indexes so selectivity is done by index and index used to resolve order by.

Funny enough to filter by attributes or sort sphinx does not use indexes - indexes are only used for full text search matching, but it is still extremely fast doing data crunching.

I just tested right now performing search of "the" which matched 100.000.000 of documents out of 200.000.000 collection (200GB) completed in 0.7 second. This is system we're building for one of our clients which uses cluster of 3 nodes to …

[Read more]
Using CHAR/VARCHAR data types in NDBAPI

Many people have problem how to use the string data types (char/varchar) from the NDBAPI. Here I explain how you can use them.

First of all, let's create a table we can use as an example:

CREATE TABLE `t1` (
`a` int(11) NOT NULL,
`b` char(64) DEFAULT NULL,
`c` varchar(255) DEFAULT NULL,
`d` varchar(256) DEFAULT NULL,
PRIMARY KEY (`a`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1;


CHAR

In the MySQL server CHARs are space padded to the length of the CHAR.

Example:
insert into t1(a,b) values (1, 'mysql'); -- 'mysql' is 5 bytes long.

The MySQL server will now space-pad the string up to the length (in this case 64 bytes, given the character set used).

However, the NDBAPI does not respect this and does not care if it is space-padded, null-padded, or even 5-padded. But, if you want to be able …

[Read more]
MySQL AB Licenses Hyperic IT Management Technology

SAN FRANCISCO ? Hyperic Inc., the leader in multi-platform, open-source IT management, today announced a technology license agreement with MySQL AB, the developer of the world?s most popular open source database. Under terms of the agreement, Hyperic?s SIGAR (System Information Gathering and Reporter) API is being incorporated into the new monitoring and advisory component of the recently-announced MySQL Enterprise subscription offering.

Speaking at the Open Source Database Conference 2006

I will be a speaker at the Open Source Database Conference, which is held in Frankfurt from 6th to 8th November 2006, parallel to the International PHP conference.
I will present two sessions, one on Advanced Replication Techniques in MySQL 5 and the other on The MySQL General Purpose Stored Routines Library.
I submitted both proposals long before I started considering joining MySQL, so I will go there with the blessing of my current employer, but I will speak under my former affiliation, to avoid attributing to my current company what are my personal ideas.

The MySQL slow query log doesn't count time to acquire initial locks.

There is a feature in MySQL to log all queries that take longer than long_query_time to execute, and optionally also log the queries that don't use indexes. If you are not familar with it, I recommend reading this page in our manual.

One issue to be aware of, is that some queries may take much longer than long_query_time to execute, but will not show up in your slow query log. The manual gives a very good explaination for this;

The time to acquire the initial table locks is not counted as execution time.



There are two status variables that may help in seeing if you are hitting read/write concurrency issues because of table-level locking;

mysql> show global status like 'Table_locks%';
+-----------------------+-------+
| Variable_name         | Value | …
[Read more]
You can setup your MySQL database backup within minutes!

Using freely available ZRM for MySQL , you can set up a solution to backup and restore your MySQL database, within minutes. This article has all the details.

Wishes for new “Pure PHP” MySQL driver

If you're following MySQL or PHP landscape you should have seen announcement by MySQL to develop pure PHP driver. If not - Here is FAQ .

I'm to meet the team (Georg, Andrey etc) which will be developing this driver during my visit to Open Source Database Conference in November so I thought it would be good idea to gather some wish list for things nice to have in this new driver. Below is my list and I would appreciate to hear your ideas.

Build In Profiling I would like to see how many connections and queries page generated and how long they took - I will place this information in the log. For debugging I'd like to be able to get a table below page output listing all the queries, their exec times and number of rows they are returned. So far it has to be done in inherited class.

Auto Explain Would be very helpful for …

[Read more]
Showing entries 39536 to 39545 of 44067
« 10 Newer Entries | 10 Older Entries »