MySQL-Connector

Hello,
I know I have gone on about the native connector before. My situtation
is like this at the moment:
- it works like a charm on 4.0.0.3 running Debian-Wheezy
- it neither works on Mint-Nadia or Windows-Vista (I know, I know --
   I should upgrade THAT system!). The connector DID however work under
   Vista and LO 3.6.5.
Unfortunately I really don't have the time to compile it myself...
What are the plans in any case?
Regards
H.S.

One of the problems depends upon whether the OS is 32 bit or 64 bit. I have a tower that is 64 bit and a MacBook which uses 32 bit with both using Ubuntu 12.04 LTS. The native connector works fine for 64 bit but does not work for the 32 bit. MySQL also has a JDBC driver on their website that works quite well for 32 bit Ubuntu. This has been the case since LO 3.5.7 if not before. (I download all of my LibreOffice files from the ODF website.)
       If I remember correctly, keeping the native connector current as new versions of LO required more time than the developer of the extension had available.

--Dan

Hi :slight_smile:
Is there a problem with running different versions on different OSes?  It should be fine t do that shouldn't it?
Regards from
Tom :slight_smile:

Tom,

Is there a problem with running different versions on different OSes? It should be fine t do that shouldn't it?
Regards from
Tom :slight_smile:

Please, please, pretty please, sometimes I really do get the impression
you have not read anything we have exchanged in the past on this topic.

On Unix/Linux, and for LibreOffice, the native connector is dependent on :

- the OS version ;
- the bit architecture ;
- the version of libmysqlclient ;
- the version of libmysqlcppconn ;
- the version of LO.

This means that if I build a mysql connector on say PCBSD 9.1, it will
not work on Ubuntu, Suse, Redhat or Debian. Even if I build a 32bit
version of the connector on a Suse 32bit OS, the functionality on
another version of that same OS is not guaranteed if the versions of
libmysqlclient or libmysqlcppconn are different between the two
versions, notwithstanding the fact that it will not work at all on a
64bit Suse OS (different architectures).

So, the situation today is that for each Linux/Unix OS, and each major
version of that OS, the connector has to be built separately.

In addition to these niceties, the build of the connector regularly gets
screwed by devs changing things for one OS (mostly Linux), without
giving a *expletive* about the other OSes. This is currently the case at
least for Mac OSX, thanks to recent changes in the gbuild process for
mysqlc and mysqlcppconn. As I don't build on Windows (and do not intend
to), I really don't know what the situation is there currently.

The situation over at ApacheOO is different. There, the connector is
built by another volunteer, using the SDK, i.e. in theory, it produces
an OS version agnostic mysql connector. However, the differences in code
trees between LO and AOO now mean that the connector for AOO no longer
works in LO4, or at least, that is what Heinrich has reported (and
Robert too, I believe).

Alex

Hi Heinrich,

- it neither works on Mint-Nadia or Windows-Vista (I know, I know --
  I should upgrade THAT system!). The connector DID however work under
  Vista and LO 3.6.5.
Unfortunately I really don't have the time to compile it myself...
What are the plans in any case?

There are no plans by any of the mainstream devs, or the LO project, to
support this connector. For Linux distribs, you will have to wait until
they produce an updated connector, but of course, if they are not
shipping LO4, the you are well and truly up the creek without a paddle.

Which bit architecture are you using on Linux Nadia ? I can send you a
32bit version that I built for Linux Maya and which works, but it might
not on Nadia if the Ubuntu/Mint people have changed the mysql library
versions in the meantime.

Alex

Hi Dan,

       One of the problems depends upon whether the OS is 32 bit or 64
bit. I have a tower that is 64 bit and a MacBook which uses 32 bit with
both using Ubuntu 12.04 LTS. The native connector works fine for 64 bit
but does not work for the 32 bit. MySQL also has a JDBC driver on their

On my 32bit Linux Mint Maya and Pear Linux distribs (both based on
Ubuntu Precise Pangolin), I can build a functional mysql connector. If
you want a copy to test, please let me know by private mail

On Mac OSX, the build of the connector is hosed thanks to recent changes
introduced by a Linux dev to switch building of the connector to the
gbuild process.

I have no idea what is happening on Windows, as no-one that I know of is
building it for that OS.

Alex

Hi Heinrich,

Unfortunately I really don't have the time to compile it myself...
What are the plans in any case?

If your Nadia OS is 32bit, try this :

https://dl.dropbox.com/u/107086405/32bit/U1204/mysql-connector-ooo.oxt

and let me know whether it works.

Alex

64bit version here (Ubuntu1204 baseline) :

https://dl.dropbox.com/u/107086405/64bit/U1204/mysql-connector-ooo.oxt

Alex

Hi Alex,
Thanks for your offer! I use a 32bit architecture on Mint-Nadia. Yes, I will
gladly try out the connector you built for Maya. Please send it to
hc.stoellinger@aon.at.
I have of course used both JDBC- and ODBC-based connectors in the past. But
if I can, I avoid both of them, partly for the reason that installation
(of the ODBC-version in particular) is more work, but also because I have
found them to be "buggier". I also assume that they use more resources.
Altogether I feel that a well-performing, stable connector to the widely
used relational DB-systems is a MUST for any "serious" application where
data structure is non-trivial and where a sizeable amount of data has to
be dealt with. So - if AOOffice can produce something which works cross-OS
then we should try to get something working also in LO.
Regards from a snowed in Salzburg
Heinrich

Hello Alex,
Thanks for the offer - unfortunately it does NOT work.. What a pity!
Regards
H

Hi :slight_smile:
Oops, i meant the files NOT the connector.  Can the same file be read on different platforms if each platform is using the appropriate connector for it?  So if those different platforms are using different versions of LIbreOffice but the right connectors then opening and using the files shouldn't be a problem should it?   
Regards from
Tom :slight_smile:

Ok, so that confirms that it is Linux OS bit and version dependent,
probably because the versions of the mysql libraries have changed too.

Alex

UNSUBSCRIBE ME!!!!!!!!!!!!!
I HAVE USED YOUR UNSUBSCRIBE "SYSTEM" 3 TIMES, NOW, AND I AM SICK OF IT!
UNSUBSCRIBE ME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Looks like it, Alex! As I said before, I don't really want to use the Java version, it
never worked well for me either on Linux OR on Windows. Also, isn't there a kind
of strategy to diminish the dependence on Java in LO? If so, this would be yet
another reason to avoid JDBC. ODBC on the other hand requires more effort to set
it up, especially on a variation of system platforms...
So, it seems to me that the way to go MUST be a native connector. Do you know whether
MariaDB is doing anything in this direction?
Regards
H

Looks like it, Alex! As I said before, I don't really want to use the
Java version, it

I had an afterthought question for you : do you have libmysqlclient or libmysqlcppconn installed on your Nadia box ? These might well be necessary for the connector to work. As far as I can tell, when one builds the connector it references the libraries on the system, but does not copy them into the connector itself. If you have them already, and it still isn't working, then it will be dependent on building for each OS version and bit arch.

So, it seems to me that the way to go MUST be a native connector. Do you
know whether
MariaDB is doing anything in this direction?
Regards

The way to go, from what I have gathered, is :

- the Linux distribs will provide the connector for their respective distrib versions of LO - since most don't ship the latest version of LO, then you won't get one that will work until they move on to the next version of LO ;

- on Mac and Windows, it is entirely up to the individual to try and build the conenctor, independently of the official version of LO that is released ;

- the LO dev team are waiting for the MariaDB team to get involved in providing a connector in line with Monty Widenius' statement to help out - from what I have seen recently, there is now actually a libmariadbclient library - this is a requirement to building a functional connector.

No-one that I know of is working on providing a mariadb connector for the LO project at the moment, but I am not following the MariaDB project.

Personally, I am starting to learn postgresql administration and maintenance, because it looks like the future of mysql connectivity in LO is going nowhere fast. I feel like where I was when I first started working with mysql 10 years ago, i.e. lost in a jungle of very technical information :wink:

Alex

Thanks, Alex, for your very informative message! As I mentioned before, I
have set up my DB-connection to use ODBC in the meantime. Time will show whether
this will be good alternative. At the moment it seems to be o.k.
By the way - in spite of my remarks regarding Java/LO I have also downloaded
and set up the JDBC-connector under LO 4, just to see whether it still is "buggy"...
Regarding MariaDB: I have been kind of interested in whether it would stay
around after the original "euphoria". This seems to be the case, looking at
statistics I saw a short while ago. I am quite prepared to migrate to it
when I can spare a couple of hours, since I do have my reservations regarding
proprietarily controlled software.
Just as an asid - I "come" from lots of years with IBM and have seen what M$,
Oracle and others have "contributed" to IT. I did get to know Ed Codd and Chris Date
("inventors" of SQL), got DB2 going at a large customer here as a kind of "first"
within the German language area for an application system based on a couple of
millions of records. Database has been a "passion" for me for a long time. After all,
it is one of the essential pillars of any serious DP-system.
Regards
H. S.

I have a MacBook (Intel)circa 2006 that originally had OS X 10.4 installed. It has 2 GB RAM and is 32 bit. I have installed Ubuntu 12.04. Could this be used to compile a connector? If so, what has to be done to do so? I really have no knowledge of any of the computer languages, so I don't know if my offer to help will be useful.

--Dan

Hi Dan,

     I have a MacBook (Intel)circa 2006 that originally had OS X 10.4
installed. It has 2 GB RAM and is 32 bit. I have installed Ubuntu 12.04.
Could this be used to compile a connector? If so, what has to be done to
do so? I really have no knowledge of any of the computer languages, so I
don't know if my offer to help will be useful.

Yes, that could be used, but you need to compile the whole of LO in
order to get the connector. If you are using the Ubuntu 12.04 (which is
the same baseline as what I have on 32 bit OS), then there is a page on
the developer wiki which tells you what you need to have in order to be
able to build the basic LO on Ubuntu systems.

In addition, you will need libmysqlclient, and libmysqlcppconn. I think
these are installed if you install the mysql connector plugin that
Ubuntu provides with its own distrib version of LO, if not, you will
have to install them via apt-get, synaptic, or the graphical interface
that Ubuntu provides for installing new software (I forget what it is
called at the moment).

With that hardware, it will take some time, plan on 24-48 hours for a
first build and to have the connector built at the same time, you need
to add the following switches after you type ./autogen.sh to start the
configuration of the build :

--with-ext-mysql-connector --with-system-mysql

If you get an error at this point, give me a shout.

Alex

Hi :slight_smile:
Could you copy&paste that to a wiki-page?  Then maybe we could expand it a bit later to cover the main platforms so that point&click users like me are less scared of doing it?

How about
https://wiki.documentfoundation.org/Documentation/Publications/Connectors/MySql
or
https://wiki.documentfoundation.org/Base/Connectors/MySql
Something like that?  Which do you prefer for fitting in with where normal users find guides and stuff on the wiki?  I prefer as sub-pages off the Publications page. 
Regards from
Tom :slight_smile:

Frankly, as it is build related, it would be better off on the Developer
wiki pages. This is not a user issue, but a developer one, and if you
can't build LO using the developer instructions and some help from the
dev lists, or dev-irc, then there will be no point in even attempting to
build the mysql connector.

Building LO is not "point and click" :wink: Is it available to all, yes,
absolutely, providing you can read instructions (on the dev page), learn
basic usage of "git", grapple with the over-complex autogen.sh option
switches, fumble your way around the build system and have the patience
to wait a long time while potentially the build fails after 27 hours.
Oh, and I forgot to mention the frustration with Windows and Mac builds
copping out on you more frequently than on Linux.

Once you can do that, and survive, and keep your sanity, you can attempt
to build the mysql native connector.

Alex