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

Just a learner's questions

Martin Hope
Just a learner
Asked: 2024-08-13 03:20:49 +0800 CST

A inserção de novos dados em um índice columnstore clusterizado classificado no SQL Server interrompe o pedido?

  • 6

Estou trabalhando com índices columnstore clusterizados no SQL Server e tenho uma dúvida sobre como manter a ordem dos dados.

Entendo que, por padrão, os índices columnstore clusterizados não classificam os dados. Eu vi uma técnica em que as pessoas:

  • Crie um índice rowstore clusterizado para classificar os dados
  • Em seguida, use a opção DROP_EXISTING para criar um índice columnstore clusterizado. Isso resulta em um índice columnstore clusterizado com dados inicialmente classificados.

No entanto, estou preocupado com o que acontece quando novos dados são inseridos.

Minhas perguntas são:

  • A inserção de novos dados nesta tabela perturba a ordem existente?
  • Em caso afirmativo, há alguma maneira de evitar isso ou manter a ordem ao longo do tempo?

Eu apreciaria insights de qualquer pessoa que tenha experiência com esse cenário ou conhecimento sobre o funcionamento interno dos índices columnstore no SQL Server. Agradecemos antecipadamente pela sua ajuda!

sql-server
  • 1 respostas
  • 47 Views
Martin Hope
Just a learner
Asked: 2024-07-02 09:30:29 +0800 CST

Noções básicas sobre garfos de recuperação no SQL Server: significado e importância

  • 6

Estou tentando entender o conceito de bifurcações de recuperação no SQL Server, principalmente em relação à visualização sys.database_recovery_status. A documentação menciona diversas colunas relacionadas aos forks de recuperação, como:

  • recuperação_fork_guid
  • first_recovery_fork_guid
  • fork_point_lsn

No entanto, estou lutando para encontrar explicações claras sobre o que isso significa e seu significado. Minhas perguntas específicas são:

  • O que exatamente é um fork de recuperação no SQL Server?
  • Como os garfos de recuperação se relacionam com os processos de recuperação de banco de dados?
  • Quais cenários normalmente levam à criação de uma bifurcação de recuperação?

Pesquisei online, mas parece haver poucos artigos que introduzam ou expliquem esse conceito em profundidade. Quaisquer insights ou explicações serão muito apreciados, bem como indicações para quaisquer recursos abrangentes sobre este tópico.

sql-server
  • 2 respostas
  • 96 Views
Martin Hope
Just a learner
Asked: 2024-04-26 09:06:06 +0800 CST

Como determinar a instância primária global em um grupo de disponibilidade distribuída do SQL Server usando T-SQL?

  • 5

Tenho um grupo de disponibilidade distribuída do SQL Server configurado e atualmente estou conectado à instância do encaminhador. Gostaria de saber como usar o T-SQL para consultar os DMVs ou visualizações de catálogo apropriadas para determinar qual instância está servindo atualmente como primária global no grupo de disponibilidade distribuída.

Estou procurando um script ou consulta T-SQL que possa executar na instância do encaminhador para recuperar essas informações.

Qualquer ajuda ou orientação sobre este tópico seria muito apreciada. Agradeço antecipadamente!

sql-server
  • 1 respostas
  • 37 Views
Martin Hope
Just a learner
Asked: 2024-04-21 04:35:42 +0800 CST

Removendo bancos de dados específicos de um Grupo de Disponibilidade secundário em uma configuração de Grupo de Disponibilidade Distribuída

  • 5

Recentemente, configurei um Grupo de Disponibilidade Distribuída (DAG) entre um Grupo de Disponibilidade Always On (AG) local existente e um novo AG na AWS. O AG local atua como primário, enquanto o AG da AWS atua como secundário. Configurei inadvertidamente a propagação automática sem perceber que ela começaria a propagar todos os bancos de dados imediatamente.

Meu problema é que preciso replicar apenas cerca de 10 bancos de dados para o AG secundário e, desses, apenas cinco bancos de dados precisam ser replicados para a réplica secundária do AG secundário. Tentei definir "HADR OFF" para os bancos de dados indesejados, mas só funciona na réplica secundária. O comando é executado com êxito no encaminhador, mas os bancos de dados nunca são realmente removidos.

Encontrei vários artigos explicando como remover um banco de dados de um DAG, mas todos sugerem executar os comandos da réplica primária do AG primário. No entanto, estou preocupado que essa abordagem também possa remover o banco de dados do AG local, o que não é minha intenção. Desejo apenas remover os bancos de dados da réplica secundária do AG de distribuição secundária.

Então, minhas perguntas são:

  • Alguém encontrou uma situação semelhante ou sabe como remover bancos de dados específicos do AG secundário em uma configuração do DAG sem afetar o AG primário?
  • Se eu remover o DAG e começar de novo, mas optar por propagar manualmente, isso me permitiria selecionar quais bancos de dados serão replicados por meio do DAG?

Eu apreciaria muito quaisquer insights, sugestões ou orientações passo a passo sobre como conseguir isso. Agradeço antecipadamente por sua ajuda!

sql-server
  • 1 respostas
  • 21 Views
Martin Hope
Just a learner
Asked: 2024-04-21 01:35:46 +0800 CST

Criando um Grupo de Disponibilidade Distribuída do SQL Server em dois Grupos de Disponibilidade nas mesmas instâncias

  • 5

Tenho um cenário em que desejo criar um Grupo de Disponibilidade Distribuída (DAG) do SQL Server que se estende por dois Grupos de Disponibilidade (AGs) existentes que residem no mesmo conjunto de instâncias do SQL Server. Aqui está a configuração:

  • Tenho um Grupo de Disponibilidade chamado "ag1" com duas réplicas: "instance1" e "instance2".
  • Também tenho outro Grupo de Disponibilidade chamado "ag2" com as mesmas duas réplicas: "instance1" e "instance2".

Meu objetivo é criar um Grupo de Disponibilidade Distribuída chamado "distag1" que englobe "ag1" e "ag2". Segui a documentação e tentei criar "distag1" no primário global (a réplica primária de "ag1"). Foi criado com sucesso. No entanto, quando tentei ingressar na outra extremidade de "distag1" (a instância para a qual o ouvinte de ag2 aponta), encontrei o seguinte erro:

ALTER AVAILABILITY GROUP distag1
JOIN AVAILABILITY GROUP ON
N'ag1' WITH (
    LISTENER_URL = N'TCP://ag1lsnr:5022',
    FAILOVER_MODE = MANUAL,
    AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
    SEEDING_MODE = MANUAL
),
N'ag2' WITH (
    LISTENER_URL = N'TCP://ag2lsnr:5022',
    FAILOVER_MODE = MANUAL,
    AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
    SEEDING_MODE = MANUAL
);


Msg 19509, Level 16, State 0, Line 38
Cannot create a distributed availability group 'distag1'. An availability group with the same name already exists.

Minha pergunta é:

  • Há suporte para criar um Grupo de Disponibilidade Distribuído em dois Grupos de Disponibilidade que residem no mesmo conjunto de instâncias do SQL Server?
  • Se for compatível, o que pode estar causando a mensagem de erro que encontrei? Há algum requisito ou consideração específica que preciso levar em consideração ao criar um DAG neste cenário?

Eu apreciaria muito qualquer informação, esclarecimento ou orientação sobre este assunto. Agradeço antecipadamente por sua ajuda!

sql-server
  • 1 respostas
  • 20 Views
Martin Hope
Just a learner
Asked: 2024-04-20 17:31:48 +0800 CST

Um Grupo de Disponibilidade Distribuída do SQL Server pode ter vários Grupos de Disponibilidade de réplicas secundárias?

  • 5

Tenho uma dúvida sobre a configuração dos Grupos de Disponibilidade Distribuída (DAGs) do SQL Server. Entendo que um DAG é usado para replicar dados de um Grupo de Disponibilidade (AG) para outro. No entanto, estou curioso sobre a possibilidade de ter vários AGs de réplica secundária para um único DAG.

Especificamente, digamos que eu tenha um Grupo de Disponibilidade Distribuída chamado “dag1”. É possível que "dag1" replique dados de um Grupo de Disponibilidade primário "ag1" para vários Grupos de Disponibilidade secundários, como "ag2" e "ag3"?

Em outras palavras, um único DAG pode ter um relacionamento um-para-muitos com AGs de réplica secundária?

Eu apreciaria muito se alguém pudesse esclarecer se esta configuração é suportada e fornecer informações ou considerações adicionais ao configurar um DAG com vários AGs de réplica secundária.

Agradeço antecipadamente por sua ajuda!

sql-server
  • 1 respostas
  • 24 Views
Martin Hope
Just a learner
Asked: 2024-02-19 01:50:24 +0800 CST

Como filtrar e restaurar backups específicos de bancos de dados SQL usando dbatools no PowerShell

  • 6

Estou trabalhando com um diretório de arquivos mistos de backup do SQL Server e preciso restaurar um banco de dados específico usando dbatools no PowerShell. Abaixo está a estrutura de diretórios da minha pasta de backup:

PS C:\Users\administrator> tree \\dc1\backup /F
Folder PATH listing
\\DC1\BACKUP.
│   Hadr_endpoint_cert.cer
│   Hadr_endpoint_cert.pvk
│
└───NODE1
    └───MSSQLSERVER
        ├───AdventureWorks2016
        │   ├───Full
        │   │       Full_AdventureWorks2016_20240219011641.bak
        │   │
        │   └───Log
        │           Log_AdventureWorks2016_20240219011647.trn
        │
        └───Credit
            ├───Full
            │       Full_Credit_20240219012730.bak
            │
            └───Log
                    Log_Credit_20240219012735.trn

PS C:\Users\administrator>

Ao tentar restaurar o banco de dados de crédito node2com o seguinte comando, encontro problemas:

$files = Get-ChildItem -Path \\dc1\backup -Recurse -Include *.trn,*.bak
Restore-DbaDatabase -SqlInstance node2 -Path $files -DatabaseName Credit -NoRecovery -ExecuteAs sa

Isso resulta no erro:

WARNING: [01:27:36][Restore-DbaDatabase] Multiple Databases' backups passed in, but only 1 name to restore them under. Stopping as cannot work out how to proceed.

Usando este comando:

Restore-DbaDatabase -SqlInstance node2 -Path \\dc1\backup -DirectoryRecurse -DatabaseName Credit

Leva a um erro diferente:

WARNING: [01:32:00][Get-DbaBackupInformation] Failure on node2 | The media family on device '\\dc1\backup\Hadr_endpoint_cert.cer' is incorrectly formed. SQL Server cannot process this media family. RESTORE HEADERONLY is terminating abnormally.

Entendo que posso selecionar manualmente os arquivos relacionados ao banco de dados de crédito por sua convenção de nomenclatura, mas e se os arquivos de backup não tiverem o nome do banco de dados em seu nome de arquivo? Qual seria a melhor abordagem para automatizar essa restauração enquanto filtra arquivos não relacionados?

Qualquer orientação ou dica sobre o uso adequado de dbatools para este cenário seria muito apreciada! Agradeço antecipadamente.

sql-server
  • 1 respostas
  • 42 Views
Martin Hope
Just a learner
Asked: 2024-02-15 05:43:16 +0800 CST

É normal ver avisos no painel do grupo de disponibilidade para um grupo de disponibilidade vazio do SQL Server?

  • 5

Recentemente, configurei um novo grupo de disponibilidade do SQL Server usando scripts T-SQL. A configuração não foi convencional, pois iniciei o grupo de disponibilidade sem incluir nenhum banco de dados inicialmente.

CREATE AVAILABILITY GROUP ag1
FOR
REPLICA ON 'node1'
    WITH (
        ENDPOINT_URL = N'TCP://node1.dev.com:5022',
        FAILOVER_MODE = MANUAL,
        AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
        BACKUP_PRIORITY = 50,
        SECONDARY_ROLE (ALLOW_CONNECTIONS = ALL),
        SEEDING_MODE = MANUAL
    ),
    N'node2'
    WITH (
        ENDPOINT_URL = N'TCP://node2.dev.com:5022',
        FAILOVER_MODE = MANUAL,
        AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
        BACKUP_PRIORITY = 50,
        SECONDARY_ROLE (ALLOW_CONNECTIONS = ALL),
        SEEDING_MODE = MANUAL
    );

Depois de configurar a réplica primária, adicionei uma réplica secundária e configurei um ouvinte para o grupo. Todos os comandos T-SQL foram executados com sucesso e sem erros.

No entanto, ao inspecionar o painel do Grupo de Disponibilidade do SQL Server, percebi que alguns avisos são exibidos. Aqui está um instantâneo da aparência do painel:

Dado que o Grupo de Disponibilidade está atualmente vazio (nenhum banco de dados foi adicionado ainda), estou me perguntando se esses avisos são típicos nesse cenário ou se indicam um possível problema de configuração que devo resolver.

Alguém já passou por uma situação semelhante com grupos de disponibilidade vazios ou alguém sabe se esses avisos são simplesmente espaços reservados padrão até que os bancos de dados sejam adicionados?

Qualquer informação ou orientação sobre este assunto seria muito apreciada.

Agradeço antecipadamente!

sql-server
  • 1 respostas
  • 24 Views
Martin Hope
Just a learner
Asked: 2024-01-30 02:54:47 +0800 CST

Ajuda necessária: configurando um grupo de disponibilidade distribuída com propagação manual no SQL Server

  • 5

Olá especialistas em SQL Server,

Estou no processo de configuração de um Grupo de Disponibilidade Distribuída (DAG) no SQL Server e estou procurando orientação sobre como implementá-lo com propagação manual (restauração de backup) em vez de propagação automática.

O DAG que pretendo configurar envolve dois grupos de disponibilidade (AGs) normais denominados ag1 e ag2, cada um servindo como uma réplica dentro do DAG. Meu objetivo é replicar a seguinte topologia:

+--------------------+         +------------------------+
|  WSFC1             |         |   WSFC2                |
|  +--------------+  |         |  +------------------+  |
|  | AG1 (P)      |  |         |  |  AG2 (S)         |  |
|  | +---------+  |  |         |  |  +-------------+ |  |
|  | |node1 (P)|  |======DAG=====>|  |node3 (P)(F) | |  |
|  | +----+----+  |  |         |  |  +-----+-------+ |  |
|  |      |       |  |         |  |        |         |  |
|  | +----v----+  |  |         |  |  +-----v-------+ |  |
|  | |node2 (S)|  |  |         |  |  |node4 (S)    | |  |
|  | +---------+  |  |         |  |  +-------------+ |  |
|  +--------------+  |         |  +------------------+  |
+--------------------+         +------------------------+
In this topology, we have:
- 4 nodes: node1, node2, node3, node4
- 2 WSFC clusters: WSFC1 and WSFC2
- 2 AGs: AG1 and AG2
- 1 DAG, from AG1 to AG2
- (P) = primary replica
- (S) = secondary replica
- (F) = forwarder

A documentação oficial da Microsoft (Configurar grupos de disponibilidade distribuída) cobre principalmente a configuração usando propagação automática. No entanto, quero utilizar o método tradicional de backup e restauração.

Infelizmente, não tenho certeza sobre a sequência correta de operações em relação a quando e onde fazer backups e onde restaurá-los nesta topologia.

Alguém poderia fornecer um guia passo a passo ou esclarecer o processo em inglês simples sobre como criar um DAG usando propagação manual?

Abaixo está o que juntei até agora, mas estou preso na ordem e nas etapas apropriadas:

  • Habilite o recurso Always On Availability Groups em todas as instâncias.
  • Crie um endpoint em todas as instâncias.
  • Se ag1 e ag2 abrangerem domínios diferentes, configure os endpoints para autenticação por meio de certificado.
  • Faça um backup completo e de log no node1 e, em seguida, restaure-os para node2, node3 e node4 usando a opção NORECOVERY???
  • Crie ag1 no nó1.
  • Criar ag2 no node3 ???
  • No nó1, crie o DAG que inclui ag1 e ag2.

Eu apreciaria muito qualquer ajuda ou recurso que pudesse me indicar a direção certa.

Obrigado pelo seu tempo e ajuda!

sql-server
  • 1 respostas
  • 29 Views
Martin Hope
Just a learner
Asked: 2024-01-22 02:56:46 +0800 CST

Esclarecimento sobre regras de failover automático em grupos de disponibilidade do SQL Server

  • 5

Estou configurando um Grupo de Disponibilidade do SQL Server com três réplicas: node1\inst, node2\inste node3\inst. Eu configurei node1\instpara failover automático com confirmação síncrona, enquanto node2\inste node3\instestou configurado para failover manual.

Tenho algumas perguntas sobre o comportamento de failover:

  1. Quando node1\insta réplica primária encontra um problema, ela fará failover automaticamente node2ou node3mesmo se estiver configurada para failover manual? Além disso, o failover automático ocorre apenas entre réplicas de failover automático e confirmação síncrona?

  2. Se node2se tornar a réplica primária e ocorrer um problema, ela ainda seguirá sua configuração de failover manual ou haverá um failover automático para node1?

Estou tentando entender os meandros da mecânica de failover nos grupos de disponibilidade do SQL Server para garantir uma configuração confiável de alta disponibilidade. Insights sobre como as decisões automáticas de failover são determinadas nessas configurações seriam extremamente úteis.

Agradecemos antecipadamente pela sua ajuda!

sql-server
  • 1 respostas
  • 28 Views
Martin Hope
Just a learner
Asked: 2023-12-18 01:58:17 +0800 CST

Noções básicas sobre grupos de disponibilidade do SQL Server: propagação automática de bancos de dados

  • 7

Estou investigando os Grupos de Disponibilidade (AGs) do SQL Server e me deparei com um recurso fascinante que parece simplificar o processo de configuração de réplicas: o conceito de propagação automática. Pelo que entendi, quando configuramos um Grupo de Disponibilidade, há uma opção que permite que um único servidor propague automaticamente nossos bancos de dados. Isso significa que não precisamos fornecer um local compartilhado acessível pelas réplicas primária e secundária para a sincronização inicial dos dados.

O que me intriga é o mecanismo subjacente a esse recurso. Como exatamente o SQL Server replica o banco de dados para minhas réplicas secundárias sem exigir um local de armazenamento compartilhado? Meu pensamento inicial foi que ele poderia utilizar alguma forma de streaming de dados ou operação de restauração de backup nos bastidores.

Alguém com experiência em grupos de disponibilidade do SQL Server poderia esclarecer o processo de propagação automática? Quão confiável é esse método e há alguma advertência ou pré-requisito que devemos estar cientes ao usar a propagação automática para replicação de banco de dados?

Aguardo uma discussão esclarecedora sobre este assunto. Agradecemos antecipadamente por seus insights!

sql-server
  • 1 respostas
  • 44 Views
Martin Hope
Just a learner
Asked: 2021-04-19 08:27:02 +0800 CST

Posso restaurar meu banco de dados SQL Server para um ponto anterior ao último backup completo com minha estratégia de backup atual?

  • 2

Se eu tiver essa estratégia de backup (backup completo semanal e backup de log de 1 hora), posso restaurar o banco de dados para o período de tempo destacado em verde? Aliás, o backup de log 2 inclui todos os registros de log que têm seu lsn maior que o last_lsn do backup de log 1?

insira a descrição da imagem aqui


Fiz mais alguns testes e acho que encontrei a resposta. De acordo com a imagem no agendamento de backup, fiz um backup completo inicial, alguns backups de log, depois o backup de log 1, um backup completo, backup de log 2. Tenho modificações no meio. Use RESTORE HEADERONLYpara verificar o backup de log 1, backup completo e backup de log 2, abaixo está o que eu tenho. Como você pode ver, o backup de log 2 captura todos os registros de log do último no backup de log 1. Se eu quiser restaurar para um ponto no período destacado em verde, preciso usar o backup de log 2, não o back completo.

insira a descrição da imagem aqui

sql-server backup
  • 1 respostas
  • 75 Views
Martin Hope
Just a learner
Asked: 2021-04-12 00:54:36 +0800 CST

Isso é um erro na documentação do SQL Server para ROLLBACK?

  • 13

Este é o documento do SQL Server falando sobre a ROLLBACKinstrução. Nessa página, afirma que a sintaxe é a seguinte:

ROLLBACK { TRAN | TRANSACTION }   
     [ transaction_name | @tran_name_variable  
     | savepoint_name | @savepoint_variable ]   
[ ; ]  

Aparentemente, as coisas entre colchetes são opcionais e parece que você deve escolher um TRANou TRASACTION. Mas, na verdade, você pode omitir completamente ambos e ROLLBACKé uma afirmação perfeitamente válida. Isso é um erro ou intencional?

sql-server transaction
  • 1 respostas
  • 1805 Views
Martin Hope
Just a learner
Asked: 2019-08-05 20:49:53 +0800 CST

Compreensão da consistência de leitura em nível de instrução Oracle entre Oracle 10g e 10g+

  • 0

Sou novo na Oracle e só quero confirmar minha compreensão da consistência de leitura em nível de instrução para Oracle 10g e 10g+.

O documento Oracle 10g afirma:

A Oracle sempre impõe consistência de leitura em nível de instrução. Isso garante que todos os dados retornados por uma única consulta venham de um único ponto no tempo — a hora em que a consulta começou . Portanto, uma consulta nunca vê dados sujos ou qualquer uma das alterações feitas por transações que são confirmadas durante a execução da consulta. À medida que a execução da consulta prossegue, apenas os dados confirmados antes do início da consulta ficam visíveis para a consulta. A consulta não vê as alterações confirmadas após o início da execução da instrução.

O documento Oracle 11g afirma:

O Oracle Database sempre impõe consistência de leitura em nível de instrução, o que garante que os dados retornados por uma única consulta sejam confirmados e consistentes em relação a um único ponto no tempo. O momento em que uma única instrução SQL é consistente depende do nível de isolamento da transação e da natureza da consulta :

  • No nível de isolamento de leitura confirmada, esse ponto é a hora em que a instrução foi aberta. Por exemplo, se uma instrução SELECT for aberta em SCN 1000, essa instrução será consistente com SCN 1000.

  • Em uma transação serializável ou somente leitura, esse ponto é a hora em que a transação começou. Por exemplo, se uma transação começar em SCN 1000 e se ocorrerem várias instruções SELECT nessa transação, cada instrução será consistente com SCN 1000.

  • Em uma operação Flashback Query (SELECT ... AS OF), a instrução SELECT especifica explicitamente o ponto no tempo. Por exemplo, você pode consultar uma tabela como ela apareceu na última quinta-feira às 14h

Veja o texto em negrito. Se bem entendi, a Oracle mudou seu comportamento entre 10g e 10g+. Em 10g, a consistência de leitura em nível de instrução é sempre baseada na exibição quando a instrução é iniciada. No 10g+, a consistência de leitura em nível de instrução é baseada em uma exibição que depende do nível de isolamento e da própria consulta. Meu entendimento está correto? Obrigada.

oracle transaction
  • 1 respostas
  • 483 Views
Martin Hope
Just a learner
Asked: 2019-08-03 11:24:06 +0800 CST

Quando preciso instalar o cliente de banco de dados Oracle?

  • 1

Eu sei que o cliente de banco de dados Oracle fornece componentes básicos de rede e, para me conectar a um banco de dados Oracle, preciso instalá-lo na máquina cliente. Percebi que para o SQL Developer da Oracle, não instalei nenhum cliente e funciona muito bem e pode se conectar ao banco de dados sem problemas. Para o Toad, parece que preciso instalar um cliente para que funcione. Minha pergunta é, quando devo instalar o cliente Oracle? Como sei que a versão de 32 bits ou 64 bits é necessária?

oracle installation
  • 2 respostas
  • 1680 Views
Martin Hope
Just a learner
Asked: 2019-08-01 17:43:23 +0800 CST

Um usuário Oracle tem todos os privilégios em seu esquema?

  • 1

Estou aprendendo Oracle e fiz alguns testes. Eu usei o sysusuário e criei uma tabela tno scottesquema e descobri que to proprietário é scott, e scotttem acesso total a t. Quero confirmar, scottsempre tem acesso total no esquema scott? Não importa quem criou esses objetos?

oracle permissions
  • 2 respostas
  • 50 Views
Martin Hope
Just a learner
Asked: 2019-08-01 17:07:35 +0800 CST

É possível aumentar o recuo de saída do plano de execução do Oracle?

  • 0

Parece que o plano de execução da Oracle recua cada linha para apenas um caractere. Veja abaixo imagem. Existe alguma configuração para aumentar esse valor? Para mim, isso não é muito legível.

insira a descrição da imagem aqui

oracle execution-plan
  • 1 respostas
  • 43 Views
Martin Hope
Just a learner
Asked: 2019-08-01 09:49:33 +0800 CST

Quais privilégios são necessários para um usuário normal do Oracle acessar as visualizações V$ e DBA_?

  • 0

Estou me conectando ao Oracle 19c como HRusuário. Eu quero executar o seguinte SQL e algumas visualizações dba_...:

select s.sid
      ,s.serial#
      ,s.username
      ,s.machine
      ,s.status
      ,s.lockwait
      ,t.used_ublk
      ,t.used_urec
      ,t.start_time
from v$transaction t
inner join v$session s on t.addr = s.taddr;

Oracle me diz que os objetos não existem. Parece um problema de permissão. Quais privilégios são necessários para acessar visualizações de desempenho dinâmico e visualizações DBA_...?

permissions data-dictionary
  • 1 respostas
  • 682 Views
Martin Hope
Just a learner
Asked: 2019-07-31 13:10:01 +0800 CST

Senha de usuário Oracle com caractere de espaço nele

  • 0

Conectei-me a um banco de dados Oracle 19c e executei o seguinte SQL:

alter user sys identified by "a b" container=all;

Executou com sucesso. No entanto, depois disso não consigo me conectar ao Oracle usando o SQLPlus. Abaixo está minha tentativa:

oracle:[~]$ sqlplus
Enter user-name: sys as sysdba
Enter password:
SP2-0306: Invalid option.
Usage: CONN[ECT] [{logon|/|proxy} [AS {SYSDBA|SYSOPER|SYSASM|SYSBACKUP|SYSDG|SYSKM|SYSRAC}] [edition=value]]
where <logon> ::= <username>[/<password>][@<connect_identifier>]
      <proxy> ::= <proxyuser>[<username>][/<password>][@<connect_identifier>]
Enter user-name: oracle:[~]$
oracle:[~]$
oracle:[~]$
oracle:[~]$ sqlplus sys/"a b"@localhost:1521/ORCLCDB as sysdba
... (not work)
oracle:[~]$ sqlplus sys/\"a b\"@localhost:1521/ORCLCDB as sysdba
... (not work)
oracle:[~]$ sqlplus sys@localhost:1521/ORCLCDB as sysdba
... (type "a b" without quotes and not work)

Como posso me conectar ao banco de dados?

oracle connectivity
  • 1 respostas
  • 2833 Views
Martin Hope
Just a learner
Asked: 2019-07-31 10:25:59 +0800 CST

Como entender "NULL NOT IN" quando o conjunto está vazio?

  • 3

O SQL nesta questão é para Oracle. Mas você pode simplesmente remover FROM dualpara que funcione no SQL Server (que retorna o mesmo resultado do Oracle).

Tenho o seguinte SQL:

SELECT 1
FROM dual
WHERE NULL IN (SELECT 1 FROM dual WHERE 1 = 0);

SELECT 1
FROM dual
WHERE NULL NOT IN (SELECT 1 FROM dual WHERE 1 = 0);

que retorna um conjunto vazio e 1 respectivamente. Quando substituímos algum outro valor por NULL, obtemos exatamente o mesmo resultado.

SELECT 1
FROM dual
WHERE 33 IN (SELECT 1 FROM dual WHERE 1 = 0);

SELECT 1
FROM dual
WHERE 33 NOT IN (SELECT 1 FROM dual WHERE 1 = 0);

Então, como a comparação entre NULL e o conjunto de resultados vazio funciona aqui?

sql-server oracle
  • 2 respostas
  • 785 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