Estamos desenvolvendo um aplicativo da Web ASP.NET que deve ser projetado para o MS SQL Server 2008. Gostaria de minimizar minhas futuras dores de cabeça do administrador do dB, caso haja necessidade de migrar para o MySQL.
Com esse objetivo , existem padrões ou recursos de design específicos que devemos evitar no MS SQL? Problemas que tropeçam nas ferramentas de migração MS SQL -> MySQL?
Sim, planeje não usar nenhum dos recursos do SQL Server, como tipos de dados geográficos, SQL CLR, índices filtrados, top, CTEs, etc.
Eu diria que não se preocupe em tentar programar para várias plataformas de banco de dados. Escolha uma plataforma e essa será a plataforma na qual o aplicativo será executado. Se o aplicativo precisar ser movido para outra plataforma, lide com isso posteriormente. Caso contrário, você gastará tanto tempo tentando descobrir se o código pode ser portado para ambas as plataformas que não chegará a lugar algum.
Se você pretende planejar uma migração do MySQL, por que não planejar também para Oracle, Sybase, NoSQL, Progress, etc?