AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-11315

Centurion's questions

Martin Hope
Centurion
Asked: 2013-02-15 00:15:13 +0800 CST

Qual é a diferença entre clusterware Oracle e Real Application Clusters?

  • 1

Qual é a diferença entre clusterware Oracle e Real Application Clusters? Se tivermos 2 servidores e quisermos juntá-los em um cluster, por que existem dois produtos de software separados?

oracle clustering
  • 1 respostas
  • 5926 Views
Martin Hope
Centurion
Asked: 2013-02-13 00:14:08 +0800 CST

Quantas licenças de banco de dados precisamos para configurar 2 servidores (nós) em um cluster?

  • 2

Suponha que temos um servidor que possui apenas 1 CPU com 1 núcleo, então precisamos de 1 licença de banco de dados Oracle para instalar um banco de dados nele. Agora, se precisarmos adicionar um segundo servidor, combiná-los em cluster e instalar o banco de dados nele, quantas licenças precisaremos - 2 licenças de banco de dados e 1 licença de clusterware ou 1 licença de banco de dados e 1 licença de cluster? Não tenho certeza, como o Oracle trata os servidores de cluster da Oracle - como um servidor ou ainda como servidores separados? Como precisaríamos comprar software de cluster caro da Oracle, seria lógico para a Oracle tratar os servidores associados como um só.

oracle clustering
  • 1 respostas
  • 3921 Views
Martin Hope
Centurion
Asked: 2012-12-09 10:58:56 +0800 CST

Qual estrutura é usada para armazenar os índices de texto CONTEXT, CTXCAT e CTXRULE do Oracle?

  • 0

AFAIK, existem três tipos principais de estrutura usados ​​para armazenar dados de índice do Oracle: B-tree, R-tree e Bitmap. Todos os índices usam uma dessas estruturas. No entanto, não tenho certeza sobre os índices de texto CONTEXT, CTXCAT e CTXRULE Oracle...

oracle index
  • 1 respostas
  • 557 Views
Martin Hope
Centurion
Asked: 2012-12-09 08:52:06 +0800 CST

Quais são as alternativas para índices prefixados no Oracle?

  • 1

Você pode criar um índice e definir o comprimento do prefixo, para que o índice armazene apenas os primeiros símbolos iniciais de cada valor da coluna. Fica assim no MySQL:

CREATE INDEX table_idx ON emp(last_name(8));

Existe uma alternativa de como fazer isso no Oracle?

oracle index
  • 2 respostas
  • 664 Views
Martin Hope
Centurion
Asked: 2012-12-09 08:42:08 +0800 CST

Quando os índices de hash devem ser usados ​​no Oracle?

  • 0

Os índices de hash são úteis quando você tem uma tabela grande com URLs e precisa consultar por eles. Portanto, uma solução seria ter uma coluna adicional "url_crc32" que será preenchida com o valor da URL com hash por meio do gatilho nas inserções. Um índice em url_crc32 seria definitivamente mais rápido do que o índice na coluna URL que é um tipo de texto.

Não é muito comum consultar dados por URL. O caso mais frequente seria consultar dados de texto por fragmento e os índices de hash são inúteis nesse caso. Então, estou curioso para saber se você usa esses índices de hash e, em caso afirmativo, quando você usa? IMHO Oracle não possui índices de hash nativos, portanto, isso deve ser feito manualmente.

oracle index
  • 1 respostas
  • 6111 Views
Martin Hope
Centurion
Asked: 2012-11-26 07:30:56 +0800 CST

É possível monitorar a função e conceder/revogar privilégios usando gatilhos?

  • 2

É possível monitorar a função e conceder/revogar privilégios usando gatilhos? Estou ciente de fazer isso usando as ferramentas de auditoria da Oracle, no entanto, é interessante se é possível fazer isso usando gatilhos.

oracle trigger
  • 3 respostas
  • 5348 Views
Martin Hope
Centurion
Asked: 2012-11-26 07:19:45 +0800 CST

Qual é a diferença entre os gatilhos ON SCHEMA e ON DATABASE?

  • 8

Podemos criar o gatilho do banco de dados em um evento de esquema concreto (ON SCOTT.SCHEMA) ou em todos os esquemas (ON SCHEMA). No entanto, também podemos usar ON DATABASE ao criar o gatilho do banco de dados. Qual a diferença entre eles? É alguma coisa herdada? ON DATABASE deve ser usado ao usar AFTER STARTUP ou AFTER STARTUP porque definitivamente está relacionado apenas ao banco de dados, mas o mesmo que é feito usando ON SCHEMA pode ser feito usando ON DATABASE, então qual é a diferença? Não consigo encontrar referências nos documentos do Oracle sobre isso.

oracle trigger
  • 1 respostas
  • 13095 Views
Martin Hope
Centurion
Asked: 2012-11-26 07:14:13 +0800 CST

Por que não preciso COMMIT no gatilho do banco de dados?

  • 7

Não podemos COMMIT/ROLLBACK em gatilhos DML porque a transação é tratada manualmente após a instrução DML. No entanto, os gatilhos de banco de dados parecem ser uma exceção. Por exemplo, suponha que haja um gatilho de banco de dados:

CREATE OR REPLACE TRIGGER user_login_as
  AFTER LOGON 
    ON SCHEMA
BEGIN
  INSERT INTO user_login_log(username, log_date, action) VALUES (user, sysdate, 'User has logged in');
END user_login_as;

O gatilho não contém um procedimento de transação autônomo com commit dentro dele, então quem está confirmando a inserção? Este gatilho funciona como um encanto e insere um novo registro na tabela de log após o logon do usuário. Cheira a funcionalidade oculta do Oracle e não consigo encontrar nenhuma referência nos documentos do Oracle sobre isso. Estou usando Oracle11g.

oracle trigger
  • 3 respostas
  • 49394 Views
Martin Hope
Centurion
Asked: 2012-11-26 03:29:49 +0800 CST

Por que NÃO estou recebendo um erro de tabela mutante no gatilho?

  • 11

É (ou pelo menos era) conhecido que você não pode usar instruções DML em uma tabela mutante dentro de um gatilho. Um trecho da documentação do Oracle :

Uma tabela mutante é uma tabela que está sendo modificada por uma instrução UPDATE, DELETE ou INSERT, ou uma tabela que pode ser atualizada pelos efeitos de uma restrição DELETE CASCADE.

A sessão que emitiu a instrução de disparo não pode consultar ou modificar uma tabela mutante. Essa restrição impede que um acionador veja um conjunto inconsistente de dados.

No entanto, não consigo entender por que esse gatilho de demonstração não está falhando com um erro de "tabela mutante" quando executo um insert into empuso do SQL Developer ou do SQL*Plus:

CREATE OR REPLACE TRIGGER emp_bri   
  BEFORE INSERT ON emp 
    FOR EACH ROW
BEGIN

  SELECT max(id) + 1 INTO :NEW.id FROM emp;
  UPDATE emp SET salary = 5000;

END emp_bri;

A inserção é concluída com sucesso com o próximo idvalor e atualiza todos os empregistros. Estou usando o Oracle Database 11g Enterprise Edition Release 11.2.0.1.0. Eu li sobre gatilhos compostos, mas a amostra não os usa.

oracle trigger
  • 1 respostas
  • 6440 Views
Martin Hope
Centurion
Asked: 2012-11-12 03:57:00 +0800 CST

Procedimentos armazenados de banco de dados: como eles ajudam a aumentar a segurança em sistemas web?

  • 1

O uso de procedimentos Oracle PL/SQL para controlar o acesso a dados é frequentemente enfatizado em livros de PL/SQL e outras fontes como sendo uma abordagem mais segura. Já vi vários sistemas onde toda a lógica de negócio relacionada com dados é realizada através de pacotes, procedures e funções, por isso o código da aplicação torna-se bastante "burro" e fica apenas responsável pela parte de visualização. Eu até ouvi alguns desenvolvedores chamarem essas abordagens e arquitetos de direção de nazis do banco de dados :) porque todo o código lógico reside no banco de dados. Eu sei sobre os benefícios de desempenho do procedimento de banco de dados, mas agora estou interessado em uma "melhor segurança" ao usar o modelo de cliente grosso e os procedimentos de banco de dados. Presumo que esse design seja usado principalmente quando bancos de dados Oracle (e talvez MS SQL Server) são usados.

Eu concordo que tal abordagem melhora a segurança, mas apenas se não houver muitos usuários e cada usuário do sistema tiver uma conta de banco de dados, então podemos controlar e monitorar o acesso aos dados por meio da segurança padrão do usuário do banco de dados. No entanto, como tal abordagem aumenta a segurança para um sistema web médio onde o modelo de cliente grosso é usado: por exemplo, um usuário de banco de dados com concessões DML em todas as tabelas e outros usuários são tratados usando tabelas "users" e "user_rights"? Poderíamos usar procedimentos de banco de dados, salvar nomes de usuário no uso de contexto para filtragem, mas a vulnerabilidade reside na raiz - se a conta do banco de dados principal estiver comprometida, nada ajudará. É claro que em um sistema real podemos considerar pelo menos vários usuários principais (por exemplo frontend_db_user, backend_db_user).

Então, o uso de procedimentos armazenados pl/sql (todas as operações DML por meio de procedimentos) ajuda a aumentar a segurança em sistemas de modelo de cliente grosso (sistemas da web)?

oracle database-design
  • 1 respostas
  • 1013 Views
Martin Hope
Centurion
Asked: 2012-10-03 13:03:48 +0800 CST

Como o tablespace padrão é determinado ao criar uma tabela?

  • 27

O Tablespaceparâmetro é opcional ao criar tabelas.

Ao executar uma CREATE TABLEinstrução, o Oracle atribui o padrão caso não tenha sido definido.

No banco de dados padrão existe um tablespace "USERS". Se houvesse vários tablespaces definidos, qual deles seria atribuído?

oracle
  • 2 respostas
  • 180442 Views
Martin Hope
Centurion
Asked: 2012-10-01 04:13:56 +0800 CST

Quais são os casos reais de uso do enfileiramento avançado da Oracle?

  • 4

Quais são os casos em que o enfileiramento avançado da Oracle é o mecanismo preferencial para implementar os requisitos funcionais? Por exemplo, a transferência de dinheiro da conta bancária A para a conta bancária B pode teoricamente ser considerada como duas operações diferentes e pode ser implementada separadamente - primeiro, enfileirar a transferência de dinheiro da conta A (atualizar) e depois enfileirar a transferência de dinheiro para a conta B (atualizar) . No entanto, é óbvio que não pode ser feito assim porque essas duas operações devem ser feitas em uma operação consistente - na transação.

Talvez o enfileiramento avançado deva ser considerado apenas ao desenvolver procedimentos/funções armazenados que executam alguma lógica que é feita internamente (fazendo operações DML e chamando outro proc/fnc armazenado local) e externamente (chamando alguns webservices). Ao usar essas chamadas para webservices, não podemos envolver tudo em uma transação consistente, então a única maneira é usar algum mecanismo de enfileiramento ...

Quaisquer exemplos detalhados da vida real seriam apreciados.

O que estou curioso não são os detalhes da tecnologia em si, mas sim quais são os casos reais de uso dessas mensagens, porque nunca fiz isso antes. Tipo, por que preciso passar alguns dados (carga útil da mensagem)?

oracle
  • 5 respostas
  • 26175 Views
Martin Hope
Centurion
Asked: 2012-09-28 05:31:07 +0800 CST

Quando o modelo de processo de servidor dedicado deve ser usado em vez do modelo de processo compartilhado?

  • 5

Parece que o modelo de processo de servidor compartilhado da Oracle é melhor do que o modelo de processo de servidor dedicado. Em uma configuração de servidor compartilhado, os processos de usuário do cliente se conectam a um despachante e podem suportar várias conexões de cliente simultaneamente (origem) . Além disso, o servidor compartilhado pode ser configurado para pool de conexão e multiplexação de sessão, portanto, todas essas coisas devem trazer um grande aumento de desempenho. Então, com essas vantagens, há casos em que o modelo de processo de servidor dedicado deve ser usado?

oracle
  • 1 respostas
  • 4205 Views
Martin Hope
Centurion
Asked: 2012-09-17 22:48:27 +0800 CST

Qual estrutura lógica é usada para armazenar linhas no Oracle?

  • 2

A partir do ponto de separação de dados lógicos, existem tablespaces que consistem em segmentos que consistem em extends que consistem em blocos oracle que consistem em blocos OS. Qual estrutura lógica realmente contém dados de registro concreto (onde os dados de todos os campos do mesmo registro residem lado a lado no sistema de arquivos). No mundo do MySQL, existe uma página de dados (8, 16 KB) que contém um ou mais registros no mesmo endereço físico.

Além disso, como determinar qual tamanho é o melhor? Quanto mais páginas existirem, mais fragmentação de dados aparecerá e isso pode afetar o desempenho.

mysql oracle
  • 1 respostas
  • 457 Views
Martin Hope
Centurion
Asked: 2012-09-03 08:06:02 +0800 CST

Oracle High-water Mark: quão relevante é ao usar o tablespace ASSM para tabelas?

  • 4

Eu tenho várias perguntas:

1) Se o Oracle gerencia o High-water Mark e o Low High-water Mark no tablespace ASSM, temos que pensar nisso ao pensar em desempenho? Quero dizer, o Oracle gerencia os próprios blocos excluídos e não verifica esses blocos durante a verificação completa da tabela, ou ainda temos que reduzir essas tabelas (alter table mytable shrink space;) para limpar esses blocos excluídos e aumentar o desempenho?

2) Se o ASSM oferece automatização para este e outros itens relacionados, sem dúvida há uma compensação de desempenho ao escolher o ASSM em vez do MSSM. Quais devem ser os principais critérios na escolha de ASSM ou MSSM?

ATUALIZAÇÃO . Fiz um teste no meu notebook com o mytable (ASSM). Primeiro, inseriu 1.000.000 registros. A consulta "select count(*) from mytable" estava sendo executada em média 0,05 s. Em seguida, fez DELETE completo. A mesma consulta estava sendo executada em média 0,03 s, então talvez o Oracle ainda estivesse lendo os blocos excluídos. Somente após TRUNCATE a consulta é executada em média 0,001 s. Talvez o ASSM demore para reduzir o espaço da tabela ou ainda tenho que reduzi-lo manualmente?

oracle
  • 1 respostas
  • 2862 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve