From my experience MariaDB is not necessarily better than MySQL. The 8.x line brought many interesting features. I dream on switch to Postgres, and try every year but for my use case MySQL is still superior (100Bi+ rows for large texts, and heavy modified - I´m also space constrained - So I need data compression and the VACUUM are not good.)
From my experience, mariadb is about the same as mysql... depending on the queries, it can either be fine, or slow as balls. I'm actually considering switching to pgsql to see if its any better. /shrug
The author is right that usage is dropping, but that really has no bearing on whether or not it is open source. Technologies get replaced all the time regardless of the license they use.
Author is also being careful with the DB-Engines screen shot, usage of MySQL may be dropping, but it's still number two (below Oracle, above MSSQL - which shows the same curve, above Postgres, far above MariaDB and SQLite) https://db-engines.com/en/ranking_trend
That site is not measuring usage. By usage SQLite would be way above all the others. There are more SQLite deployments in use than all the others combined.
I'm stuck on MySQL because converting to postgres is hard, the tool everyone recommends (pgloader) doesn't work with current MySQL (https://github.com/dimitri/pgloader/issues/782), anyone know another way?
How big of a DB are we talking about?
You might need to recreate the whole DB schema / structure manually from scratch in PostgreSQL and then dump the data and load it in PG via standard SQL file exports in the correct table order to avoid failures due to FK constraints.
This is a gross oversimplification but you get the gist
In fact I don't get the gist :) but thanks for your reply. All I know about databases is following instructions to set one up as part of a LAMP/FAMP installation.
Unless you use stored procedures in MySQL, recreating the tables and schemas in Postgres should be straightforward. Postgres now offers a 'MySQL Adapter', a.k.a. Foreign Data Wrapper (https://github.com/EnterpriseDB/mysql_fdw), that makes it straightforward to load data from MySQL into Postgres.
I know you mentioned that all you know about databases is following instructions, but maybe the folks at EDB or Percona can give you a hand.
Postgres will be around for a long time, and I think it's pretty obvious that MySQL won't.
It does work, I just used pgloader to migrate a 16 GB database from MySQL 8.4 to PostgreSQL 18 last week (around 700 tables). It's not big, but their problems seem to be with authentication, not database size or functionality.
Because it's a zero-maintenance solution that performs well out the box, has excellent analysis tools that are free, and works with no issues.
Postgres is work. Mysql is not. I say this having used mysql, postgres, oracle, sybase, mssql, ingres, rdb, dbase, and other random data stores in production.
Obviously lots and lots of companies. Do you think a mature company just migrates to a different database unless it is absolutely necessary? That's a multi year project. I'm at a smaller company (around a 100 devs) and we have easily a dozen different production instances, some small and some larger with many replicas, etc.
New projects get MySQL too because we know it and it works.
> Do you think a mature company just migrates to a different database
You are right if you look at the current state of how MariaDB and MySQL diverged. But if you migrated right at the time of the split or close to, they were not different in a meaningful way.
> unless it is absolutely necessary
Staying free of Oracle is often deemed absolutely necessary.
MySQL performs well at large scale, and has a very cool and weird storage engine option called MyRocks, that slows read performance but allows demented write rates and compression.
I would argue that the reason to stop using it is that is a pretty bad piece of software to begin with, not because it's not "true open source" but hey, whatever floats your boat, right?
reply