Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
SSIS Integration Runtime em Azure Data Factory
O utilitário de prompt de comando dtutil é usado para gerenciar pacotes do SQL Server Integration Services. O utilitário pode copiar, mover, excluir ou verificar a existência de um pacote. Essas ações podem ser executadas em qualquer pacote SSIS armazenado em um dos três locais: um banco de dados do Microsoft SQL Server, o Repositório de Pacotes SSIS e o sistema de arquivos. Se o utilitário acessar um pacote armazenado no msdb, o prompt de comando pode exigir um nome de usuário e uma senha. Se a instância do SQL Server usar a Autenticação do SQL Server, o prompt de comando exigirá um nome de usuário e uma senha. Se o nome de usuário estiver faltando, o dtutil tentará fazer logon no SQL Server usando a Autenticação do Windows. O tipo de armazenamento do pacote é identificado pelas opções /SQL,/FILE e /DTS .
O utilitário de prompt de comando dtutil não suporta o uso de arquivos de comando ou redirecionamento.
O utilitário de prompt de comando dtutil inclui os seguintes recursos:
Comentários no prompt de comando, o que torna a ação do prompt de comando autodocumentável e mais fácil de entender.
Proteção de substituição, para solicitar uma confirmação antes de substituir um pacote existente quando você estiver copiando ou movendo pacotes.
Ajuda do console, para fornecer informações sobre as opções de comando para dtutil.
Observação
Muitas das operações executadas pelo dtutil também podem ser executadas visualmente no SQL Server Management Studio quando você está conectado a uma instância do Integration Services. Para obter mais informações, consulte Gerenciamento de pacotes (serviço SSIS).
As opções podem ser digitadas em qualquer ordem. O caractere pipe ("|") é o operador OR e é usado para mostrar valores possíveis. Você deve usar uma das opções que são delimitadas pelo tubo OR .
Todas as opções devem começar com uma barra (/) ou um sinal de subtração (-). No entanto, não inclua um espaço entre a barra ou sinal de menos e o texto da opção; caso contrário, o comando falhará.
Os argumentos devem ser cadeias de caracteres entre aspas ou sem espaço em branco.
As aspas duplas dentro de cadeias de caracteres que já estão entre aspas representam aspas simples escapadas.
Opções e argumentos, exceto senhas, não diferenciam maiúsculas de minúsculas.
Considerações sobre a instalação em computadores de 64 bits
Em um computador de 64 bits, o Integration Services instala uma versão de 64 bits do utilitário dtexec (dtexec.exe) e do utilitário dtutil (dtutil.exe). Para instalar versões de 32 bits dessas ferramentas do Integration Services, você deve selecionar Ferramentas de Cliente ou SSDT (SQL Server Data Tools) durante a instalação.
Por padrão, um computador de 64 bits que tenha as versões de 64 bits e 32 bits de um utilitário de prompt de comando do Integration Services instalado executará a versão de 32 bits no prompt de comando. A versão de 32 bits é executada porque o caminho do diretório para a versão de 32 bits aparece na variável de ambiente PATH antes do caminho do diretório para a versão de 64 bits. (Normalmente, o caminho do diretório de 32 bits é <drive>:\Program Files(x86)\Microsoft SQL Server\130\DTS\Binn, enquanto o caminho do diretório de 64 bits é <drive>:\Program Files\Microsoft SQL Server\130\DTS\Binn.)
Observação
Se você usar o SQL Server Agent para executar o utilitário, o SQL Server Agent usará automaticamente a versão de 64 bits do utilitário. O SQL Server Agent usa o Registro, não a variável de ambiente PATH, para localizar o executável correto para o utilitário.
Para garantir que você execute a versão de 64 bits do utilitário no prompt de comando, você pode executar uma das seguintes ações:
Abra uma janela de Prompt de Comando, mude para o diretório que contém a versão de 64 bits do utilitário (<unidade>:\Arquivos de Programas\Microsoft SQL Server\130\DTS\Binn) e execute o utilitário a partir desse local.
Na linha de comandos, execute o utilitário inserindo o caminho completo (<unidade>:\Ficheiros de Programas\Microsoft SQL Server\130\DTS\Binn) para a versão de 64 bits do utilitário.
Altere permanentemente a ordem dos caminhos na variável de ambiente PATH colocando o caminho de 64 bits (<unidade de disco>:\Programas\Microsoft SQL Server\130\DTS\Binn) antes do caminho de 32 bits (<unidade de disco>:\Programas(x86)\Microsoft SQL Server\130\DTS\Binn) na variável.
Sintaxe
dtutil /option [value] [/option [value]]...
Parâmetros
| Opção | Descrição |
|---|---|
| /? | Exibe as opções do prompt de comando. |
| /C[opy] localização; destinationPathandPackageName | Especifica uma ação de cópia em um pacote SSIS. O uso desse parâmetro requer que você primeiro especifique o local do pacote usando a opção /FI,/SQ ou /DT . Em seguida, especifique o nome do pacote para o local de destino. O argumento destinationPathandPackageName especifica para onde o pacote SSIS é copiado. Se a localização de destino for SQL, os argumentos DestUser, DestPassword e DestServer também deverão ser especificados no comando. Quando a ação Copiar encontra um pacote existente no destino, o dtutil solicita que o usuário confirme a exclusão do pacote. A resposta Y substitui o pacote e a resposta N termina o programa. Quando o comando inclui o argumento Quiet , nenhum prompt aparece e qualquer pacote existente é substituído. |
| /Dec[rypt] senha | (Opcional). Define a senha de descriptografia que é usada quando você carrega um pacote com criptografia de senha. |
| /Eliminar | Exclui o pacote especificado pela opção SQL,DTS ou FILE . Se dtutil não pode excluir o pacote, o programa termina. |
| /DestP[assword] senha | Especifica a senha usada com a opção SQL para se conectar a uma instância do SQL Server de destino usando a Autenticação do SQL Server. Um erro é gerado se DESTPASSWORD é especificado em uma linha de comando que não inclui a opção DTSUSER . Nota: Quando possível, use a autenticação do Windows.. |
| /DestS[erver] server_instance | Especifica o nome do servidor que é usado com qualquer ação que faz com que um destino seja salvo no SQL Server. Ele é usado para identificar um servidor não local ou não padrão ao salvar um pacote SSIS. É um erro especificar DESTSERVER em uma linha de comando que não tem uma ação associada ao SQL Server. Ações como as opções SIGN SQL,COPY SQL ou MOVE SQL seriam comandos apropriados para combinar com essa opção. Um nome de instância do SQL Server pode ser especificado adicionando uma barra invertida e o nome da instância ao nome do servidor. |
| /DestU[ser] nome de usuário | Especifica o nome de usuário usado com as opções SIGN SQL,COPY SQL e MOVE SQL para se conectar a uma instância do SQL Server que usa a Autenticação do SQL Server. É um erro especificar DESTUSER em uma linha de comando que não inclui a opção SIGN SQL,COPY SQL ou MOVE SQL . |
| /Despejo ID do processo | (Opcional) Faz com que o processo especificado, seja o utilitário dtexec ou o processo dtsDebugHost.exe, pause e crie os arquivos de despejo de depuração .mdmp e .tmp. Nota: Para usar a opção /Dump , você deve receber o direito de usuário Debug Programs (SeDebugPrivilege). Para localizar a ID do processo que pretende pausar, utilize o Gestor de Tarefas do Windows. Por predefinição, o Integration Services armazena os arquivos de despejo de depuração na pasta <drive>:\Program Files\Microsoft SQL Server\130\Shared\ErrorDumps. Para obter mais informações sobre o utilitário dtexec e o processo dtsDebugHost.exe , consulte Utilitário dtexec e Construindo, implantando e depurando objetos personalizados. Para obter mais informações sobre ficheiros de despejo de depuração, consulte Criar Ficheiros de Despejo para Execução de Pacote. Nota: Os arquivos de despejo de depuração podem conter informações confidenciais. Use uma lista de controle de acesso (ACL) para restringir o acesso aos arquivos ou copie os arquivos para uma pasta com acesso restrito. |
| /DT[S] filespec | Especifica que o pacote SSIS a ser operado está localizado no Repositório de Pacotes SSIS. O argumento filespec deve incluir o caminho da pasta, começando com a raiz do Repositório de Pacotes SSIS. Por padrão, os nomes das pastas raiz no arquivo de configuração são "MSDB" e "File System". Os caminhos que contêm um espaço devem ser delimitados usando aspas duplas. Se a opção DT[S] for especificada na mesma linha de comando que qualquer uma das seguintes opções, uma DTEXEC_DTEXECERROR será retornada: ARQUIVO SQL UTILIZADOR ORIGINAL SOURCEPASSWORD SERVIDOR DE ORIGEM |
| /En[crypt] {SQL | ARQUIVO}; Caminho; Nível de Proteção[; palavra-passe] | (Opcional). Criptografa o pacote carregado com o nível de proteção e a senha especificados e o salva no local especificado em Caminho. O ProtectionLevel determina se uma senha é necessária. SQL - Path é o nome do pacote de destino. FILE - Path é o caminho totalmente qualificado e o nome do arquivo para o pacote. DTS - Esta opção não é suportada atualmente. Opções de nível de proteção : Nível 0: Elimina informações confidenciais. Nível 1: Informações confidenciais são criptografadas usando credenciais de usuário local. Nível 2: As informações confidenciais são criptografadas usando a senha necessária. Nível 3: O pacote é criptografado usando a senha necessária. Nível 4: O pacote é criptografado usando credenciais de usuário local. O Pacote de Nível 5 usa criptografia de armazenamento do SQL Server. |
| /Ex[iste] | (Opcional). Usado para determinar se um pacote existe. dtutil tenta localizar o pacote especificado pelas opções SQL,DTS ou FILE . Se dtutil não puder localizar o pacote especificado, um DTEXEC_DTEXECERROR será retornado. |
| /FC[reate] {SQL | DTS};ParentFolderPath; NewFolderName | (Opcional). Crie uma nova pasta que tenha o nome especificado em NewFolderName. O local da nova pasta é indicado pelo ParentFolderPath. |
| /FDe[lete] {SQL | DTS}[;ParentFolderPath; Nome da pasta] | (Opcional). Exclui do SQL Server ou SSIS a pasta que foi especificada pelo nome em FolderName. O local da pasta a ser excluída é indicado pelo ParentFolderPath. |
| /FDi[diretório] {SQL | DTS};FolderPath[;S] | (Opcional). Lista o conteúdo, pastas e pacotes, em uma pasta no SSIS ou no SQL Server. O parâmetro opcional FolderPath especifica a pasta da qual você deseja exibir o conteúdo. O parâmetro S opcional especifica que você deseja exibir uma listagem do conteúdo das subpastas para a pasta especificada em FolderPath. |
| /FE[xists ] {SQL | DTS};FolderPath | (Opcional). Verifica se a pasta especificada existe no SSIS ou no SQL Server. O parâmetro FolderPath é o caminho e o nome da pasta a ser verificada. |
| /Fi[le] filespec | Esta opção especifica que o pacote SSIS a ser operado está localizado no sistema de arquivos. O valor filespec pode ser fornecido como um caminho UNC (Convenção de Nomenclatura Universal) ou caminho local. Se a opção Arquivo for especificada na mesma linha de comando que qualquer uma das seguintes opções, uma DTEXEC_DTEXECERROR será retornada: DTS SQL UTILIZADOR ORIGINAL SOURCEPASSWORD SERVIDOR DE ORIGEM |
| /FR[ename] {SQL | DTS} [;ParentFolderPath; OldFolderName; NewFolderName] | (Opcional). Renomeia uma pasta no SSIS ou no SQL Server. O ParentFolderPath é o local da pasta a ser renomeada. O OldFolderName é o nome atual da pasta e NewFolderName é o novo nome a ser dado à pasta. |
| Opção /H[elp] | Exibe texto de ajuda extensiva que mostra as opções dtutil e descreve seu uso. O argumento opção é opcional. Se o argumento for incluído, o texto da Ajuda incluirá informações detalhadas sobre a opção especificada. O exemplo a seguir exibe ajuda para todas as opções:dtutil /HOs dois exemplos a seguir mostram como usar a opção /H para exibir a ajuda estendida para uma opção específica, a opção /Q [uiet], neste exemplo: dtutil /Help Quietdtutil /H Q |
| /I[DRegenerate] | Cria um novo GUID para o pacote e atualiza a propriedade ID do pacote. Quando um pacote é copiado, o ID do pacote permanece o mesmo; portanto, os arquivos de log contêm o mesmo GUID para ambos os pacotes. Esta ação cria um novo GUID para o pacote recém-copiado para distingui-lo do original. |
| /M[ove] {SQL | Arquivo | DTS}; pathandname | Especifica uma ação de movimentação em um pacote SSIS. Para usar esse parâmetro, primeiro especifique o local do pacote usando a opção /FI,/SQ ou /DT . Em seguida, especifique a ação Mover . Esta ação requer dois argumentos, que são separados por um ponto-e-vírgula: O argumento de destino pode especificar SQL,FILE ou DTS. Um destino SQL pode incluir as opções DESTUSER,DESTPASSWORD eDESTSERVER . O argumento pathandname especifica o local do pacote: SQL usa o caminho do pacote e o nome do pacote, FILE usa um UNC ou caminho local e DTS usa um local relativo à raiz do Repositório de Pacotes SSIS. Quando o destino é FILE ou DTS, o argumento path não inclui o nome do arquivo. Em vez disso, ele usa o nome do pacote no local especificado como o nome do arquivo. Quando a ação MOVE encontra um pacote existente no destino, o dtutil solicita que você confirme que deseja substituir o pacote. A resposta Y substitui o pacote e a resposta N termina o programa. Quando o comando inclui a opção QUIET , nenhum prompt aparece e qualquer pacote existente é substituído. |
| /Q[uiet] | Interrompe os prompts de confirmação que podem aparecer quando um comando incluindo a opção COPY,MOVE ou SIGN é executado. Esses prompts aparecerão se um pacote com o mesmo nome do pacote especificado já existir no computador de destino ou se o pacote especificado já estiver assinado. |
| /R[emark] texto | Adiciona um comentário à linha de comando. O argumento comment é opcional. Se o texto do comentário incluir espaços, o texto deverá ser colocado entre aspas. Você pode incluir várias opções REM em uma linha de comando. |
| /si[gn] {SQL | Arquivo | DTS}; caminho; hash | Assina um pacote SSIS. Esta ação usa três argumentos necessários, que são separados por ponto-e-vírgula; Destino, caminho e hash: O argumento de destino pode especificar SQL,FILE ou DTS. Um destino SQL pode incluir as opções DESTUSER,DESTPASSWORD e DESTSERVER . O argumento path especifica o local do pacote no qual a ação será executada. O argumento hash especifica um identificador de certificado expresso como uma cadeia hexadecimal de comprimento variável. Para obter mais informações, consulte Identificar a origem dos pacotes com assinaturas digitais. ** Importante ** Quando configurado para verificar a assinatura do pacote, o Integration Services verifica apenas se a assinatura digital está presente, é válida e é de uma fonte confiável. O Integration Services não verifica se o pacote foi alterado. |
| /SourceP[assword] palavra-passe | Especifica a senha usada com as opções SQL e SOURCEUSER para habilitar a recuperação de um pacote SSIS armazenado em um banco de dados em uma instância do SQL Server que usa a Autenticação do SQL Server. É um erro especificar SOURCEPASSWORD em uma linha de comando que não inclui a opção SOURCEUSER . Nota: Quando possível, use a autenticação do Windows. |
| /SourceS[erver] server_instance | Especifica o nome do servidor usado com a opção SQL para habilitar a recuperação de um pacote SSIS armazenado no SQL Server. É um erro especificar SOURCESERVER em uma linha de comando que não inclui a opção SIGN SQL,COPYSQL ou MOVESQL . Um nome de instância do SQL Server pode ser especificado adicionando uma barra invertida e o nome da instância ao nome do servidor. |
| /SourceU[ser] nome de usuário | Especifica o nome de usuário usado com a opção SOURCESERVER para habilitar a recuperação de um pacote SSIS armazenado no SQL Server usando a Autenticação do SQL Server. É um erro especificar SOURCEUSER em uma linha de comando que não inclui a opção SIGN SQL,COPY SQL ou MOVE SQL . Nota: Quando possível, use a autenticação do Windows. |
| /SQ[L] package_path | Especifica o local de um pacote SSIS. Essa opção indica que o pacote está armazenado no banco de dados msdb . O argumento package_path especifica o caminho e o nome do pacote SSIS. Os nomes das pastas são terminados com barras invertidas. Se a opção SQL for especificada na mesma linha de comando que qualquer uma das seguintes opções, uma DTEXEC_DTEXECERROR será retornada: DTS ARQUIVO A opção SQL pode ser acompanhada por zero ou uma instância das seguintes opções: UTILIZADOR ORIGINAL SOURCEPASSWORD SERVIDOR DE ORIGEM Se SOURCEUSERNAME não estiver incluído, a Autenticação do Windows será usada para acessar o pacote. SOURCEPASSWORD só é permitido se SOURCEUSER estiver presente. Se SOURCEPASSWORD não estiver incluído, uma senha em branco será usada. ** Importante ** Não utilize uma palavra-passe em branco. Use uma senha forte. |
dtutil Códigos de saída
DTUTIL define um código de saída que alerta quando erros de sintaxe são detetados, argumentos incorretos são usados ou combinações inválidas de opções são especificadas. Caso contrário, o utilitário informa "A operação foi concluída com êxito". A tabela a seguir lista os valores que o utilitário dtutil pode definir ao sair.
| Valor | Descrição |
|---|---|
| 0 | O utilitário foi executado com êxito. |
| 1 | O utilitário falhou. |
| 4 | O utilitário não pode localizar o pacote solicitado. |
| 5 | O utilitário não pode carregar o pacote solicitado |
| 6 | O utilitário não pode resolver a linha de comando porque contém erros sintáticos ou semânticos. |
Observações
Não é possível usar arquivos de comando ou redirecionamento com dtutil.
A ordem das opções dentro da linha de comando não é significativa.
Exemplos
Os exemplos a seguir detalham cenários típicos de uso de linha de comando.
Copiar exemplos
Para copiar um pacote armazenado no banco de dados msdb em uma instância local do SQL Server usando a Autenticação do Windows para o Repositório de Pacotes SSIS, use a seguinte sintaxe:
dtutil /SQL srcPackage /COPY DTS;destFolder\destPackage
Para copiar um pacote de um local no sistema de arquivos para outro local e dar à cópia um nome diferente, use a seguinte sintaxe:
dtutil /FILE c:\myPackages\mypackage.dtsx /COPY FILE;c:\myTestPackages\mynewpackage.dtsx
Para copiar um pacote no sistema de arquivos local para uma instância do SQL Server hospedada em outro computador, use a seguinte sintaxe:
dtutil /FILE c:\sourcepkg.dtsx /DestServer <servername> /COPY SQL;destpkgname
Como as opções /DestU[ser] e /DestP[assword] não foram usadas , a Autenticação do Windows é assumida.
Para criar uma nova ID para um pacote depois que ele for copiado, use a seguinte sintaxe:
dtutil /I /FILE copiedpkg.dtsx
Para criar uma nova ID para todos os pacotes em uma pasta específica, use a seguinte sintaxe:
for %%f in (C:\test\SSISPackages\*.dtsx) do dtutil.exe /I /FILE %%f
Use um único sinal de porcentagem (%) ao digitar o comando no prompt de comando. Use um sinal de porcentagem dupla (%%) se o comando for usado dentro de um arquivo em lotes.
Excluir exemplos
Para excluir um pacote armazenado no banco de dados msdb em uma instância do SQL Server que usa a Autenticação do Windows, use a seguinte sintaxe:
dtutil /SQL delPackage /DELETE
Para excluir um pacote armazenado no banco de dados msdb em uma instância do SQL Server que usa a Autenticação do SQL Server, use a seguinte sintaxe:
dtutil /SQL delPackage /SOURCEUSER srcUserName /SOURCEPASSWORD #8nGs*w7F /DELETE
Observação
Para excluir um pacote de um servidor nomeado, inclua a opção SOURCESERVER e seu argumento. Você só pode especificar um servidor usando a opção SQL .
Para excluir um pacote armazenado no Repositório de Pacotes SSIS, use a seguinte sintaxe:
dtutil /DTS delPackage.dtsx /DELETE
Para excluir um pacote armazenado no sistema de arquivos, use a seguinte sintaxe:
dtutil /FILE c:\delPackage.dtsx /DELETE
Exemplos existentes
Para determinar se existe um pacote no banco de dados msdb em uma instância local do SQL Server que usa a Autenticação do Windows, use a seguinte sintaxe:
dtutil /SQL srcPackage /EXISTS
Para determinar se existe um pacote no banco de dados msdb em uma instância local do SQL Server que usa a Autenticação do SQL Server, use a seguinte sintaxe:
dtutil /SQL srcPackage /SOURCEUSER srcUserName /SOURCEPASSWORD *hY$d56b /EXISTS
Observação
Para determinar se um pacote existe em um servidor nomeado, inclua a opção SOURCESERVER e seu argumento. Você só pode especificar um servidor usando a opção SQL.
Para determinar se um pacote existe no repositório de pacotes local, use a seguinte sintaxe:
dtutil /DTS srcPackage.dtsx /EXISTS
Para determinar se existe um pacote no sistema de arquivos local, use a seguinte sintaxe:
dtutil /FILE c:\srcPackage.dtsx /EXISTS
Exemplos de movimentação
Para mover um pacote armazenado no Repositório de Pacotes SSIS para o banco de dados msdb em uma instância local do SQL Server que usa a Autenticação do Windows, use a seguinte sintaxe:
dtutil /DTS srcPackage.dtsx /MOVE SQL;destPackage
Para mover um pacote armazenado no banco de dados msdb em uma instância local do SQL Server que usa a Autenticação do SQL Server para o banco de dados msdb em outra instância local do SQL Server que usa a Autenticação do SQL Server, use a seguinte sintaxe:
dtutil /SQL srcPackage /SOURCEUSER srcUserName /SOURCEPASSWORD $Hj45jhd@X /MOVE SQL;destPackage /DESTUSER destUserName /DESTPASSWORD !38dsFH@v
Observação
Para mover um pacote de um servidor nomeado para outro, inclua a opção SOURCES e DESTS e seus argumentos. Você só pode especificar servidores usando a opção SQL .
Para mover um pacote armazenado no Repositório de Pacotes SSIS, use a seguinte sintaxe:
dtutil /DTS srcPackage.dtsx /MOVE DTS;destPackage.dtsx
Para mover um pacote armazenado no sistema de arquivos, use a seguinte sintaxe:
dtutil /FILE c:\srcPackage.dtsx /MOVE FILE;c:\destPackage.dtsx
Exemplos de sinais
Para assinar um pacote armazenado em um banco de dados do SQL Server em uma instância local do SQL Server que usa a Autenticação do Windows, use a seguinte sintaxe:
dtutil /FILE srcPackage.dtsx /SIGN FILE;destpkg.dtsx;1767832648918a9d989fdac9819873a91f919
Para localizar informações sobre seu certificado, use CertMgr. O código hash pode ser visualizado no utilitário CertMgr selecionando o certificado e clicando em Exibir para exibir as propriedades. A guia Detalhes fornece mais informações sobre o certificado. A propriedade Thumbprint é usada como o valor de hash, com espaços removidos.
Observação
O hash usado neste exemplo não é um hash real.
Para obter mais informações, consulte a seção CertMgr em Assinando e verificando código com Authenticode.
Exemplos de criptografia
O exemplo a seguir criptografa o PackageToEncrypt.dtsx baseado em arquivo para o EncryptedPackage.dts baseado em arquivo usando criptografia de pacote completo, com uma senha. A senha usada para a criptografia é EncPswd.
dtutil /FILE PackageToEncrypt.dtsx /ENCRYPT file;EncryptedPackage.dtsx;3;EncPswd