MySQL (eller SQL Server, Oracle, DB2, etc.) är databasmotorer:de är specifika applikationer som byggdes för datalagring och bearbetning och är väldigt bra på att göra det; de kan också köras på en annan server än den där ditt huvudprogram finns, vilket möjliggör belastningsdelning.
XML-filer är bara textfiler som lagras på din maskin eller någon annan; de måste läsas, analyseras och skrivas till, och bara ditt program kan göra det. De är också riktigt, riktigt ineffektiva på grund av deras textkaraktär:att läsa och tolka en textfil är väldigt långsam, och det är ännu värre att ändra den.
XML-filer är bra för att lagra konfigurationsinställningar och skicka data mellan olika system, men datalagring och bearbetning bör definitivt leva i ett riktigt DBMS.
Dessutom obligatorisk Joel Spolsky-referens .