Compartilhar via


Conectar-se a um banco de dados Oracle (OracleToSQL)

Para migrar bancos de dados Oracle para o SQL Server, você deve se conectar ao banco de dados Oracle que deseja migrar. Quando você se conecta, o SSMA (Assistente de Migração do SQL Server) obtém metadados sobre todos os esquemas Oracle e os exibe no painel Gerenciador de Metadados do Oracle. O SSMA armazena informações sobre o servidor de banco de dados, mas não armazena senhas.

Sua conexão com o banco de dados permanece ativa até que você feche o projeto. Ao reabrir o projeto, você deve se reconectar se desejar uma conexão ativa com o banco de dados.

Os metadados sobre o banco de dados Oracle não são atualizados automaticamente. Em vez disso, se quiser atualizar os metadados no Explorador de Metadados Oracle, você deverá atualizá-los manualmente. Para obter mais informações, consulte a seção Atualização de metadados do Oracle neste artigo.

Permissões do Oracle obrigatórias

No mínimo, a conta usada para se conectar ao banco de dados Oracle deve ter as seguintes permissões:

Permissão Descrição
CONNECT Requisito para se conectar (criar uma sessão) ao banco de dados.
SELECT ANY DICTIONARY Requisito para consultar tabelas de dicionário do sistema (por exemplo, SYS.MLOG$) para descobrir todos os objetos.

Isso permite que o SSMA carregue todos os objetos no esquema de propriedade do usuário que se conecta. Na maioria dos cenários do mundo real, há referências de esquema cruzado entre procedimentos armazenados, e o SSMA precisa ser capaz de descobrir todos os objetos referenciados para uma conversão bem-sucedida. Para obter metadados para objetos definidos em outros esquemas, a conta deve ter as seguintes permissões extras:

Permissão Descrição
SELECT ANY TABLE Requisito para descobrir tabelas, exibições, exibições materializadas e sinônimos em outros esquemas.
SELECT ANY SEQUENCE Requisito para descobrir sequências em outros esquemas.
CREATE ANY PROCEDURE Necessário para descobrir PL/SQL para procedimentos, funções e pacotes em outros esquemas.
CREATE ANY TRIGGER Requisito para descobrir definições de gatilho em outros esquemas.
CREATE ANY TYPE Requisito para descobrir tipos definidos em outros esquemas.

Alguns dos recursos do SSMA exigem permissões extras. Por exemplo, se você quiser usar a funcionalidade Teste de Objetos de Banco de Dados Migrados (OracleToSQL) e Gerenciamento de Backups (OracleToSQL), precisará conceder ao usuário conectado as seguintes permissões:

Permissão Descrição
EXECUTE ANY PROCEDURE Requisito para executar procedimentos e funções que você gostaria de testar em todos os esquemas.
CREATE ANY TABLE e ALTER ANY TABLE Requisito para criar e modificar tabelas temporárias para controle de alterações e backups.
INSERT ANY TABLE e UPDATE ANY TABLE Requisito para inserir dados de controle de alterações e backup em tabelas temporárias.
DROP ANY TABLE Requisito para descartar tabelas temporárias usadas para controle de alterações e backups.
CREATE ANY INDEX e ALTER ANY INDEX Requisito para criar e modificar índices em tabelas temporárias usadas para controle de alterações e backups.
DROP ANY INDEX Requisito para descartar índices em tabelas temporárias usadas para controle de alterações e backups.
CREATE ANY TRIGGER e ALTER ANY TRIGGER Requisito para criar e modificar gatilhos temporários usados para controle de alterações.
DROP ANY TRIGGER Requisito para descartar gatilhos temporários usados para controle de alterações.

Este é um conjunto genérico de permissões necessárias para que o SSMA funcione corretamente. Se desejar restringir o escopo da migração a um subconjunto de esquemas, você poderá fazê-lo concedendo permissões acima ao conjunto limitado de objetos, em vez de ALL. Embora possível, pode ser difícil identificar corretamente todas as dependências, impedindo assim que o SSMA funcione corretamente. É altamente recomendável que você mantenha o conjunto genérico conforme definido anteriormente, para eliminar possíveis problemas de permissão durante o processo de migração.

Estabelecer uma conexão com o Oracle

Quando você se conecta a um banco de dados, o SSMA lê os metadados do banco de dados e adiciona esses metadados ao arquivo de projeto. Esses metadados são usados pelo SSMA quando converte objetos em sintaxe do SQL Server e quando migra dados para o SQL Server. Você pode procurar esses metadados no painel Explorador de Metadados do Oracle e revisar as propriedades de objetos de banco de dados individuais.

Importante

Antes de tentar se conectar, verifique se o servidor de banco de dados está em execução e pode aceitar conexões.

Conecte-se ao Oracle

  1. No menu Arquivo, selecione Conectar ao Oracle.

    Se você se conectou anteriormente ao Oracle, o nome do comando será Reconectar ao Oracle.

  2. Na caixa Provedor, selecione Provedor do Cliente Oracle ou Provedor OLE DB, dependendo de qual provedor está instalado. O padrão é o cliente Oracle.

  3. Na caixa Modo, selecione Modo padrão, Modo TNSNAME ou Modo cadeia de conexão.

    Use o modo padrão para especificar o nome e a porta do servidor. Use o modo de nome de serviço para especificar o nome do serviço Oracle manualmente. Use o modo de cadeia de conexão para fornecer uma cadeia de conexão completa.

  4. Se você selecionar o modo Padrão, forneça os seguintes valores:

    1. Na caixa Nome do servidor, digite ou selecione o nome ou endereço IP do servidor do banco de dados.

    2. Se o servidor de banco de dados não estiver configurado para aceitar conexões na porta padrão (1521), digite o número da porta usada para conexões Oracle na caixa Porta do servidor.

    3. Na caixa Oracle SID, insira o identificador do sistema.

    4. Na caixa Nome de usuário, insira uma conta Oracle que tenha as permissões necessárias.

    5. Na caixa Senha, digite a senha do nome de usuário especificado.

  5. Se você selecionar o modo TNSNAME, forneça os seguintes valores:

    1. Na caixa Identificador de conexão, insira o identificador de conexão (alias TNS) do banco de dados.
    2. Na caixa Nome de usuário, insira uma conta Oracle que tenha as permissões necessárias.
    3. Na caixa Senha, digite a senha do nome de usuário especificado.
  6. Se você selecionar Modo de cadeia de conexão, forneça uma cadeia de conexão na caixa Cadeia de conexão.

    O exemplo a seguir mostra uma cadeia de conexão OLE DB:

    Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;

    O exemplo a seguir mostra uma cadeia de conexão do Cliente Oracle que usa segurança integrada:

    Data Source=MyOracleDB;Integrated Security=yes;

    Para obter mais informações, consulte Conectar-se ao Oracle (OracleToSQL).

Reconectar-se ao Oracle

Sua conexão com o servidor de banco de dados permanece ativa até que você feche o projeto. Ao reabrir o projeto, você deve se reconectar se desejar uma conexão ativa com o banco de dados. Você pode trabalhar offline até atualizar metadados, carregar objetos de banco de dados no SQL Server e migrar dados.

Atualizar metadados Oracle

Os metadados sobre o banco de dados Oracle não são atualizados automaticamente. Os metadados no Explorador de Metadados Oracle são um instantâneo dos metadados quando você se conectou pela primeira vez ou na última vez que atualizou manualmente os metadados. Você pode atualizar manualmente os metadados para todos os esquemas, um único esquema ou objetos de banco de dados individuais.

  1. Verifique se você está conectado ao banco de dados.

  2. No Explorador de Metadados Oracle, marque a caixa de seleção ao lado de cada esquema ou objeto de banco de dados que você deseja atualizar.

  3. Clique com o botão direito do mouse em Esquemas ou no esquema individual ou no objeto de banco de dados e selecione Atualizar do Banco de Dados. Se você não tiver uma conexão ativa, o SSMA exibirá a caixa de diálogo Conectar ao Oracle para que você possa se conectar.

  4. Na caixa de diálogo Atualizar do Banco de Dados, especifique quais objetos atualizar.

    • Para atualizar um objeto, selecione o campo Ativo ao lado do objeto até que uma seta apareça.
    • Para impedir que um objeto seja atualizado, selecione o campo Ativo ao lado do objeto até que um X apareça.
    • Para atualizar ou recusar uma categoria de objetos, selecione o campo Ativo ao lado da pasta de categoria.

    Para exibir as definições da codificação de cores, selecione o botão Legenda.

  5. Selecione OK.