[Mono-list] MySQL

Daniel Morgan danmorg@sc.rr.com
Fri, 1 Nov 2002 11:06:34 -0500


What is mentioned at http://www.go-mono/ado-net.html refers Mono.Data.MySql
and uses MySQL native client library.  It is under the X11/MIT license.
http://www.opensource.org/licenses/mit-license.php

The reason Mono.Data.MySQL falls under the X11 license is because the Mono
class libraries are under the X11 license.

The mono runtime is under GPL and the mcs C# compiler is under LGPL.

As for the pure C# provider at
 http://sourceforge.net/projects/mysqlnet/
This provider does not require a MySQL client library at all.
You have to use anonymous cvs to check it out.

This is the cvs web page that tells you how to use
annoymous cvs to get a copy of mysqlnet.  However, it is GPL.  It does not
run on Mono, but it runs fine on MS .NET.  This is how I got it.  I removed
the System.Web.Forms and System.Draw stuff.  Miguel was quick on fixing a
bug for me that I discovered trying to run it on Mono.
http://sourceforge.net/cvs/?group_id=47556

-----Original Message-----
From: Ben Clewett [mailto:Ben@roadrunner.uk.com]
Sent: Friday, November 01, 2002 10:39 AM
To: Daniel Morgan
Cc: mono-list@ximian.com; Rodrigo Moya
Subject: Re: [Mono-list] MySQL


Daniel Morgan wrote:

> I have replied to you inline.

As I.

> Great!  We need some good testers to find the bugs and write tests.

I'll do my best.

> "Specifically, somewhere where I can get any corrent
> documentation on how this .dll should be used?"
>
> I'm not sure what .dll you are talking about.  Are you talking about the
> Mono.Data.MySql.dll assembly or the MySQL native client library?


I think I need to understand better what clients are available, and why
there may be two (or more) written for .NET in C# and under GPL.

There is Mono.Data.MySQL. Coded in C# and currently 'heavily' under
development, written by Daniel Morgan, Rodrigo Moya, Ravi Pratap and
Brad Merrill.  Under GPL.

Is this the one which uses the libmySQL.dll and linmysqlclient.so?

Or is this the one which is pure C#, but may suffer in the future as it
may fall behind the MySQL protocol?

Is this the official 'mono' MySQL API you refered to?


There is also http://sourceforge.net/projects/mysqlnet/ which is also
GPL.  Also C#.  Written by Jun Su, Reggie Burnett and Adam Hunger. This
currently shows no files, so i can't look at it.  This currently has
problems with Mono, but you have a working version.

There is another .NET MySQL driver written in C# by Manuel Lucas Viņas
Livschitz, also GPL.  Is this the same one, I can't seem to find the
page where I downloaded this.

There is the one from http://www.einfodesigns.com/.  Not GPL.

This is the ONLY official .NET API from MySQL on
http://www.mysql.com/portal/software/html/software-32-1.html.  Which
seems odd as MySQL seem to encourage the stong use of GPL API's.


If you can enlighten me a little, I would be greatful.

Ben


> The MySQL provider in Mono right now uses a native client shared
> library: on
> Windows, this shared library is libmySQL.dll and on Linux, it is
> libmysqlclient.so
>
> A MySQL provider written in 100% C# would be better for performance
> reasons,
> but that would mean we would have to keep up with the client/server
> protocol
> used for MySQL database access.  At least with MySQL's native client
> library, the API is stable.
>
> There is a GPL'ed MySQL provider in sourceforge.net and works on .NET, but
> it does not work on Mono due to problems in I/O or networking (I assume)
> right now.  I have a modified version on my hard drive if interested.
>  I had
> to strip out the Windows.Forms and System.Drawing stuff in there since we
> don't need that for Mono.  This provider is written in 100% C# and
> does not
> use any MySQL client library because it communicates directly with the
> MySQL
> server.  This is the
> MySQLNet mentioned in Venu's article.  Here is the link to that GPL'ed
> driver
> http://sourceforge.net/projects/mysqlnet/
>