La bibliothèque embarquée MySQL rend possible l'accès à un serveur MySQL complet, depuis une application. Le principal avantage est l'amélioration des performances, et une gestion bien plus simple des applications.
Les API sont identiques pour la version embarquée et la version client/serveur. Pour changer les anciennes applications threadées, et les faire utiliser la bibliothèque embarquée, vous devez simplement ajouter deux appels aux fonctions suivantes :
| Fonction | Quand l'utiliser | 
| mysql_server_init() | Doit être appelée avant toute autre fonction MySQL, et de préférence
                  très tôt dans la fonction main(). | 
| mysql_server_end() | Doit être appelée avant que votre programme ne se termine. | 
| mysql_thread_init() | Doit être appelée dans chaque thread que vous créez, qui aura accès à MySQL. | 
| mysql_thread_end() | Doit être appelée avant d'appeler pthread_exit() | 
          Puis, vous devez compiler votre code avec
          libmysqld.a au lieu de
          libmysqlclient.a.
        
          Les fonctions ci-dessus mysql_server_xxx
          sont aussi inclues dans la bibliothèque
          libmysqlclient.a pour vous permettre de
          changer facilement entre les versions de la bibliothèque
          embarquée et celle de la bibliothèque client/serveur, en
          compilant simplement la bonne bibliothèque. See
          Section 24.2.12.1, « mysql_server_init() ».
        
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

