In May 2007 XAMPP will be five years old and we think this is a
good time to think about changes and improvements to XAMPP.
That's what this survey is for: to find out what your needs are
and what we can do to improve XAMPP in the next major
release.
The survey will run for exactly one month (from March 22nd to
April 22nd 2007), after which we will publish the results right
here.
Thank you for taking the time to complete the survey. We
appreciate your feedback and we will use it to make XAMPP even
more useful and enjoyable. ;)
If there are any questions you don't want to answer, you don't
have to. You choose.
Apache Friends XAMPP 2.0 Survey »
MuleSource expands team…Digium delivers Asterisk appliance…R1Soft introduces data protection for MySQL…and more…
MuleSource Expands Global Management Team With New Hires From JBoss, Sun, and Tibco, MuleSource (Press Release)
Digium Delivers Asterisk Appliance for Full-featured, Cost-effective Internet Telephony, Digium (Press Release)
R1Soft Introduces Continuous Data Protection for MySQL, Righteous Software (Press Release)
Novell’s tiny regret in Microsoft deal, The Register, Gavin Clarke (Article)
…
[Read more]I'll be giving a presentation about CouchDb tomorrow night at the PHP UG Dortmund. If you're in the area, come and say hello.
You'll learn what CouchDb is, why it is so cool and how to use it with PHP. The talk will be in German, but I'll make some material available in English some time after the presentation.
In case you'd like to see this or my High Availability talk at your local usergroup, company or conference, you can find contact information at my website. I'd like to hear from you!
I’m just back from SNAP Innovation, the developers of the Primebase XT (PBXT) storage engine, here in Hamburg / Altona. What a pleasure to visit a company that, despite its closed-source roots, has understood and embraced what Open Source is all about and how it can open up business possibilities!
Left: Paul McCullagh
PBXT is a pluggable storage engine that fits in with MySQL 5.1. It is fully transactional, and supports MVCC. That makes it a good fit for many purposes, but the area where it is an especially good fit is for the industry that SNAP has been serving for the past decades: the publishing industry. No matter whether print …
[Read more]
MySQL has joined Google Summer of Code 2007 and has launched its own
Summer of Code branch.
Are you a student and a skilled programmer? Do you use MySQL? Do
you have ideas on how to improve it? (Do you want to use this
cool logo in your blog? :) )
Here's your chance to participate. Rush to read the announcement and the full
instructions in MySQL Forge and then apply!
Time is short. The deadline is …
In my replication environment I had a hardware failure on master
host. A 4.5.GB table containing blob images wa corrupted, so I
issued a REPAIR TABLE and the effect was to repair the table but
also to reduce the number of rows: master table had just 41 rows
less than the copies on the slave hosts on a total of a hundred
thousand rows.
So, the problem now is how to recover only those rows from a
slave and re-populate the master table avoiding to dump the
entire table. And how to do that with a single command line
instruction?
We can use a couple of mysqldump options.
The first option to use is --where="where_condition", it
dumps only rows selected by the given WHERE condition.
So let's try a first instruction.
slave1:/> mysqldump -u root -proot_pwd --where="idimg between
93305 and 93346" mydb images | mysql -h master_host -u root
-proot_pwd mydb
But this …
[Read more]
In my replication environment I had a hardware failure on master
host. A 4.5.GB table containing blob images wa corrupted, so I
issued a REPAIR TABLE and the effect was to repair the table but
also to reduce the number of rows: master table had just 41 rows
less than the copies on the slave hosts on a total of a hundred
thousand rows.
So, the problem now is how to recover only those rows from a
slave and re-populate the master table avoiding to dump the
entire table. And how to do that with a single command line
instruction?
We can use a couple of mysqldump options.
The first option to use is –where=”where_condition”, it
dumps only rows selected by the given WHERE condition.
So let’s try a first instruction.
slave1:/> mysqldump -u root -proot_pwd --where="idimg between
93305 and 93346" mydb images | mysql -h master_host -u root
-proot_pwd mydb
But …
[Read more]It’s a common practice to use MySQL’s auto increment feature for things like product ids or invoice numbers. While it always works when the system is first setup it can cause major headaches over time. The problems usually fall into one of three categories, dual master, test/staging setups, and reconciliation of ids.
MySQL in a dual master configuration requires that each master not be able to assign the other masters id. Replication events that use auto increment are tagged with the id that was allocated for that transaction. If you run mysqlbinlog on a bin log it will show something like SET INSERT_ID=123; This ensures that auto increment events are replicated to slaves correctly.
In a dual master configuration each master will try to allocate the same id, replicate the event to the other master where that id is already taken. This causes replication to stop on a duplicate key error. In MySQL 5 there are the …
[Read more]
In 5.1 I modified the compression methodology in response to
seeing some schema's which were only seeing compression in the
50% range (which is low compared to what I had seen in most
common cases). The main problem I identified was that the
compression of rows with NULLS and long varchars was
sub-optimal.
In 5.0 and 4.1 the methodology for compression was pretty simple.
Take a row, add it to the compression buffer, and then write that
out when it was full. In 5.1 this has changed:
1) Rows are first packed. This leads to a varchar being
copied into the compression buffer with only the contents and
length ever being seen for compression. The extra space is never
copied.
2) NULL removal. A set of bytes are stored representing
NULLS are stored before any row is copied in. If the attribute
(we call them fields internally) was NULL no length or data is
stored. Effectively NULLs no longer count …
The MySQL database has become the world?s most popular open source database because of its fast performance, high reliability and ease of use. The DBAs expect the same virtues from a backup solution for MySQL. Often times we are asked what performance to expect from Zmanda Recovery Manager (ZRM) for MySQL. That is why recently we measured backup and recovery performance for MyISAM and InnoDB storage engines using various backup methods available with ZRM.
In our testing we used MySQL 5.0 running Netflix databases available as part of Netflix Prize project. Our 2-way Red Hat Enterprise 4 server with 4 GB of memory was able to copy large files with an average transfer rate of 37 Mb/s.
All details and results are described in a white paper available with a free registration to the Zmanda Network. Here are the important takeaways:
- Logical backups and …