Como interesse, se eu fizer a transição de um SQL Server DBA para Oracle, qual será o principal aprendizado ou desaprendizado que eu teria que fazer?
Eu diria que os conceitos são os mesmos e a diferença é apenas a linguagem de programação, mas não vi o outro lado da porta.
O Oracle e o SQL Server têm várias diferenças arquitetônicas e idiomáticas, e várias partes importantes da terminologia são usadas de maneira diferente na documentação. Faz alguns anos desde que fiz isso, mas algumas das principais diferenças idiomáticas são:
O Oracle não tem equivalente direto ao tempdb. As tabelas temporárias globais são entidades persistentes e você não as cria instantaneamente como faria com uma tabela temporária no SQL Server.
O PL/SQL idiomático é muito mais processual do que o T-SQL idiomático. Por outro lado, o PL/SQL possui recursos para oferecer suporte a operações rápidas de cursor, incluindo construções de loop paralelo. Freqüentemente, os resultados intermediários do cursor são usados de maneiras semelhantes às coisas de classificação para as quais alguém usaria tabelas temporárias no SQL Server. Procure como usar '%' para obter algum polimorfismo nos tipos de variável do cursor.
O SQL*Plus é uma ferramenta de linha de comando semelhante ao SQLCMD. Em uma instalação vanilla, pode ser tudo o que você tem disponível. Se você deseja uma ferramenta GUI como o SSMS, pode obter o SQL Developer ou ferramentas de terceiros, como o TOAD. TOAD é muito caro.
Aprenda a função dos segmentos de rollback (usados no MVCC da Oracle) e as alegrias do erro 'instantâneo muito antigo'.
Obtenha uma conta metalink, se possível.
Leia o guia de conceitos. Tem muitas informações úteis para iniciantes.
Tablespaces são aproximadamente equivalentes a grupos de arquivos.
SQL e o dialeto SQL embutido no PL/SQL não são exatamente a mesma coisa no Oracle.
A Oracle não suportava CTEs recursivos até bem recentemente. Você pode fazer consultas recursivas com CONNECT BY.
Leia os documentos do RMAN para ver como fazer backups. Você pode fazer alguns truques legais, como mesclar backups diferenciais em um único backup restaurável.
O dicionário de dados do sistema possui as versões 'ALL', 'USER' e 'DBA' das tabelas. 'USER_ ' mostra objetos pertencentes ao login. 'ALL_ ' mostra todos os objetos que o login pode ler. 'DBA_*' é uma exibição global, mas você precisa ter as permissões apropriadas para vê-la. Você provavelmente usará mais o dicionário de dados com o Oracle do que com o SQL Server, portanto, conheça-o.
As tabelas agrupadas são chamadas de 'tabelas ordenadas por índice' no Oracle. 'Tabelas agrupadas' no Oracle referem-se a um recurso muito diferente. No Oracle, uma tabela em cluster é um recurso que permite que o armazenamento físico de tabelas master/detail seja combinado com base em uma chave comum. O recurso não é amplamente utilizado.
Visualizações indexadas são chamadas de 'visualizações materializadas' no Oracle. Eles funcionam de maneira um pouco diferente, com nuances suficientes para merecer sua própria pergunta.
O Oracle não possui um conceito equivalente a um 'banco de dados' no SQL Server. No Oracle, um esquema é apenas o proprietário de alguns objetos do banco de dados.
PL/SQL tem uma estrutura de módulo explícita chamada 'pacotes'.
Veja como usar sequências em vez de colunas de identidade.
Obter um plano de consulta é um pouco mais complicado em versões mais antigas do Oracle (anteriores a 10g). Você tem que criar uma tabela (do formato certo) para despejar o plano, então 'EXPLAIN PLAN' a consulta na tabela para obter o plano de consulta. Você pode obter o plano de consulta de volta da tabela. Todos e seus cães têm consultas de plano de consulta favoritas. Faça uma pesquisa no Google e encontre um, depois frite a gosto. 10g adicionou um pacote chamado dbms_xplan , que simplifica o trabalho com planos de consulta.
Se você estiver executando o Oracle em um host unix ou linux, ter um conhecimento prático de scripts de shell não faria mal.
O Oracle tem suporte para transações autônomas - você pode confirmar uma transação autônoma interna e esperar que ela permaneça confirmada se o pai reverter. As transações aninhadas do SQL Server não são transações aninhadas verdadeiras e têm semântica diferente. Você pode emular esse comportamento com um procedimento armazenado CLR no SQL Server abrindo uma conexão independente e executando a operação autônoma por meio dela.
A Oracle vem com menos ferramentas de BI prontas para uso, embora a Oracle venda servidores OLAP, ferramentas de relatórios e ferramentas ETL.
A Oracle agrupa uma ferramenta de carregamento em massa chamada SQL*Loader que é semelhante em função ao bcp.
O equivalente mais próximo do SSIS é o Oracle Warehouse Builder (OWB), mas este é um item separado e não vem junto com o sistema básico.
A Oracle cria uma ferramenta de relatórios chamada Oracle Reports , mas ela também não está incluída no sistema básico. Este é o equivalente mais próximo do Reporting Services.
A Oracle também faz uma ferramenta ROLAP chamada Discoverer . Este é o produto mais próximo do Report Builder produzido pela Oracle. Versões mais recentes ('Drake') têm suporte para o mecanismo OLAP da Oracle.
A Oracle costumava ter um produto OLAP chamado Express. A certa altura, eles o incorporaram ao mecanismo principal do Oracle DBMS, armazenando suas estruturas de dados nativas em blobs opacos. Não é totalmente compatível com o Express e possui uma interface proprietária com muito pouco suporte de ferramentas front-end OLAP de terceiros.
O Oracle BI Enterprise Edition é o que costumava ser o Siebel Analytics. Isso tem alguma funcionalidade OLAP, mas não estou familiarizado com isso. Talvez alguém que já tenha usado queira comentar. Sem admitir diretamente que o Siebel era um produto completamente separado de suas próprias ferramentas de BI, a Oracle afirmou que não havia "caminho de atualização" do Oracle BI Standard Edition para o Enterprise Edition. Observe que as suítes Standard e Enterprise BI são produtos separados e não agrupados com o sistema básico.
Na prática, o mais próximo do SSAS vendido pela Oracle é o Essbase (antigo Hyperion). Este é um produto separado e não vem junto com o sistema básico.
Não surpreendentemente, a estratégia de BI da Oracle é vista pelos especialistas do setor como uma espécie de café da manhã para cães.
Provavelmente há outras coisas que não consigo pensar em OTOH; Vou adicioná-los como eu penso neles.
Trabalhamos com Oracle e SQL Server, e nossa líder de DBA, Michelle Malcher, frequentemente ajuda colegas de trabalho nessa transição. Com base nessa experiência, ela escreveu um livro intitulado "Oracle Database Administration for Microsoft SQL Server DBAs (Oracle Press)". Eu gostei deste livro.
Não tenho certeza se recomendar um livro de um colega de trabalho é apropriado para este site. Não me reporto a Michelle, lidero uma equipe de desenvolvedores.