Como gravar a utilização do BCP num servidor SQL remoto?
Tenho um servidor SQL remoto com um nome de host que estou a usar para me ligar.
o BCP sugere a utilização de
bcp DBName.dbo.tablename in C:\test\yourfile.txt -c -T -t
No entanto, quando tento isto, não se liga ao DBName, uma vez que não é um nome falso válido. Erro nativo 2.
Como executar o BCP mas indicar um endereço de internet / rede a que se ligar, e não um nome de servidor MSSQL?
2 answers
Como executar o BCP mas indicar um endereço de internet / rede a que se ligar, não um nome de servidor MSSQL?
Poderá indicar o endereço IP (aqui apenas 127.0.0.1) em vez do nome do servidor.
bcp DBName.dbo.tablename in "C:\test\yourfile.txt" -c -T -t -S"127.0.0.1\instance"
Se você realmente quiser ir IP\port só então use o endereço IP e o porto separados por vírgula
bcp DBName.dbo.tablename in "C:\test\yourfile.txt" -c -T -t -S"127.0.0.1,60905"
Claro que nesse caso precisaria de saber o porto que a instância está a usar, e a sua instância deve ser configurada para usar um porto fixo
O DBName é o nome da base de dados, você precisa usar a opção-S para fornecer o nome do servidor (ou servidor\instance).
De MSDN:
- s server_name [\instance_name] indica a instância do servidor SQL a que se ligar. Se não for especificado nenhum servidor, o utilitário bcp conecta-se à instância padrão do servidor SQL no computador local. Esta opção é necessária quando um comando bcp é executado a partir de um comando remoto computador na rede ou um local chamado instancia. Para se ligar ao instância por omissão do servidor SQL num servidor; indique apenas o nome do servidor. Para se ligar a uma instância nomeada do servidor SQL, especifique server_ nome\instance_ nome.