MySQL Server 是GPL V2 许可
MySQL Client/Connector 是 GPL V2 许可
MariaDB Sever 是 GPL V2 许可
MariaDb Client/Connector:
MariaDB Connector/C, MariaDB Connector/J MariaDB Connecctor/ODBC 为LGPL 许可。
MariaDB 没有ADO.NET Driver 需要用 MySQL的Connector/Net driver, 而MySQL的Connector/Net driver是GPL许可的。
PostgreSQL Server 是 PostgreSQL 许可,PostgreSQL 许可相当于BSD许可
PostgreSQL .NET Database Providers 是PostgreSQL 许可。
结论:如果要使EFCore 和 MySQL 和 MariaDB 一起工作就必须要用到GPL许可的 MySQL Connector/Net driver,理论上说只要保持应用程序在内部使用(不分发)不开源使用(引用)GPL的组件的应用程序时可以的,但这仅仅是理论上在网上有很多的争议,因为如果出现法律纠纷不清楚法官会如何判决。比较安全的做法是使用非GPL(例如LGPL)的 Client/Connector 去链接MySQL 和 MariaDb Server (例如Pamelo.EntirtyFrameworkCore.MySql MIT 许可).
最后个人觉得如果要使用EntitryFrameCore 那么使用PostgreSQL 相对比较安全。