MariaDB NOT MySql????

I just found out that Xojo Cloud is not using MySql.

Got this from @Jason Parsley

Because all Xojo Cloud servers are running MariaDB (not actually MySQL)

What does this mean, what are the differences. Could this possibly break something in my apps that were written for MySql.

Also on our Xojo it refers to MySql. Why has this been hidden from users?

I know nothing about MariaDB but this sure was a shock to me.

Can someone clarify?

MariaDB is functionally identical to MySQL without all of the licensing issues.

it has many of the same license issues
https://mariadb.com/kb/en/mariadb-license/

use postgresql

Most people won’t notice the difference Richard but edge cases will come across problems as there are hundreds of incompatibilities listed on the MariaDB website

https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/

As @Norman Palardy says, PostgreSQL is the generally preferred option, use it and you’ll love it :slight_smile:

What would be involved in changing to PostgreSQL. There are thousands of lines of code and I have no idea how many of those are Sql related. Would the PostgreSQLPlugin.xojo_plugin be a direct replacement for MySQLCommunityPlugin.xojo_plugin?

Also using MampPro for the MySql on my local machine. They do not support PostgreSQL. How do I handle that?

avoid maria and mysql
they have enormous licenses that you need to be a lawyer to read them & interpret them

postgresql is about … 20 lines long and starts with some boiler plate then says
postgresql is free for ANY use

period. flat out free for ANY use

what kind of machine have you got ? it may already be installed & usable
postgresql is easy to install

the only thing I used mysql for was when I worked on the wiki for Xojo
Other than that its all postgresql for me because I want NO hassles or ambiguity about licenses

My development machine is a Mac, is there any other?

What would be involved in converting a Very Large project?

Very Large Rewrites Of Sql I expect
At least very large reviews of code
A lot of sql will be the same but if you have used any mysql only extensions (every vendor has these) those will need to be altered to whatever postgresql has

Well that seals the deal, I can’t commit that much time. This app is over 15 years old and our Association relies on this to run.

you have my sympathies :slight_smile:

porting a db from one DB to another can be a big job - really depends on the size of the app and the amount of the data

I know a lot of folks felt mysql was “free for any use” which is not true and some were terribly surprised by this
You may be under the radar for the license police from either company

It also depends on how the original SQL was written. Sometimes you get lucky and both the schema and the SQL are highly portable. But you still need a code review to find out.

There are a number of MySQL to PostgreSQL-converters. Go to https://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL#MySQL, and scroll to MySQL to see a list.

Where are your apps now? Are you planning to move to Xojo Cloud? Can you not just stay where you are?

Currently on Xojo Cloud now.

Then I’m really confused Richard. You’re already on Xojo cloud and your app is working yes?

What is your worry?

No worry I was just shocked when I found out it’s not really MySql, but MariaDB. That’s what started this whole thing.

I believe MariaDB was forked by some of the people that worked on MySql at SUN Micro systems.
You will find many service providers still refer to MySql but mean MariaDB

MariaDB

I don’t want to open a can of worms or get myself or anyone into trouble… but I’m going to say inappropriate things anyway. Brace yourselves! :slight_smile:

Don’t use the special features of any database ever, not even a little bit. Use only the most basic SQL as possible and don’t get fancy. Get fancy in your other code that talks to it to make all the cool things happen. It may cost you a few CPU cycles here and there but seriously, you don’t actually need anything that isn’t so basic that it will run everywhere! (and that being said, I understand that some of you actually DO need things that are special, but if thats so then the cost of the project should reflect that and so will the cost of porting it to something else)

Having been handed an entire web system at a previous job that was programmed inside of Oracle PL/SQL so many years ago it bogles my rapidly aging and now much more easily boggled mind, that more people don’t understand the wisdom of this :wink:

If you’re just worried that things won’t work in something else without actually trying it then you’re getting upset too early. There is no reason not to keep using what you’ve got in the meantime. You can do a detailed code review, and I would do at least a little of one, but I would also just try to export and import it and see what happens! You might be surprised that the scope of converting it is much smaller than you fear, even if it is much larger than what is budgeted for. The two things can be brought into some kind of sync once you have some actual information. Those postgres converters are quite good. They won’t do everything, but they do a lot.

Well there you go, can’t get any more drop-in replacement then that :stuck_out_tongue:

pretty sure it was monty that did it but removed my comment as I was not 100% sure of it