Podemos criar "aliases de servidor" em clientes Linux (servidores da web etc.) para que você possa alterar as conexões sem tocar na string de URL do banco de dados do aplicativo?
A documentação oficial parece falar sobre uma maneira GUI de fazer isso no Windows, então eu queria saber se algo assim existe para o Linux. Isso tem muitos benefícios, especialmente durante a conteinerização de aplicativos.
Meu objetivo de alto nível é ver se consigo criar algum nível de indireção para que o aplicativo sempre pense em DB como DSN=myDsn;Uid=myUsername;Pwd=myPwd;
enquanto o driver real o redireciona para DSN=realDsn;Uid=realUsername;Pwd=realPwd;
. Inicialmente eu estava pensando em algo como socat
, mas não tenho certeza de como as alterações de senha podem ser tratadas! "Server Aliases for client" parece fazer algo assim, daí a pergunta.
Os aliases no Windows são definidos usando a GUI do SQL Server Configuration Manager. O equivalente do Linux é mssql-conf , mas não há um equivalente a aliases no Linux.
(Eu não acho que este seja um caso de "ainda não é suportado " relacionado ao suporte ao Linux ser relativamente novo. Meu palpite sobre o futuro é apenas um palpite e suposição, e não um fato.)
Se você precisar de redirecionamento de nome de servidor, recomendo usar um
CNAME
para redirecionar esse nome para todos os clientes centralmente, em vez de uma configuração de cliente por cliente. Como alternativa, eu usaria ohosts
arquivo para redirecionar de um nome de servidor para outro.Se você também precisar fazer a representação de credenciais (seu exemplo implica isso), permitir que o usuário forneça uma credencial e usar algo diferente para se conectar ao banco de dados, isso soa como algo a ser tratado pelo seu aplicativo, em vez de esperar que os drivers faça isso por você.