Apenas o Oracle e o SQLServer da Microsoft são de código fechado, e quando algo dá errado e você tem um problema, a resposta está à distância de um telefonema (e dinheiro, se claro). De qualquer forma, MySQL e PostGre possuem diversos serviços de consultoria empresarial, mas no final esses consultores não são realmente responsáveis pelo produto, porque o produto é de todos. O que é ótimo porque você pode entrar e corrigir o código se for bom com programação C e de nível relativamente baixo, mas se não encontrar a solução pode se tornar uma perseguição de ganso selvagem.
Agora, como nem todos são qualificados o suficiente, e as empresas com dinheiro preferem a segurança (no sentido do negócio) dos bancos de dados de código fechado, é a razão pela qual essas soluções não saíram do mercado, além do fato de suas implementações serem sólidas e vale a pena o dinheiro que você tem.
Ok, agora finalmente a diferença mais importante é entre SQLServer e Oracle e essa diferença é o sistema operacional, a maioria das pessoas que usam Windows vai ficar com, você adivinhou, SQLServer, mas se você executar em versões de Unix, o Oracle é sua solução de código fechado. De qualquer forma, eu uso o Oracle no Solaris, mas se nosso alvo fosse o Windows, provavelmente usaria o SQLServer porque os dois produtos são sólidos, mas acredito que a Microsoft tenha alguns truques especiais escondidos para obter o melhor desempenho no Windows.