MariaDB/MySQL Server Types – Differences Between Standalone and Embedded

embeddedmariadbMySQL

When configuring a MySQL or MariaDB server, the terms 'standalone' and 'embedded' are referred to, but without reference to what they are, or what they do that is different from each other.


  • What does the term 'embedded' refer to? Is this like on an IP camera or something?

  • Also are these the only the two types of MariaDB/MySQL servers? Or are there other similar servers, like for example are 'galera', or enterprise other types of servers?

  • What is the difference between these two or other server types? In other words, what are they used for that is different, or how are they installed that are different, etc.


Note: When installing, these groups seem to apply:

[server]     apply to both mysqld and embedded   (note: 'mysqld' = 'standalone')
[mysqld]     apply to only mysqld             
[embedded]   apply to only            embedded  

From context: in Debian desktop, I think I'm running a 'standalone' server only.

Best Answer

"embedded" is for applications that link to a server library and run a database internal to their application. They don't have a connection and all their SQL is via library calls. These aren't that common.

"standalone" seems most appropriate for your use.

embedded and "networked (including sockets)" are the main two server types. Withing networked there are MySQL cluster and MariaDB's galera as special kinds of networked configurations.