Hi, that's a good question and I agree that it's confusing and not answered simply by quoting a blurb from the MariaDB website. The following is how I understand it as a 22-year user of Perl/MySQL for database development.

MySQL began as an open-source RDBMS. Its holding company was sold to Sun Microsystems and then absorbed into Oracle, which comntinues to maintain and release a "community" open source version. DBD::mysql or a predecessor has been the open-source Perl DBI driver for MySQL since the early 1990s; in its current form since 1995.

MariaDB was started as an open-source replacement for the now-commercially owned MySQL. Since its introduction many hard-working developers have tried to ensure that the two are as near-compatible as possible. DBD::mysql has been patched often to keep it compatible with the MariaDB client libraries as well as those for MySQL.

In summer 2018 Pali forked DBD::mysql because it had accumulated a list of unresolved bugs and support requests. In July 2018 version 1.00 was released. Pali has also continued to contribute to DBD::mysql.

Since that time, the MariaDB website has garnered the statement quoted by LanX above, and the doc for DBD::MariaDB boldy says: "DBD::MariaDB is the Perl5 Database Interface driver for MariaDB and MySQL databases" (emphasis mine). And while that doc in the Author section does acknowledge the long history of DBD::mysql development, it gives the impression that the fork was on an abandoned module and that DBD::MariaDB is now the only DBI solution for MySQL.

This is patently not true. DBD::mysql continues in active development with regular releases. And in fact the MySQL website states: "The DBD::mysql module. This is the DataBase Driver (DBD) module for Perl" (emphasis mine).

That hubristic "spin" is what has caused me personally to skip the fork for now. It may be a great way to access MySQL databases; it may even be more up-to-date in regards to edge use cases that I never encounter. But it's certainly not the only DBI accessor. (I'm also concerned about gradual drift towards MySQL-incompatibility since such support is obviously a poor stepsister to MariaDB).

So yeah, it's confusing. As of today you can use either. I use DBD::mysql and plan to continue doing so.

Hope this helps!


The way forward always starts with a minimal test.

In reply to Re: DBD::MariaDB or DBD::Mysql by 1nickt
in thread DBD::MariaDB or DBD::Mysql by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.