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 / dba / 问题

All perguntas(dba)

Martin Hope
alper
Asked: 2024-04-26 19:46:17 +0800 CST

Por que existe uma enorme lacuna entre o tamanho alocado e o usado em um banco de dados

  • 7

Quero encontrar o espaço total usado e restante para cada banco de dados no Azure SQL MI.

Para isso, a partir de um exemplo, quando clico com o botão direito em um banco de dados e seleciono propriedades, vejo o seguinte exemplo de saída, onde o tamanho total deve ser de aproximadamente 365 GB:

insira a descrição da imagem aqui

                         data_size       log_size         total_size
TEST_DB                  355.69042968750    1.31347656250   357.00390625000

Quando executo o script a seguir, obtenha o tamanho de todas as tabelas no banco de dados, a soma das tabelas está em torno de ~ 500 MB, onde não tenho ideia de para onde vão os 364,5 GB restantes.

Além disso, quando executo o seguinte script da solução ( https://dba.stackexchange.com/a/339009/289736 ) novamente, vejo tamanhos de dados muito menores do que o tamanho dos dados, que é em torno de ~ 765 MB:

insira a descrição da imagem aqui


Eu me perco na maneira correta de obter o tamanho de um banco de dados, pois abordagens diferentes mostram tamanhos diferentes. Se houver uma enorme lacuna entre o tamanho alocado e o tamanho usado, de onde será gerada a lacuna?

sql-server
  • 1 respostas
  • 166 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
PajLe
Asked: 2024-04-26 01:30:36 +0800 CST

A consulta DMV do Analysis Services está sendo executada "no servidor" ou "no banco de dados"

  • 8

Estou fazendo algumas consultas DMV no SQL Server Analysis Service, como SELECT * FROM $system.DISCOVER_SESSIONS. Esta consulta retornará dados de todos os bancos de dados no servidor, portanto não é específica do banco de dados. Quando me conecto ao servidor por meio de AdomdConnection , não especifico o banco de dados/catálogo na cadeia de conexão e a consulta ainda funciona. Porém notei que um banco de dados está sempre associado a esta conexão, e geralmente é o primeiro banco de dados da lista de bancos disponíveis no servidor.

Minha pergunta é

  • esses tipos de consultas realmente sobrecarregam o banco de dados em questão, ou seja, se por algum motivo tivermos muitas consultas DMV que verificam as sessões do servidor, todas elas consultam o primeiro banco de dados escolhido automaticamente na lista e, portanto, impactam (desempenho- sábio) algum usuário que possa realmente fazer consultas "reais" neste banco de dados?
  • Ou esse tipo de consulta DMV afeta apenas o próprio servidor, e não o banco de dados de forma alguma e, portanto, o impacto no desempenho é o mesmo, independentemente do banco de dados escolhido?

Possivelmente, uma maneira mais curta de formular seria: os impactos no desempenho de uma consulta DMV estão relacionados ao servidor ou ao banco de dados?

sql-server
  • 1 respostas
  • 104 Views
Martin Hope
alper
Asked: 2024-04-25 20:57:54 +0800 CST

Execute `sp_spaceused` apenas para todos os bancos de dados

  • 7

A resposta seguinte ( Execute `sp_spaceused` para todas as tabelas em todos os bancos de dados ) executa a solução para sp_spaceusedtodas as tabelas em todos os bancos de dados.

Em vez disso, posso executá-lo apenas para todos os bancos de dados?


Consigo ver os resultados de todos os bancos de dados usando o script a seguir, mas, se possível, quero ver os resultados em uma única tabela do Excel, como a resposta vinculada:

DECLARE @DatabaseName NVARCHAR(255)
DECLARE @SqlQuery NVARCHAR(MAX)

-- Declare a cursor to loop through all databases
DECLARE database_cursor CURSOR FOR
SELECT name
FROM sys.databases
WHERE state_desc = 'ONLINE' -- Filter out offline databases if needed

-- Open the cursor
OPEN database_cursor

-- Fetch the first database name from the cursor
FETCH NEXT FROM database_cursor INTO @DatabaseName

-- Start looping through all databases
WHILE @@FETCH_STATUS = 0
BEGIN
    -- Build the dynamic SQL query to switch database context and execute the query
    SET @SqlQuery = 'USE [' + @DatabaseName + ']; EXEC sp_spaceused @oneresultset = 1'

    -- Execute the dynamic SQL query
    EXEC sp_executesql @SqlQuery

    -- Fetch the next database name from the cursor
    FETCH NEXT FROM database_cursor INTO @DatabaseName
END

-- Close and deallocate the cursor
CLOSE database_cursor
DEALLOCATE database_cursor

Exemplo de saída de visualização do Excel, onde posso copiar facilmente todas as linhas e colá-las no arquivo Excel como um todo:

insira a descrição da imagem aqui

sql-server
  • 2 respostas
  • 76 Views
Martin Hope
PTL_SQL
Asked: 2024-04-25 20:05:36 +0800 CST

Um grupo de disponibilidade distribuída do SQL Server pode estar entre AGs em diferentes domínios do Active Directory?

  • 5

Três perguntas, por favor:

  • Podemos ter um único DAG em 3 clusters WSFC, ou seja, abrangendo 3 AGs?

  • Em caso afirmativo, é possível configurá-lo de forma que dois AGs estejam no mesmo domínio do Active Directory enquanto um terceiro esteja em um domínio AD diferente?

  • Se não for recomendado configurar um único DAG em três AGs, é possível configurar um entre dois AGs em dois domínios AD diferentes?

Obrigado

sql-server
  • 1 respostas
  • 22 Views
Martin Hope
TheLegendaryCopyCoder
Asked: 2024-04-25 16:17:00 +0800 CST

O MySQL invalida ou altera uma tabela em cache quando linhas são adicionadas, atualizadas ou excluídas?

  • 5

O que o MySQL (InnoDB) faz quando armazena em cache uma tabela inteira na memória e uma ou mais linhas dessa tabela são alteradas?

O MySQL, neste caso, altera o cache na memória ou consideraria o cache sujo, despejaria os dados da tabela em cache e, em seguida, armazenaria novamente a tabela em cache na próxima vez que ela fosse consultada?

mysql
  • 1 respostas
  • 16 Views
Martin Hope
GammaGames
Asked: 2024-04-25 04:39:18 +0800 CST

Importar funções de <16 para >=16

  • 5

Eu tenho um backup do PostgreSQL 15 que estou tentando importar para o PostgreSQL 16. Uma das principais alterações entre as versões é "Restringir os privilégios do CREATEROLE e sua capacidade de modificar outras funções"

Anteriormente, as funções com privilégios CREATEROLE podiam alterar muitos aspectos de qualquer função que não fosse de superusuário. Essas alterações, incluindo a adição de membros, agora exigem que a função que solicita a alteração tenha permissão ADMIN OPTION.

Isso significa que dumps anteriores do banco de dados apresentam erros de lançamento de comandos de concessão de função. O sql foi obtido com pg_dumpall --roles-only( --no-ownernão tem efeito):

GRANT role TO user1 GRANTED BY user0;
ERROR:  permission denied to grant privileges as role "user0"
DETAIL:  The grantor must have the ADMIN option on role "role".

Tentei conceder as funções com admin para não ter esse problema quando tentarmos conceder no futuro, mas isso coloca os comandos fora de ordem e ainda falham na restauração:

GRANT role TO user1 GRANTED BY user0;
GRANT role TO user2 GRANTED BY user0;
GRANT role TO user3 GRANTED BY user0;
GRANT role TO user0 WITH ADMIN OPTION GRANTED BY [me];

Existe alguma maneira de deixar de lado os GRANTED BYcomandos ou qualquer outra maneira de corrigir isso além de vasculhar as permissões no PostgreSQL 15 para que sejam importadas sem problemas?

Editar: user0 já é um superusuário

postgresql
  • 1 respostas
  • 37 Views
Martin Hope
J. Mini
Asked: 2024-04-25 02:19:30 +0800 CST

Quais mensagens de erro exatas UMPPC*.DLL e SCRIPTCONTROL*.DLL causam o SQL Server Agent quando dispara pacotes SSIDB?

  • 8

A Microsoft mantém uma lista de DLLS ruins . Este é um item dessa lista (ênfase minha)

UMPPC*.DLL e SCRIPTCONTROL*.DLL

Esses arquivos DLL são carregados no espaço de endereço dos processos relacionados ao SQL Server se você ativar a configuração de prevenção de dados do modo de usuário adicional para programas de proteção CrowdStrike Antivírus/Endpoint. Você poderá notar falhas enquanto o SQL Server Agent tenta criar novos processos ao executar trabalhos. Você pode encontrar falhas ao tentar iniciar o SQL Server Management Studio. Você também pode ver que o SQL Server falha ao iniciar SQLDumper.exe para gerar despejos de memória. Recomendamos que você entre em contato com o suporte da Crowdstrike com informações relacionadas ao seu problema e pergunte se há uma solução disponível.

Estou em uma caixa do SQL Server 2019 e tenho muitos desses arquivos UMPPC*.DLL e SCRIPTCONTROL*.DLL. Estou pensando em usar o SQL Server Agent para disparar alguns pacotes SSISDB. No entanto, não sei como verificar se essas DLLs estão causando problemas. Isso me dá a seguinte pergunta: quais mensagens de erro exatas UMPPC .DLL e SCRIPTCONTROL .DLL fazem com que apareçam no SQL Server Agent quando ele dispara pacotes SSISDB?

sql-server
  • 1 respostas
  • 76 Views
Martin Hope
DSZ
Asked: 2024-04-24 22:36:11 +0800 CST

Como evito que gravações grandes em tabelas interrompam o banco de dados?

  • 5

Eu tenho um servidor MySQL Percona 8, rodando via Docker, atuando como armazenamento de dados de apoio para um serviço muito utilizado. A cada hora, será executado um script que lê um valor de uma coluna virtual de aproximadamente 1,7 milhão de linhas (estimativa de tamanho da tabela de 2,3 GiB) e insere esse valor específico e os dados-chave associados em outra tabela da qual o sistema, de outra forma, apenas lê. A coluna virtual é uma pesquisa JSON json_extract(jsonData, '$.root.interestingValue')e possui o GENERATEDsinalizador. A ideia por trás disso é colocar menos pressão sobre a tabela que é considerada ativa e atualizada regularmente, quando os usuários estão interessados ​​apenas em alguns valores específicos e não é necessário recuperar o valor mais recente absoluto.

A consulta é a seguinte (com tabelas/colunas renomeadas)

CREATE TEMPORARY TABLE t1_cache_temp
SELECT
  t2.id as uid,
  t3.displayText as dt,
  t2.virtualColumn as interestingValue
FROM liveTable t2
JOIN otherLiveTable t3 on t2.id = t3.id;

TRUNCATE TABLE t1_cache;

INSERT INTO t1_cache
SELECT uid, dt, interestingValue FROM t1_cache_temp;

DROP TEMPORARY TABLE t1_cache_temp;

O tempo total gasto por este script é de 47 segundos.

Embora a leitura da tabela InnoDB e a gravação na tabela temporária sejam adequadas, a gravação na outra tabela InnoDB faz com que todas as outras operações no banco de dados sejam interrompidas após os primeiros segundos. Eu reduzi a INSERT INTO t1_cache...instrução executando cada instrução individualmente.

Também tentei escrever em tabelas novas e completamente não utilizadas (também usando InnoDB), o que dá o mesmo resultado. No momento da realização do último teste, apenas 2% do Máximo de Conexões permitidas estão em uso. Além disso, apenas 48% do buffer pool do InnoDB estava em uso.

Se eu mudar a mesa para MyISAM, tudo funciona normalmente, sem interrupções ou travamentos. Além disso, se eu remover a tabela temporária, o mesmo problema ocorrerá, independentemente do mecanismo InnoDB ou MyISAM.

Embora usar MyISAM seja provavelmente a melhor opção, o que poderia estar causando isso? Há algo que eu possa fazer sobre isso no nível da configuração?

mysql
  • 2 respostas
  • 47 Views
Martin Hope
Akshay Hiremath
Asked: 2024-04-24 07:14:44 +0800 CST

O que significam os números ou tags na página de perguntas frequentes do Apache Cassandra?

  • 6

Sou novo no Apache Cassandra e estava acessando a página de perguntas frequentes do Apache Cassandra. Vejo frases como as seguintes nas respostas:

Veja 256e 43para mais detalhes sangrentos.

Ver topology-changes.

Não consigo descobrir o que significa 256e 43ou topology-changesaqui. Eles são na cor rosa, mas não há nenhum hiperlink por trás deles que os leve a lugar nenhum. Também não consigo encontrar nada na página de perguntas frequentes. Tentei pesquisar com essas palavras-chave no campo de pesquisa do site Cassandra, mas não obtive nenhum resultado significativo.

Alguém pode me ajudar a entender isso? Se este não for o lugar certo para esta pergunta, por favor, não diminua o voto, apenas deixe-me saber no comentário e posso movê-lo para o fórum/seção correto. Cheguei aqui pela página Comunidade-> Discussões

cassandra
  • 1 respostas
  • 12 Views
Prev
Próximo

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