Ok…when did I miss that 4.1 was even out of beta? Well, it doesn’t really matter, but the version that brings you [url=http://dev.mysql.com/tech-resources/articles/4.1/subqueries.html]subqueries[/url], [url=http://dev.mysql.com/tech-resources/articles/4.1/gis-with-mysql.html]spacial queries[/url] and a whole lot of [url=http://dev.mysql.com/tech-resources/articles/4.1/grab-bag.html]other great features[/url] is not only production ready…but, it just had a new release.
If you are new to MySQL 4.1, they have written up some [url=http://dev.mysql.com/tech-resources/articles/4.1/]Interesting Articles[/url] on mysql.com. Or, you may just want to go strait for the [url=http://dev.mysql.com/downloads/mysql/4.1.html]downloads[/url].
And don’t forget…if you are on MySQL 4.1 and php 5, you can play with the yummy [url=http://www.php.net/mysqli]mysqli classes[/url]. Mmmm…[url=http://us4.php.net/manual/en/function.mysqli-prepare.php]Tasty[/url].
They are great. One thing that is kind of a hassle is that they redid the authentication mechanisms. If you are running an older client (aka, you are using PHP 4.x) you need to remember to put “old-passwords” in your mysql configuration file or start up the server with –old-passwords argument. If you don’t do this, then you will get errors when you try to connect to the server with an old client or with PHP 4.x.
Lots of the new features, such as subqueries or anything SQL related should still work even if you are using an older client or the mysql_* php functions.
If you are using a database abstraction layer such as ADOdb, you should be able to tell it to start using the new mysqli functions right away without a bunch of code changes… Yet another reason why database abstraction layers rock.