MySQL on Windows: Configuration & Install - Port 25: The Open Source Community at Microsoft
< Back to Blogs
MySQL on Windows: Configuration & Install by jcannon on March 16, 2007 05:02PM

This week, the lab looks at configuring and installing MySQL -  an open source relational database management system which is typically used for web applications.

This paper will provide an overview of configuring & installing this software on Windows. MySQL does not have as many features as PostgreSQL, however, and one would expect it to perform substantially better than PostgreSQL on Windows because of its thread-based architecture (PostgreSQL uses a process-based architecture instead).

Note: This paper represents testing and documentation in a lab environment. User Account Control (UAC) is an essential security component to Windows and Microsoft does not recommend turning off UAC in production environments.

Comments RSS
  1. posted at 01:27AM 03/17/2007
  2. norberto said:

    I don't understand what's the reasons to install a near close database over a very insecure close operating system like windows (any flavor).

    Better, why don't use this site to talk about how to install PostgreSQL over any debian linux and also how to migrate your heavy MSSQL applications too? It's possible, it's more reliable, more secure and also it's free.

    PostgreSQL is the only open source database builded by a really free community (MySQL isn't the case) that can be accept a full migration from a very complex MSSQL database application. MySQL is more a toy.

    Performance? over debian systems PostgreSQL is much faster and very much stable than MySQL, and PostgreSQL over debian with similar or better stability level is much faster than MSSQL over Windows (both over same hardware).

    May be you can try it an also make publics the performance benchmarks. MSSQL lics don't permit to the users publish benchmarks results, but may be in this site, and if really true that Microsoft is opening to the open world...

    MySQL is only another marketing invent... like all Microsoft products. The only tech point that both are winners over PostgreSQL is only a better accessible documentation.

    posted at 07:44PM 03/17/2007
  3. einhverfr said:

    Norberto:  

    One of the projects I am deeply involved in (LedgerSMB) is looking at releasing packages in .tar.gz (source and Gentoo ebuild), .tgz (slackware), rpm, deb, and even msi formats.  That software is based on PostgreSQL and we will never port it to MySQL due to known data integrity issues.

    -

    So, take a look at my PostgreSQL paper a bit further down (yes, I wrote both papers).  And take a look on my web site in the white papers section for the MySQL to PostgreSQL migration guide.  You may find both papers more helpful..  I personally prefer working with PostgreSQL (and preferably on Linux) but there are a large number of cases where having information like this makes sense.

    -

    It allows developers to install a database management solution on their desktops without having to dual boot.

    -

    It allows developers like me to test software more effectively to help programs reach larger audiences (which include Windows users).

    -

    It may introduce Windows users to the idea of running open source software on their platforms.

    -

    You do have to understand that you won't expect a site like this which is run by a software vendor to be providing how-to's about how to migrate away from their platform.

    -

    As for benchmarks, most of us who use a lot of databases frequently know that benchmarks tend to be both uninformative and easy to cheat on.  I.e. unless you are testing with the specific load you plan to use, the benchmarks may be way off what you expect to see.  Ask sometime on the PostgreSQL lists, if you don't believe me :-)

    -

    Performance-wise, MySQL is faster when you use MyISAM tables (i.e. no transactions), and use simple selects only.  Using more complex queries, and mixed read/write loads, PostgreSQL tends to win hands down.  I would expect this to be further noticeable on Windows due to added costs in PostgreSQL primarily affecting those types of queries (simple selects) that MySQL does well.

    -

    Also, PostgreSQL, though it is my favorite, is not the only open source database guided by an open community.  Firebird is another.  I personally prefer PostgreSQL because it is far more robust and powerful (thought Firebird may perform better on Windows).

    -

    Finally, I have been using PostgreSQL since late 1999 (version 6.5).  I can tell you that MySQL is where it is not just due to marketing.  Seven years ago, MySQL was far easier to use, administer, and develop for than PostgreSQL.  Sure it didn't have many needed features (like transactions) at that time, but for simple tools, it was good enough.  Since that time though, PostgreSQL has become even more powerful while becoming far easier to use than MySQL IMO.  So though the market is changing in PostgreSQL's direction, I expect it to take a little more time.

    posted at 11:02PM 03/17/2007
  4. einhverfr said:

    Although Windows has a reputation of being insecure, the limiting aspect of most computer security is the admin.  If someone is more familiar with Windows security than Linux security, they are better running a program like MySQL or PostgreSQL on Windows if security is that great a concern.  And while I think that *nix has a better security/usability balance than Windows, an admin is usually the weak link.

    posted at 11:37PM 03/17/2007
  5. I have a few comments on the comments (sorry for the redundancy) to clarify without trying to start a flame war:

    - MySQL is Open Source released under the GPL license, there is nothing closed about it. Now there is even a new program to allow for more contributions from the community: http://forge.mysql.com/contribute/

    - Most downloads happen for the Windows platforms, although it looks like most implementations are done in *nix. This goes hand in hand w/ einhverfrf comments:

    [quote]

    It allows developers to install a database management solution on their desktops without having to dual boot.

    -

    It allows developers like me to test software more effectively to help programs reach larger audiences (which include Windows users).

    -

    It may introduce Windows users to the idea of running open source software on their platforms.

    [/quote]

    - I agree also with the 'lying' nature of generic benchmarks.

    - Last but not least, 8 of the top 10 web sites measured in traffic use MySQL in one way or another to generate revenue. msn.com is not one of them ;)

    - Most of the applications running on MySQL, don't need the additional features offered by other DBs, Open Source or not.

    My $.02 to keep it fair and balanced,

    G

    posted at 12:29PM 03/19/2007
  6. einhverfr said:

    You are, of course, right about the license being GPL.  You will notice that nobody has questioned whether MySQL is "Open Source" but rather whether it is developed by an "open community."  This may not be an important issue though.

    -

    My comments (and even Norbertos) had to do with the fact that MySQL is a single-vendor solution which uses client-library licensing to sell software licenses to non-GPL-compliant developers (I believe they now offer additional permissions to the developers of apps using other OSI-approvied licenses) while PostgreSQL is multi-vendor, and the client libraries are BSD-licensed.  It is the question of single-party control over what you can do with the software more than about licenses.  However, if you only use the GPL, it doesn't affect you :-)

    -

    Also, it is true that many applications simply need a light-weight data storage engine that can do agregates reasonably.  MySQL fits that need quite well (and it is also a good database for light-weight content management).  Applications which do need strong data integrity controls, etc. can use something like Firebird or PostgreSQL (both are well-supported on Windows now, btw).  In short, MySQL is great for Joomla! but I would think twice before running a financial package on it.

    posted at 06:04PM 03/19/2007
  7. "Importance is in the eye of the beholder" kind of ...

    In my experience when dealing with large corporations with knowleadgeable lawyers, they'd rather go with GPL than BSD. For details on both the FSF web site is a great source of information. These lawyers also like the fact that MySQL, by controling 100% of the code, can also provide commercial licenses to those customers that require them, mostly OEM. So "it's a feature" :)

    Maybe in a future article your lab (I'm assuming you work at the OSS lab @ MSFT) can comment about the licensing compatibility issues. Besides DBs, I've noticed that the media players included in the last SuSE distributions include a Patents/Copyright/Int Prop warning. I guess as more interoperability and partnerships between different companies and projects take place, the more important this issue will become.

    posted at 12:37PM 03/20/2007
  8. MichaelF said:

    Good thought on the license compatibility discussion.  I'll see if we can address this issue in a future Port 25 post.

    posted at 01:33PM 03/20/2007
  9. Provavelmente você utiliza nas suas aplicações SQL Server ou a sua versão Express, muito boa por sinal.

    posted at 01:35PM 03/21/2007
  10. einhverfr said:

    Seattlegraucho:

    -

    The GPL and BSD have different business traps and issues.  I personally release *most* of my code under the GPL simply because I don't want to subsidize the competition.  This being said, I am *not* happy about certain developments in GPL v.3....

    -

    My issue with MySQL is specifically about the client libraries.  In my view, client libraries should be licensed under LGPL (most cases) or BSD license (i.e. for reference implementations of a protocol).  The specific intent is to ask people to purchase licenses if they want to build software on MySQL under commercial licenses.  This to me would be no different if Microsoft wanted to charge you extra to build VB apps if you wanted to release them under the GPL.

    -

    However, this is also becoming a serious liability to MySQL.  Oracle now owns both of the back-end storage engines (BDB and InnoDB) whch are transaction-capable.  This does not affect GPL-users, but it does affect those who may want to purchase non-GPL licenses because these can only be issued in agreement now with Oracle.  And there is a lot of fear that Oracle may not play nice...  But if you don't need transactions, I suppose that is a non-issue.

    -

    In related news, I am glad to see the announcement about parts of FoxPro being slated for release on Codeplex.  I think this represents a strong step forward for Microsoft and I am quite happy to see it happen.  I, for one, hope that there is enough interest that the product will eventually go far.  THere are a lot of older legacy apps that could use this sort of support.

    -

    Thank you, Microsoft :-)

    posted at 07:44PM 03/21/2007
Post a Comment
*
*