You are not logged in.

#1 2024-11-04 20:50:00

Goddard
Member
From: Salem Oregon
Registered: 2009-04-04
Posts: 24
Website

mariadb is not a replacement for mysql

I noticed that mysql is not in the repos and I just wanted to ask if that could change?  Not sure if this is the correct place.

I was trying to use the mysql command line and mariadb isn't a drop in replacement for mysql's command line.  They have different options and I noticed mariadb's mysql binary replacement even gives you warning about using it.

I had to download mysql from mysql's website to just use the official mysql command line program. 

I understand the reason for using mariadb instead, but any chance we can at least get the real mysql client binary in the repos?

Thanks

Offline

#2 2024-11-04 20:58:25

progandy
Member
Registered: 2012-05-17
Posts: 5,279

Re: mariadb is not a replacement for mysql

mysql-clients is in the AUR if you really want it. Or you could learn the options for the mariadb client.


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#3 2024-11-04 21:08:29

Goddard
Member
From: Salem Oregon
Registered: 2009-04-04
Posts: 24
Website

Re: mariadb is not a replacement for mysql

I tried that and unfortunately it just leads to a dependency resolution conflict.  Ultimately if you are on Plasma you cannot remove anything related to mariadb including mariadb-clients because of akonadi.

I don't really understand why those things are in conflict, but maybe some one else knows.  To me they should be completely different.  Maybe because the mariadb-client package includes a binary named "mysql" for some strange reason?

Also it isn't an issue with my learning the differences.  It is actually other software that uses that binary and requires it and if it isn't the official binary it doesn't work.  From what I was reading one option not being found may be a bug in mariadb's client for ssl-mode, but I am not sure on that.

Last edited by Goddard (2024-11-04 21:19:21)

Offline

#4 2024-11-04 21:43:11

progandy
Member
Registered: 2012-05-17
Posts: 5,279

Re: mariadb is not a replacement for mysql

Right, mariadb-clients / mariadb-libs provides those compatibilty names.
You could use an older version like mysql-clients81 / libmysqlclient81 that has the version in the names or modify the PKGBUILDS for newest version to do that as well.

Last edited by progandy (2024-11-04 21:48:23)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#5 2024-11-04 21:51:25

seth
Member
Registered: 2012-09-03
Posts: 60,896

Re: mariadb is not a replacement for mysql

mariadb and mariadb-clients and mariadb-libs are version bound, I'd not hold my breath for ABI compatibility w/ mysql 9 - you'll probalby have to replace the entire mariadb stack w/ mysql from the AUR

From what I was reading one option not being found may be a bug in mariadb's client for ssl-mode, but I am not sure on that.

It might help to know the exact error.
If its just "foo wants to run mysql --bar" but the mariadb switch is "--snafu", that should be easy to cover w/ a wrapper script that translates the options.
Also what mysql version does "other software" depend on? Because they're not binary compatible with each other either …

Offline

#6 2024-11-04 22:01:31

Goddard
Member
From: Salem Oregon
Registered: 2009-04-04
Posts: 24
Website

Re: mariadb is not a replacement for mysql

progandy wrote:

Right, mariadb-clients / mariadb-libs provides those compatibilty names.
You could use an older version like mysql-clients81 / libmysqlclient81 that has the version in the names or modify the PKGBUILDS for newest version to do that as well.

That's cool.  I have it "fixed" now, but just wanted to ask about this as well for the future I guess.

As for the bug I mentioned :
This is the quote I found, but not sure about if that is the reason.  - https://github.com/volatiletech/sqlboil … -287520790

The software I am using is this - https://github.com/tpope/vim-dadbod

If they aren't binary compatible then even more reason it shouldn't be using the "mysql" name.

Last edited by Goddard (2024-11-04 22:02:10)

Offline

#7 2024-11-05 08:08:35

seth
Member
Registered: 2012-09-03
Posts: 60,896

Re: mariadb is not a replacement for mysql

"binary incompatible within" - you cannot just mix and match libmysql w/ mariadb clients et vv.


This is the quote I found, but not sure about if that is the reason

--ssl and --skip-ssl are the (legacy) MySQL parameters and supported by mariadb.
But the only ssl reference in vim-dadbod seems to be for mongodb?

Offline

#8 2024-11-05 15:28:52

Goddard
Member
From: Salem Oregon
Registered: 2009-04-04
Posts: 24
Website

Re: mariadb is not a replacement for mysql

--ssl and --skip-ssl are the (legacy) MySQL parameters and supported by mariadb.
But the only ssl reference in vim-dadbod seems to be for mongodb?

I am pretty sure, but not 100% certain, it is just passing these things to the command line tool.

Currently mariadb gives a warning that mysql command shouldn't be used any more.  Then it gives an error that ssl-mode isn't recognized.  On the actual mysql command from it works with no warnings or errors and connects fine.  We could go in and change that program making a special exception for Linux users on that program, or just not allow mariadb to include a binary called mysql since it conflicts with the actual mysql binary and people who want to target mariadb can do so.  I assume most projects will want to like KDE Plasma.  I don't know if mariadb has build instructions to not build the mysql binary, but I hope they drop it or add that option and we can package it that way.  Maybe they are working towards that?

Offline

#9 2024-11-06 07:51:29

seth
Member
Registered: 2012-09-03
Posts: 60,896

Re: mariadb is not a replacement for mysql

I am pretty sure, but not 100% certain, it is just passing these things to the command line tool.

Ok, but from where? Are you entering them?

https://gitlab.archlinux.org/archlinux/ … b/-/issues
You could file a bug asking for a split package, though it might be more reasonable to
1. either add that switch to the mariadb binary (the functionality should™ be there
2. add proper and explicit mariadb to the downstream projects resp. don't have them rely on, one might argue, "artificial incompatiblities"

Offline

Board footer

Powered by FluxBB