Pour être franc, MySQL est une base de données alors que JSON ne l'est pas, donc la bonne réponse est MySQL, sans hésitation. JSON n'est qu'un langage, et à peine cela. JSON n'a jamais été conçu pour gérer quoi que ce soit comme des connexions simultanées ou toute sorte de manipulation de données, puisque sa propre fonction est de représenter des données, pas pour gérer il.
Allez donc avec MySQL pour stocker les données. Ensuite, vous devez utiliser un langage de programmation pour lire cette base de données et envoyer ces informations au format JSON, plutôt que de stocker quoi que ce soit dans JSON.
Si vous stockez les données dans des fichiers, que ce soit au format JSON ou autre, vous aurez toutes sortes de problèmes dont les gens ont cessé de s'inquiéter depuis que les bases de données ont commencé à être utilisées pour la même chose. Limitations de taille, serrures, nommez-le. C'est assez bien quand vous avez un utilisateur, mais dès que vous en ajoutez d'autres, vous commencerez à résoudre tellement de problèmes que vous finirez probablement par écrire un moteur de base de données complet juste pour gérer les fichiers pour vous, tandis que tout au long de vous aurait pu simplement utiliser une base de données réelle.