Category Archives: db4free.net

Blog posts related to db4free.net

Concerned about db4free.net’s future?

Recently there were some server issues at db4free.net which raised some concerns over a possible soon end of db4free.net.

Here are 3 facts that should convince you that there is no reason for concern:

  • db4free.net has doubled (!) its visit numbers in quite a short period of time. And this doesn’t look like a temporary increase, but very likely to continue and maybe even become more. So db4free.net is currently more successful than it has ever been before.
  • db4free.net recently moved to a new server, which is even slightly stronger than the old one, but costs less than half the money.
  • I invested quite some efforts to clean up the web site infrastructure (which was in a very messy state not long ago). Even though this isn’t entirely finished yet, it allows for new perspectives which seemed unrealistic before. Working on the code becomes increasingly fun again, a while ago it was more pain than fun.

So knowing these 3 facts you probably agree that now would be a really stupid time to shut down db4free.net.

db4free.net running on new server

After the recent InnoDB corruption, db4free.net has moved onto a new server (from a new service provider), starting over with a fresh MySQL server for the users.

The old server can be accessed through phpMyAdmin at http://www.db4free.net/phpMyAdmin/. Select the 2nd entry (db4free.org:3306) to access that old server. Its availability is sort of limited, it still runs in InnoDB recovery mode (without it, it doesn’t even start up) and Read Only mode. My current plan is to leave the old server like this for another month (i.e. May 27, 2011).

The new server will start over fresh and clean again. So even if you had an account, please register again at http://www.db4free.net/d4f_apply.php.

This new MySQL server goes back to using MyISAM as its default storage engine. I can’t promise that corruptions like the recent one don’t happen again. But if you want to play it a bit safer, stick with MyISAM (which is more likely to be accessible in such a scenario). If you want to create an InnoDB table, simply specify the engine in your CREATE TABLE statement, like so:

CREATE TABLE [table] (...) ENGINE=INNODB;

The rules which were in place on the old server remain in place on the new one as well:

  • db4free.net is a testing environment
  • db4free.net is not suitable for production
  • if you decide to use your db4free.net database in production despite the warnings, you do that at your own risk (very frequent backups are highly recommended)
  • data loss and outages can happen at any time (any complaints about that will likely be ignored)
  • the db4free.net team is not granting any warranty or liability of any kind
  • the db4free.net team reserves the right to delete databases and/or accounts at any time without notice
  • it is up to you to get the latest information from the Forum (http://www.db4free.net/forum/viewforum.php?f=1) and the db4free.net blog (http://www.mpopp.net/category/db4free/)

Quick update on db4free.net

I had migrating db4free.net to a new server (slightly stronger, much cheaper) in mind anyway. Now with the current problems, it’s probably best to go forward with this migration right away.

I will start with a fresh and clean MySQL server on this new machine (which means, everybody who had an account will have to re-register in order to keep a database at db4free.net). The old server will stay available in its current state for a while, so you can get to the data which is accessible. InnoDB seems to have quite serious issues on this damaged installation though. Currently it runs in InnoDB recovery mode (and read only), which is the only way I can keep this server up. As soon as I remove these options from the my.cnf config file, the server crashes immediately.

As a consequence of this, the new MySQL server on the new machine will return to MyISAM as default storage engine. You will still be able to create InnoDB tables by adding ENGINE=INNODB to the CREATE TABLE statement.

I have 2 domains for db4free, the default db4free.net and db4free.org. Probably I will get db4free.net connected to the new machine, while leaving db4free.org connected to the old box, as long as it remains available. It’s likely that I will nuke it before May is over.

So that’s the current state, stay tuned for updates.

And as I can’t repeat this often enough, please keep in mind that

  • db4free.net is a testing environment
  • db4free.net is not suitable for production
  • if you decide to use your db4free.net database in production despite the warnings, you do that at your own risk (very frequent backups are highly recommended)
  • data loss and outages can happen at any time (any complaints about that will likely be ignored)
  • the db4free.net team is not granting any warranty or liability of any kind
  • the db4free.net team reserves the right to delete databases and/or accounts at any time without notice
  • it is up to you to get the latest information from the Forum (http://www.db4free.net/forum/viewforum.php?f=1) and the db4free.net blog (http://www.mpopp.net/category/db4free/)

db4free.net has received better language detection

A few months ago I wrote about how to do language detection correctly, to respect the user’s preferred language setting in his/her browser, aka the HTTP_ACCEPT_LANGUAGE header.

Now, finally, db4free.net has received exactly this implementation. Took me a while, but now it’s there :).

Especially German speaking people will notice the difference. If German takes priority over English in the browser settings, the German version of db4free.net will be loaded by default. No more need to click the German flag. If neither German nor English is set, the site will default to English.

However, the English and German flags are still available, to change the language if a person chooses to. This allows for maximum flexibility.

OurSQL Podcasts available at dev.mysql.com

Noticed the new navigation item in the MySQL Developer Zone?

Sarah Novotny and Sheeri K. Cabral have picked up the OurSQL Podcasts again which were on hiatus for a while (well, they have now been back again for a while as well). The Podcasts are available on several resources:

A nice extra to the implementation at dev.mysql.com is that it uses HTML5 audio, so provided that you are using a technically up-to-date browser, you can not only download the sound file of an episode, but play it right in the browser. No plugin required.

Enjoy!

New chance for crashed (port 3307) db4free.net server

One month ago I set up a new MySQL 5.5 db4free.net server instance, after the old instance started to keep crashing. Since then, the former user database server has run on port 3307 to give people a chance to rescue their data, while the new MySQL 5.5 instance started completely from scratch.

However, most of the time, the 3307 server was down and I doubt that many people had a chance to get a copy/backup of their data. Now I updated that server to MySQL 5.5 as well. It’s too early to tell whether or not that will increase people’s chances, but it may be worth to give it a new try.

db4free.net is back again, with MySQL 5.5

Disaster struck again. Well, it’s actually not really a disaster. db4free.net is a testing environment and people are not supposed to use it for any important data, or to use it in production. When after the last server update the main server instance started crashing, it was one of these circumstances which I can’t guarantee my users not to happen, and since both my budget and the server resources are low, I can’t afford setting up a backup system which allows me to restore everything just as a commercial database provider can (or should be able to) do.

Unfortunately I received a few emails (sorry that I couldn’t answer all of them directly) which made me believe that this fact isn’t obvious to all users. Even though the Conditions of Use pretty much explain that, not everybody obviously reads them. Which is why I added this text to both the registration form and to the registration email, so that it leaves no doubt that every db4free.net user is aware that this service is good for testing, but NOT for any data which is painful for the user to lose, or to not have available if the service goes down:

By registering for a db4free.net account you agree that:

  • db4free.net is a testing environment
  • db4free.net is not suitable for production
  • if you decide to use your db4free.net database in production despite the warnings, you do that at your own risk (very frequent backups are highly recommended)
  • data loss and outages can happen at any time (any complaints about that will likely be ignored)
  • the db4free.net team is not granting any warranty or liability of any kind
  • the db4free.net team reserves the right to delete databases and/or accounts at any time without notice

Sorry if I failed to make this clear enough in the past. Please note that these are no rule changes, but only a more thorough clarification.

OK, so now to the changes. After my InnoDB tablespace recovery attempts failed, it was clear that I need to set up a new server instance. Being a testing environment, it’s not really meaningful to use the now very mature MySQL 5.1 builds. So it’s time for an update, to MySQL 5.5, which is currently available as version 5.5.7, which is a Release Candidate (the last stage before becoming a Generally Available version).

Running a development version of course increases the chances of crashes and outages additionally, so it’s a good time to remember all users of the purpose of this service. This new server instance is fresh and new, no databases have been transferred and all users will have to register again to create a database.

What happens with the former 5.1 server instance? As it still starts up, I will keep it running until at least the end of November (unless anything else happens, the no-guarantee-rule keeps applying), on port 3307. So all former users can still access the database and try to rescue data they need. Please understand that I can’t offer any individual support for this. Please refer to the MySQL Reference Manual if you need assistance. You can also still use phpMyAdmin: go to http://www.db4free.net/phpMyAdmin/ and select “db4free.net:3307” from the Server Choice dropdown. However, please keep in mind that this server is damaged and will likely crash frequently, and take some time to come up again.

I am sorry for any inconvenience that the recent issues have caused. However, I am confident that this is taking the right steps to make all users aware what the purpose of db4free.net is and to set expectations right. And to all future db4free.net MySQL 5.5 users I would like to say: happy testing!

db4free.net’s 5th birthday

To my shame I must admit, I missed it. It happened on June 29, 2005 when db4free.net was first available to the public. At that time it was running MySQL 5.0.7 beta. Quite a lot has happened since then, MySQL 5.0 made its way up to 5.0.91 and the current MySQL GA version is 5.1.49, which is also the version db4free.net is running as of today. The first phpMyAdmin version that db4free.net was offering to provide easy access to the user’s databases was 2.6.3. Today I updated phpMyAdmin to 3.3.5.

Statistics are not necessarily 100 % accurate, but here is the best I can come up with. Since its launch, db4free.net had 528,900 visits. The ratio registrations per visits is at about 22 %, so more than every fifth visit ends in signing up for a new database. Which means, that about between 110,000 and 120,000 database accounts (meaning database and user) have ever been created. There have been some cleanups since then to make resources available to people who actively use their databases. Which is why the current number of databases is much lower, at slightly above 13,400.

Today I must (also) admit that the code behind db4free.net’s web application was initially quite poor and it stayed poor for quite long. Why it was poor from my today’s point of view is probably due to my learning process in these 5 years. This year I did a lot of cleanup on the code behind db4free.net’s web application and removed a few bottlenecks which often made the website painfully slow. Now it’s in a fairly reasonable state again, and I have some ideas in the back of my head how to further improve it. So db4free.net is far from its end of life. Quite the opposite is the case, it’s time to give it a new boost so that the balance after its 10th anniversary is even more impressive than today’s 5 year balance.