Crie um backup de banco de dados com o sqlcmd do host remoto

0

Eu quero executar um backup de banco de dados por meio do SQLCMD de um host remoto.

Meu comando que uso é assim:

sqlcmd -H IP.OF.Machine -S .\SQLDOTNET -U User -P Password -Q "Backup Database [database_name] TO DISK= 'C:\backups\backup.bak'"

Quando eu executo isso, recebo um erro:

Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : SQL Server
Network Interfaces: Error Locating Server/Instance Specified
[xFFFFFFFF]. .

Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login timeout
expired. 

Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : A
network-related or instance-specific error has occurred while
establishing a connection to SQL Server. Server is not found or not
accessible. Check if instance name is correct and if SQL Server is
configured to allow remote connections. For more information see SQL
Server Books Online..

Eu verifiquei que meu servidor aceita controle remoto (Servidor = > Propriedades do servidor = > Conexões = > conexão remota está marcada).

Quando executo o comando no servidor de banco de dados, o backup é criado corretamente.

Existe uma propriedade ou configuração do servidor que estou perdendo aqui?

    
por ChrisK 14.09.2015 / 13:31

1 resposta

1

-H define seu nome de estação de trabalho (se você quiser configurá-lo). De link :

-H workstation_name

A workstation name. This option sets the sqlcmd scripting variable SQLCMDWORKSTATION. The workstation name is listed in the hostname column of the sys.processes catalog view and can be returned using the stored procedure sp_who. If this option is not specified, the default is the current computer name. This name can be used to identify different sqlcmd sessions.

Você precisa especificar o nome do servidor em -S , junto com a instância. Um ponto significa "local", portanto, você está tentando se conectar com a instância denominada SQLDOTNET em execução na sua máquina local. Você precisa substituir o ponto com o nome do seu servidor SQL remoto (ou seu endereço, se preferir).

Eu também aconselharia conectar-se ao servidor e executar seus comandos interativamente primeiro (como um teste). Veja aqui para uso: link

    
por 14.09.2015 / 15:17