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-122615

Jeff Bauersfeld's questions

Martin Hope
Jeff Bauersfeld
Asked: 2024-06-28 09:23:58 +0800 CST

“Chamada de API assíncrona longa” após atualização do SQL Server

  • 6

Após a CU mais recente do SQL Server 2019, KB5037331, recebo a seguinte mensagem repetidamente em alguns dos meus logs do SqlServer Server: "Chamada de API assíncrona longa: a imparcialidade do agendamento do agendador pode ser impactada por uma invocação de API assíncrona excedendo inesperadamente [grandes 8 dígitos número] senhora."

Vi nas notas de atualização a seguinte alteração:

"Adiciona a seguinte mensagem de log quando altas latências de E/S são detectadas no Bufferpool Lazy Writer (chamada de sistema ntdll!ZwWriteFile) devido a um problema de desempenho no armazenamento subjacente:

AVISO Chamada de API assíncrona longa: a imparcialidade do agendamento do agendador pode ser afetada por uma chamada de API assíncrona que exceda inesperadamente xxx ms."

O problema é que não sei o que devo fazer com essas informações além da solução básica de problemas de E/S. O que preciso matar para fazer esta mensagem parar? E como identifico quais arquivos/objetos estão envolvidos no problema de E/S para resolver o problema subjacente?

sql-server-2019
  • 2 respostas
  • 611 Views
Martin Hope
Jeff Bauersfeld
Asked: 2019-02-08 09:05:36 +0800 CST

$X Tabelas Não Existem?

  • 0

Na solução de problemas por que um aplicativo de banco de dados está funcionando infinitamente melhor no teste do que na produção, me deparei com este fenômeno: não consigo consultar as tabelas X$ em produção.

SQL> desc x$ksppi
ERROR:
ORA-04043: object "SYS"."X_$KSPPI" does not exist


SQL> select * from dba_synonyms where synonym_name = 'X$KSPPI';

OWNER                          SYNONYM_NAME                   TABLE_OWNER                    TABLE_NAME
------------------------------ ------------------------------ ------------------------------ ------------------------------
DB_LINK
--------------------------------------------------------------------------------------------------------------------------------
PUBLIC                         X$KSPPI                        SYS                            X_$KSPPI



SQL> desc sys.x$ksppi;
ERROR:
ORA-04043: object sys.x$ksppi does not exist

No teste, na verdade recebo a descrição da tabela de volta.

É meu entendimento limitado que eles são realmente definidos fora do banco de dados como estruturas C ou algo assim e são criados na inicialização para preencher as visualizações V$. Se meu banco de dados de produção, especificamente o otimizador, não tiver acesso aos parâmetros ocultos, eu definitivamente poderia ver por que isso poderia ter um impacto negativo no desempenho.

Por que as tabelas X$ não seriam criadas na inicialização? Os problemas com este aplicativo começaram algum tempo depois que ele foi atualizado para 11.2.0.4, então uma atualização mal feita poderia ter feito isso? Quais etapas de solução de problemas posso executar para analisar o problema raiz?

oracle performance
  • 1 respostas
  • 1426 Views
Martin Hope
Jeff Bauersfeld
Asked: 2018-05-12 09:58:35 +0800 CST

Oracle 11g Fast Add Column demorando 11 horas

  • 1

Pelo que entendi, um novo recurso do Oracle 11g é a capacidade de adicionar uma coluna não nula com um valor padrão muito rapidamente, pois não atualizaria mais automaticamente todas as linhas da tabela com o valor padrão na nova coluna. No entanto, o comando a seguir leva aproximadamente 11 horas em uma tabela com aproximadamente 1,2 bilhão de linhas em um banco de dados 11.2.0.4 que acabou de ser atualizado de 10.2.0.5:

alter table table_name add column_name varchar2(6) default "DEFLT' not null;

Embora eu tenha visto o seguinte na documentação:

"No entanto, o comportamento otimizado está sujeito às seguintes restrições: • A tabela não pode ter nenhuma coluna LOB. Ela não pode ser organizada por índice, temporária ou parte de um cluster. Também não pode ser uma tabela de filas, uma tabela de objetos ou a tabela de contêiner de uma exibição materializada. •A coluna que está sendo adicionada não pode ser criptografada e não pode ser uma coluna de objeto, coluna de tabela aninhada ou uma coluna LOB."

Até onde sei, minha mesa não atende a nenhuma dessas condições. Descrever não mostra LOBs, ORGANIZATION INDEX não está na instrução create, não é uma tabela temporária, não é um cluster, fila, objeto ou tabela de contêiner. E a coluna, claro, é uma coluna varchar. Está faltando alguma coisa ou a resposta é apenas que estou enganado sobre minha mesa atender a um desses requisitos?

ETA: Não tenho certeza se isso é útil, mas notei em um artigo que o sinal de aviso de adição de coluna rápida é o uso de NVL no predicado de filtro. De um plano de explicação em uma tabela de teste, não parece que meu banco de dados esteja executando adições rápidas:

SQL_ID  f78gwf6cz50uq, child number 0
-------------------------------------
select count(1) from t where z = 123456

Plan hash value: 1842905362

---------------------------------------------------------------------------
| Id  | Operation          | Name | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------
|   0 | SELECT STATEMENT   |      |       |       |   133 (100)|          |
|   1 |  SORT AGGREGATE    |      |     1 |    13 |            |          |
|*  2 |   TABLE ACCESS FULL| T    |   110K|  1406K|   133   (4)| 00:00:02 |
---------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   2 - filter("Z"=123456)

Note
-----
   - dynamic sampling used for this statement (level=2)
oracle oracle-11g-r2
  • 1 respostas
  • 2084 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-09-12 07:30:24 +0800 CST

DBA_TABLESPACE_USAGE_METRICS está vazio

  • 0

Para um dos meus bancos de dados 11.2g, select * from dba_tablespace_usage_metrics não retorna nenhuma linha .

Por que isso acontece e como posso corrigi-lo?

Agradeço antecipadamente.

oracle-11g-r2 tablespaces
  • 1 respostas
  • 1073 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-08-30 09:59:14 +0800 CST

Desinstalando componentes Oracle em produção

  • 1

Portanto, de acordo com o padrão com o qual tenho a tarefa de alinhar meus bancos de dados, nenhum componente Oracle não utilizado deve ser instalado em nossos bancos de dados. As versões do Oracle são variadas. Ao ler a documentação do Oracle, parece que os componentes não podem ser desinstalados após a criação do banco de dados, mas não devem ser instalados em primeiro lugar durante a criação do banco de dados. Quem criou esses bancos de dados antes de mim não fez isso.

Qual é a maneira mais eficiente de fazer isso que resulta na menor interrupção da produção? Meu instinto (inexperiente) é que um banco de dados paralelo teria que ser criado apenas com os componentes usados ​​instalados, ter os arquivos de dados do banco de dados de produção atualmente ativo restaurados no novo banco de dados e, em seguida, mudar para o banco de dados recém-preenchido na produção.

oracle installation
  • 1 respostas
  • 89 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-06-27 11:12:09 +0800 CST

O que acontece se sys.aud$ estiver cheio no Oracle?

  • 2

Não estou vendo isso na documentação, mas o que acontece quando a trilha de auditoria do Oracle 10.2 está cheia? Ele simplesmente não faz mais registros de auditoria? Substitui os registros mais antigos? Desliga o banco de dados? E existe alguma maneira de eu mudar isso?

Sim, eu sei que 10.2 não é suportado, mas não tenho controle sobre isso. E sim, existem procedimentos em vigor que nunca deveriam precisar que eu descobrisse em primeira mão. Mas em casos de falha emergencial das operações de auditoria, qual é o comportamento padrão se a trilha de auditoria ficar cheia?

oracle audit
  • 2 respostas
  • 6139 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-06-24 08:07:57 +0800 CST

Verifique os usuários que não estão sendo auditados

  • 0

Preciso confirmar que as ações de usuários privilegiados estão sendo auditadas. Tanto quanto eu posso dizer de visualizações como dba_stmt_audit_opts, as declarações dos usuários privilegiados que eu quero que sejam auditados estão sendo auditadas indiscriminadamente, então isso parece bom.

Eu sei que o NOAUDIT pode ser usado para parar de auditar uma instrução para um usuário específico. Como eu verificaria se alguém no passado fez isso para um usuário privilegiado?

oracle audit
  • 1 respostas
  • 547 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-06-24 07:05:48 +0800 CST

Onde estão as entradas de auditoria SYS no log de eventos do Windows?

  • 0

Eu tenho audit_sys_operations definido como true, audit_trail definido como DB, reiniciei o banco de dados desde a configuração deles e fiz login como e executei ações como sysdba. No entanto, não consigo encontrar essas entradas no Visualizador de Log de Eventos do Windows. Pelo que li, eles devem estar em Windows Logs->Application. Ao olhar lá, não vejo nada com um id de evento de 34 ou um Source contendo Oracle.

Estou faltando alguma coisa, ou algo talvez não esteja configurado corretamente?

oracle audit
  • 1 respostas
  • 535 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-06-13 08:49:36 +0800 CST

Assistente de atualização do banco de dados Oracle "Falha ao abrir..." Erro

  • 0

Então eu estava atualizando 3 bancos de dados de 10.2.0.5 para 11.2.0.4. Dois deles correram bem. Para encurtar a história do último, a atualização foi interrompida perto do final (deixe-me saber se são necessários mais detalhes). Tentei algumas coisas e decidi restaurar porque nunca terminei de atualizar manualmente um banco de dados antes. Não teria sido eficiente em termos de tempo.

Restaurado, executou as etapas novamente para se preparar para um upgrade, execute o script do assistente de upgrade para o terceiro banco de dados. A primeira tela informa corretamente que o Oracle Home = 10.2.0.5, mas após clicar em next foi informado que o banco de dados precisava ser montado antes do início da atualização. O banco de dados estava no modo de inicialização. Então, cliquei em próximo novamente para ver se receberia uma mensagem diferente. A próxima mensagem que eu li,

"O Upgrade Assistant arquivado ao trazer o banco de dados [nome]. Oracle >Home /oracle/product/11.2.0.4/db_1 obtido do >arquivo /var/opt/oracle/oratab foi usado para conectar ao banco de dados. >o banco de dados não está sendo executado no Oracle Home /oracle/product/11.2.0.4/db_1 ou >o arquivo de Parâmetro de Inicialização correto (pfile) não foi encontrado."

Em seguida, ele me pediu para fornecer o caminho para o arquivo init. Mas antes disso, verifiquei o oratab; ele declarou corretamente 10.2.0.5 para esse banco de dados. Segui em frente dando o caminho para o arquivo init, retornou o mesmo erro sem a opção de escolher o arquivo init. Tentei trazer uma boa cópia do pfile, alterei os parâmetros que precisava alterar, excluí o spfile e criei um novo a partir do pfile, depois tentei novamente com os mesmos resultados.

Então, estou supondo que alguém ao longo da linha durante essa atualização interrompida, alguma referência que eu não conheço foi alterada que está dizendo ao Assistente de atualização que o banco de dados original Oracle Home está em 11.2.0.4 em vez do que o oratab e o ouvinte realmente digamos, 10.2.0.5. Qualquer insight sobre o que preciso mudar aqui seria muito apreciado, pois não quero fazer outra restauração sem um plano do que faria diferente da última vez.

oracle upgrade
  • 1 respostas
  • 1093 Views
Martin Hope
Jeff Bauersfeld
Asked: 2017-06-03 10:47:12 +0800 CST

Quem deve possuir objetos de aplicativo?

  • 3

Então, acabei de começar a fazer coisas parecidas com o trabalho de DBA Oracle completo recentemente, então ainda estou aprendendo muito do básico da parte administrativa do meu trabalho. Recebi a tarefa de trazer vários bancos de dados de aplicativos para atender a um determinado conjunto de padrões profissionais (estou sendo intencionalmente vago). Um desses padrões é que os proprietários de objetos que suportam o aplicativo em geral também não devem utilizá-los regularmente. A principal exceção é o DBA, mas apenas para certas classes de objetos que manteríamos regularmente, como índices. A não ser quando estiverem realizando tarefas de instalação e manutenção, os proprietários do objeto de aplicativo devem ser desabilitados.

Isso finalmente me leva à minha pergunta: quem deve ser o proprietário desses objetos de aplicativo. Devemos ter apenas um usuário que cria os objetos e, em seguida, é amplamente desabilitado pelo resto de sua vida e os privilégios de uso necessários devem ser concedidos a esta ou aquela função? Tudo bem para o DBA possuir todos os objetos do aplicativo, ou eles devem possuir apenas os objetos que estão sendo mantidos diariamente/semanal? Obviamente, a resposta exata dependerá das necessidades da organização e do que especificamente esse padrão está pedindo, mas qual é a melhor prática aqui para a propriedade do objeto do aplicativo?

Esta pergunta pode ser muito ampla, então me avise se eu precisar editá-la para torná-la mais específica. Eu realmente não sei por onde começar com isso ou mesmo quais são as perguntas certas a serem feitas. Obrigado por qualquer ajuda que você possa fornecer.

oracle development
  • 3 respostas
  • 99 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