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

M.Ali's questions

Martin Hope
M.Ali
Asked: 2020-06-19 15:35:13 +0800 CST

A E/S está congelada no banco de dados DBName. Não é necessária nenhuma ação do usuário

  • 0

Estamos no Windows Server 2019 na VM do Azure, com o SQL Server 2019 Enterprise CU4 instalado. Os trabalhos de backup diferencial do SQL Server estão falhando intermitentemente.

Examinei o log de erros do SQL Server e vejo o seguinte erro para todos os bancos de dados:

A E/S está congelada no banco de dados DBName. Não é necessária nenhuma ação do usuário. No entanto, se a E/S não for retomada imediatamente, você poderá cancelar o backup.

seguido pelos seguintes logs de erro:

A E/S foi retomada no banco de dados DBName. Não é necessária nenhuma ação do usuário.

Depois que esse erro ocorre, a tarefa de backup diferencial começa a falhar com o seguinte erro:

A execução da consulta "BACKUP DATABASE [DBName] TO DISK = N'X:\MSSQL..." falhou com o seguinte erro: "Não é possível realizar um backup diferencial para o banco de dados "DBName", pois não existe um backup de banco de dados atual. Execute um backup completo do banco de dados reemitindo BACKUP DATABASE, omitindo a opção WITH DIFFERENTIAL. BACKUP DATABASE está terminando de forma anormal.". Possíveis motivos de falha: Problemas com a consulta, propriedade "ResultSet" não definida corretamente, parâmetros não definidos corretamente ou conexão não estabelecida corretamente.

Neste ponto, não podemos fazer mais backups diferenciais até que tenhamos feito um backup completo do banco de dados.

Verifiquei e não há outro trabalho do SQL Agent em execução e não consigo entender por que esse erro está ocorrendo.

Fiz algumas pesquisas on-line e parece que era um problema conhecido no SQL Server versão 2016, 2017 e 2019, mas foi corrigido em CUs para todas essas versões. O artigo a seguir fala sobre esse problema e confirma que o problema foi corrigido no SQL Server 2019 no CU2.

https://support.microsoft.com/en-us/help/4523102/fix-sql-server-database-remains-in-frozen-io-state-indefinitely-when

Temos o SQL Server 2019 com CU4 aplicado. Portanto, todas as correções devem estar lá do CU2. No entanto, ainda estamos enfrentando o problema de congelamento de E/S.

Quaisquer indicações ou sugestões são muito apreciadas. Desde já, obrigado.

sql-server sql-server-2019
  • 2 respostas
  • 673 Views
Martin Hope
M.Ali
Asked: 2020-06-02 03:47:53 +0800 CST

O nó não proprietário do Windows Server 2019 não pode ver o nome do cluster ou IP

  • 0

Estou tentando criar um grupo de disponibilidade AlwaysOn do SQL Server com 2 nós no Azure. Criei 2 VMs SQL Server e Gerenciei para criar um Cluster com ambos os Nodes como membros desse cluster. 

Eu segui as etapas neste artigo de criação de clusters do Windows  https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-tutorial com 1 mudança significativa, usei o powershell para criar o cluster. 

New-Cluster -Name SQLClusterName -Node ("SQLNode1","SQLNode2") –StaticAddress 172.100.10.100 -NoStorage -ManagementPointNetworkType Singleton

Porque, se eu usei o Failover Cluster Manager para construir o cluster, ele não criou Cluster Core Resources e não me deu a opção de selecionar um IP para o cluster. 

De qualquer forma, uma vez configurado o cluster, tentei configurar o Grupo de Disponibilidade AlwaysOn, mas o assistente não consegue criar o Grupo de Disponibilidade AlwaysOn, reclama que não consegue se conectar ao Cluster. 

Eu fui em ambos os nós e o que percebi é que posso pingar para o nome do cluster ou IP e obter uma resposta apenas do nó do proprietário. No nó não proprietário do cluster, não consegui pingar o nome ou o IP do cluster. Se eu fizer failover do cluster para o 2º nó, o comportamento do ping será o contrário.

Todo mundo já passou por esse problema? É assim, como você conseguiu resolver isso? Qualquer ajuda ou um ponteiro na direção certa é muito apreciado. Desde já, obrigado.

azure-vm sql-server-2019
  • 1 respostas
  • 68 Views
Martin Hope
M.Ali
Asked: 2020-05-20 05:18:37 +0800 CST

Não é possível encontrar o DReplay.exe para SQL Server 2019

  • 3

Estou trabalhando na versão SQL Server 2019 e tentando configurar um ambiente de teste de carga usando SQL Server Distributed Reply Controller - Client, porém não consigo encontrar o DReplay.exe. Eu pensei que ele seria instalado como parte da instalação do Distributed Reply Controller, mas não foi. Alguns artigos sugerem que ele será instalado como parte das Ferramentas de Gerenciamento da mídia de instalação do SQL Server, mas a opção Ferramentas de Gerenciamento foi removida da opção de instalação.

Também não há link online para sugerir uma maneira alternativa de instalar o DReplay.exe. Ficando sem opções agora.

Como uma medida desesperada, tentei copiar o conteúdo da pasta "C:\Program Files (x86)\Microsoft SQL Server\150\Tools\Binn" de um servidor mais antigo onde foi instalado para o novo SQL Server 2019 que fez não funciona, lançando o erro "Falha ao carregar o assembly...."

Alguma ideia alguma sugestão por favor?? Obrigada.

sql-server sql-server-2019
  • 1 respostas
  • 313 Views
Martin Hope
M.Ali
Asked: 2017-02-05 15:24:54 +0800 CST

Maneira mais eficiente de unir duas tabelas com valor MAX

  • 4

Estou otimizando uma consulta, onde tenho que juntar duas tabelas, digamos Producte TransactionHistoryuma tabela, e retornar várias colunas de ambas as tabelas para a última TransactionDateda TransactionHistorytabela para cada Produto na Producttabela.

TransactionHistorytable tem cerca de 13 milhões de linhas e a Producttabela tem quase 2 milhões de linhas.

Parece muito fácil, não é? mas para diferentes cenários, a consulta diferente tem um desempenho diferente.

Não estou usando meus nomes de tabela reais aqui, para mostrar a sintaxe de consulta diferente que tentei, estou usando as tabelas BigProduct e BigSalesHistory de Adam Machanic.


A consulta foi originalmente escrita como ....

SELECT p.ProductID
     , p.Name
     , h.Quantity
     , h.TransactionDate
FROM [dbo].[bigProduct] p
INNER JOIN [dbo].[bigTransactionHistory] h ON p.ProductID = h.ProductID
WHERE h.TransactionDate = ( SELECT MAX(TransactionDate)
                            FROM [dbo].[bigTransactionHistory]
                            WHERE ProductID = h.ProductID )
AND p.ProductID > 1317
AND p.ProductID < 1416
GO

O que resultou em cerca de 30 contagens de varredura e quase 300.000 leituras lógicas.


Eu sendo um grande fã de funções de janelas, escrevi as seguintes consultas usando ROW_NUMBER(), ambas saíram pela culatra:

SELECT p.ProductID
     , p.Name
     , c.*
FROM [dbo].[bigProduct] p
INNER JOIN ( SELECT  h.ProductID
                   , h.Quantity
                   , h.TransactionDate
                   , ROW_NUMBER() OVER (PARTITION BY h.ProductID 
                                            ORDER BY h.TransactionDate DESC) rn
              FROM [dbo].[bigTransactionHistory] h
            ) c
            ON p.ProductID = c.ProductID AND rn = 1
WHERE p.ProductID > 1317
  AND p.ProductID < 1416
GO

E

SELECT p.ProductID
     , p.Name
     , c.*
FROM [dbo].[bigProduct] p
CROSS APPLY ( SELECT  h.ProductID
                   , h.Quantity
                   , h.TransactionDate
                   , ROW_NUMBER() OVER (PARTITION BY h.ProductID 
                                            ORDER BY h.TransactionDate DESC) rn
              FROM [dbo].[bigTransactionHistory] h
              WHERE p.ProductID = ProductID
            ) c
WHERE p.ProductID > 1317
  AND p.ProductID < 1416
  AND rn = 1
GO

A contagem de varreduras foi para 100s e as leituras lógicas saltaram para 700.000s.


Ficando bastante desapontado com o desempenho da função de janela, reescrevi a consulta usandoCROSS APPLY

SELECT p.ProductID
     , p.Name
     , c.*
FROM [dbo].[bigProduct] p
CROSS APPLY ( SELECT TOP 1  h.ProductID
                          , h.Quantity
                          , h.TransactionDate
              FROM [dbo].[bigTransactionHistory] h
              WHERE p.ProductID = h.ProductID
              ORDER BY h.TransactionDate 
             ) c
WHERE p.ProductID > 1317
  AND p.ProductID < 1416
GO

Agora, essa consulta parece ter o melhor desempenho de todas as mencionadas acima, mas assim que o intervalo da consulta externa para ProductIDaumenta, essa consulta dá terrivelmente errado e começa a ter um desempenho pior do que os dois acima.

Além disso, embora tenha reduzido as leituras lógicas para 27.000, mas o tempo de CPU e o tempo decorrido aumentaram 8 vezes.


Existe uma maneira mais eficiente de escrever uma consulta como essa, tendo em mente que o intervalo de consulta externo para ProductID varia muito?.

Qualquer sugestão ou indicações na direção certa são muito apreciadas. Obrigada.

sql-server sql-server-2014
  • 1 respostas
  • 5795 Views
Martin Hope
M.Ali
Asked: 2016-07-12 11:26:37 +0800 CST

O Report Builder não se conecta a um servidor de relatórios remotos

  • 5

Ambiente Atual

Estou com um pouco de dificuldade aqui, tenho um Reporting Services instalado em um servidor e o mecanismo de banco de dados do SQL Server instalado em outro servidor.

Os usuários estão se conectando ao Reports Manager, que obviamente aponta para o servidor onde o Reporting Services está instalado.

O usuário usa um login genérico (uma conta de administrador local no Report Server) para se conectar ao gerenciador de relatórios.

Mas quando os usuários clicam no botão Construtor de Relatórios no Gerenciador de Relatórios, ele inicialmente falhou ao iniciar reclamando `"O aplicativo não pode recuperar os arquivos. A autenticação falhou."

Depois de muita pesquisa, descobri que, embora os usuários inserissem as credenciais de uma conta local ao se conectar ao Gerenciador de relatórios, mas quando clicassem no botão Report Builder, as credenciais de sua conta do Windows eram coletadas, portanto, o aplicativo ClickOnce falhou ao autenticar o usuário e falhou ao iniciar.

Alterei esse comportamento permitindo Basic Authenticationno Reporting Server e Permitindo Anonymous Authenticationno Reports Builder.

Agora, quando os usuários clicam em Report Buildervez de no construtor de relatórios, apenas selecionando as credenciais da conta atual do Windows, ele solicita as credenciais, o usuário passa as credenciais da conta de administrador local no servidor de relatórios e o aplicativo ClickOnce é baixado conforme o esperado.

Problema

Agora, o construtor de relatórios foi iniciado corretamente e posso clicar com o botão direito do mouse na pasta The datasources no painel esquerdo do designer, procurar as fontes de dados disponíveis, testar a conexão (mostra testado com êxito). Mas assim que clico no DataSet e tento adicionar um novo conjunto de dados, ele gera um erro dizendo "Falha na autenticação, não é possível conectar-se às fontes de dados".

Mesmo que na última etapa o teste de conexão tenha sido bem-sucedido, mas neste estágio está falhando.

insira a descrição da imagem aqui

Nota importante

O SQL Server não tem IP externo, só pode ser visto no servidor de relatórios. Poderia ser este o motivo da falha na conexão?

Quero dizer, o construtor de relatórios tenta obter uma conexão direta com o SQL Server quando iniciado?

Ou há mais alguma coisa que eu perdi?

Qualquer indicação de qualquer sugestão é muito apreciada, obrigado.

sql-server sql-server-2008-r2
  • 3 respostas
  • 9505 Views
Martin Hope
M.Ali
Asked: 2016-05-21 15:13:49 +0800 CST

Licença do SQL Server Standard substituída devido à versão de avaliação do Report Builder

  • 1

Um colega meu me ligou hoje para me dizer que em um de nossos servidores o SQL Server parou de funcionar. Se ele tentar executar o estúdio de gerenciamento, ele lançará um erro dizendoThe evaluation period has expired...

insira a descrição da imagem aqui

Mas a pessoa afirma que inicialmente instalou o SQL Server 2008 R2 Standard Version (cópia licenciada) no servidor, mas posteriormente alguém por engano instalou a versão de avaliação corporativa do Report Builder 3.0 nessa máquina e isso fez com que a licença do servidor SQL expirasse.

Eu nunca ouvi falar de tal coisa. Achei que o Report Builder era um aplicativo cliente e, desde que o servidor ao qual você está se conectando seja licenciado, você poderá usá-lo, mas isso nunca afetaria o licenciamento no servidor ao qual está se conectando.

De qualquer forma, conectei-me ao próprio servidor e comecei a verificar o log do Windows para verificar quando o SQL Server foi instalado.

No log da janela quase um ano atrás, quando o SQL Server foi instalado, todos os eventos MsiInstaller durante a instalação do SQL Server apontavam para um diretório

C:\appstore\2008 R2 Standard\Standard Edition\x86\setup\.....

o que eu acho que indica que foi a edição padrão que foi instalada originalmente, mas depois que a instalação foi concluída e o serviço sql server foi iniciado pela primeira vez, o log do Windows mostra o seguinte:

insira a descrição da imagem aqui

Questão 1

estou correto ao concluir que mesmo que a pessoa pense que instalou uma versão padrão do sql server, na verdade era uma versão de avaliação corporativa do sql server ??

Questão 2

É possível que uma versão Enterprise Evaluation do Report Builder possa afetar a licença do SQL Server padrão já instalado e fazer com que ela expire?

sql-server sql-server-2008-r2
  • 2 respostas
  • 345 Views
Martin Hope
M.Ali
Asked: 2015-10-14 15:29:28 +0800 CST

SSRS CROSS Autenticação do Servidor de Relatórios de Domínio

  • 1

Estou com uma situação bastante complicada em mãos, deixe-me tentar explicar.

Eu tenho um SQL Server e um Web Server em um domínio separado (vamos chamá-lo de domínio A).

O SQL Server possui os bancos de dados para serviços de relatórios. O servidor da Web possui serviços de relatórios instalados.

O SSRS também possui certificados SSL instalados e estamos usando o protocolo https para conectar ao gerenciador de relatórios.

Agora preciso dar acesso aos usuários do domínio B para se conectarem ao Reports Manager (servidor de relatórios no Domínio A).

Os usuários do Domínio B não podem ter nenhum login no Domínio A onde os serviços de relatórios estão instalados, sei que para acessar o gerenciador de relatórios preciso adicionar logins/grupos de domínio ao gerenciador de relatórios e atribuir a eles as funções apropriadas para acessar os relatórios.

Quais opções eu tenho (se houver) para dar acesso aos usuários do Domínio B para se conectarem a um Gerenciador de Relatórios no Domínio A?

Nota importante:

O acesso ao servidor de relatórios é via NLB com IP externo, o servidor de relatórios (servidor web) ou o servidor SQL não possui nenhum IP externo

sql-server sql-server-2008-r2
  • 1 respostas
  • 5064 Views
Martin Hope
M.Ali
Asked: 2015-07-06 03:32:30 +0800 CST

A instalação do cluster de Failover do SQL Server falha `RequireKerberos` para o valor '1'

  • 1

Olá, estou tentando criar um cluster de failover do SQL Server. O cluster do Windows está configurado e funcionando conforme o esperado, mas agora, quando tento instalar o SQL Server, ele apresenta o seguinte erro:

insira a descrição da imagem aqui

SO: Windows Server 2008 R2 DataCentre x64 bits
SQL: SQL Server 2008 Enterprise Edition x64 bits

Eu vi algumas postagens online sugerindo que preciso do SQL Server 2008 com SP1. Consigo instalar o SQL Server 2008 e depois aplicar o SP1 mas ele não me deixa nem instalar e dá o erro.

Quaisquer sugestões ou indicações na direção certa são muito apreciadas. obrigada.

sql-server sql-server-2008
  • 1 respostas
  • 257 Views
Martin Hope
M.Ali
Asked: 2015-02-19 13:33:39 +0800 CST

Maior espera WriteLog

  • 3

Recebi um servidor (SQL Server 2008R2 64 bits) onde nosso aplicativo está sendo executado. Houve uma diminuição gradual no desempenho do aplicativo. Agora chegou a um ponto em que o desempenho se tornou uma preocupação séria. Comecei a investigar e segui os seguintes passos.

  1. Verifiquei o uso do processador e da memória no servidor sql (nada está esgotado), muitos recursos gratuitos.

  2. A fragmentação do índice foi mínima, mas reconstruiu os índices e atualizou as estatísticas.

  3. Nenhuma alteração foi feita no código do aplicativo (código do aplicativo/código do servidor SQL), portanto, é improvável que o baixo desempenho devido ao código mal escrito seja a causa do baixo desempenho geral do aplicativo.

  4. Finalmente consegui o roteiro de Paul Randal Wait statistics, or please tell me where it hurts. O resultado do script mostra que o sql server precisa esperar muito ao gravar no arquivo de log. O maior tipo de espera é WRITELOG.

Usei a ferramenta SQLIO para medir o desempenho de leitura/gravação do disco e parece tão rápido quanto qualquer outro disco.

Eu sei de fato que suspeito que é mais provável que haja algo errado com o processo de gravação de log, mas estou ficando sem lugares para procurar, alguém pode me aconselhar onde mais devo procurar problemas.

Quais podem ser as possíveis causas de gravações de log lentas? ou qualquer conselho ou indicação na direção certa são muito apreciados. Obrigada.

╔═══════════════╦═════════════╦═══════════╗
║   WaitType    ║   Wait_S    ║ WaitCount ║
╠═══════════════╬═════════════╬═══════════╣
║ IO_COMPLETION ║ 4850500.20  ║ 4553514   ║
║ WRITELOG      ║ 25291893.90 ║ 795877    ║
╚═══════════════╩═════════════╩═══════════╝
sql-server sql-server-2008-r2
  • 1 respostas
  • 9135 Views
Martin Hope
M.Ali
Asked: 2014-12-14 13:40:07 +0800 CST

Banco de dados com vários arquivos .mdf

  • 11

Já procurei na internet mas não encontrei o que procuro.

O problema/consulta é, pelo que sei, um banco de dados no SQL Server deve ter um arquivo .mdf e talvez alguns arquivos .ndf e um arquivo .log.

Já vi muitos bancos de dados com um mdf e vários arquivos ndf. Mas recentemente me deparei com um banco de dados em um servidor onde cada banco de dados tinha vários arquivos mdf.

Fiz um backup de alguns bancos de dados, movi-os para outro servidor e restaurei o arquivo Primário como .mdf e todos os outros arquivos como .ndf, obviamente, exceto o arquivo de log que foi restaurado como .log.

Agora minhas perguntas são:

  1. Existe alguma sabedoria em ter vários arquivos .mdf para um banco de dados?
  2. Existe alguma desvantagem em ter vários arquivos .mdf?

EraSQL Server 2008 R2 64bit Enterprise Edition

Qualquer conselho ou indicação na direção certa é muito apreciado. Obrigada.

sql-server sql-server-2008-r2
  • 1 respostas
  • 20111 Views
Martin Hope
M.Ali
Asked: 2014-10-24 14:37:36 +0800 CST

Falha no logon do SQL Server Replication Snapshot Agent

  • 1

Eu configurei TRANSACTIONAL REPLICATIONdo ServerA para o ServerB

ServerA= Primary Server = SQL Server 2008 R2 Enterprise
ServerB= Secondary Server= SQL Server 2008 R2 Standard Edition.

Eu usei uma conta de domínio para Snapshot Agent e Log Reader Agent, chamada SQLAgent.

O instantâneo inicial é inicializado com sucesso, a partir daí é tudo ladeira abaixo.

Registro de erros:

Falha de logon para o usuário 'ServerName\SQLAgent'. Motivo: falha na validação de acesso ao servidor baseado em token devido a um erro de infraestrutura. Verifique se há erros anteriores. [CLIENTE: ]

Monitor de replicação:

Publication Status: OK
Agents: para Agentes Snapshote Log ReaderStatus mostra que está em execução.....
e Last RunPropriedade dizStarting Agent...

Como é óbvio a partir da mensagem de erro, o Login está falhando ao obter acesso ao SQL Server, portanto, apenas para fins de teste, dei a função de administrador do sistema da conta SQLAgent. Mesmo assim o erro persiste.

Todo o material que posso encontrar online sugere Dar mais permissões para fazer login resolverá o problema. Mas se a função de administrador de sistema não resolveu, estou ficando sem ideias agora.

Alguém pode sugerir o que estou perdendo?

como posso corrigir isso?

sql-server sql-server-2008-r2
  • 1 respostas
  • 3847 Views
Martin Hope
M.Ali
Asked: 2014-09-26 03:14:56 +0800 CST

Como recuperar o espaço não utilizado em um banco de dados

  • 1

O banco de dados tem quase 55 GB de tamanho. Esse banco de dados nunca deveria ter crescido para esse tamanho, pois alguns dos trabalhos de manutenção não estavam em execução.

Excluí quase 30 GB de dados. Agora, o tamanho do banco de dados é de quase 45 GB e o espaço disponível é de quase 20 GB.

O que mostra que o tamanho real do banco de dados agora é de quase 25 GB e há algum espaço não utilizado que precisa ser devolvido ao sistema operacional.

Executei comandos DBCC para banco de dados e arquivos individuais (8 deles). E só consegui liberar alguns GBs.

Os comandos que usei são os seguintes

DBCC SHRINKDATABASE (N'MyDB');
GO

DBCC SHRINKFILE('Filename1', 0 , TRUNCATEONLY)
GO
DBCC SHRINKFILE('Filename2', 0 , TRUNCATEONLY)
GO
  and so on....

Mas isso parece não afetar o tamanho do banco de dados e o espaço disponível.

Eu li um artigo que sugeria a reconstrução de índices e a redução do banco de dados resolveria esse problema.

Mas, depois de reduzir o banco de dados, teria que reconstruir os índices de qualquer maneira, pois o encolhimento do banco de dados teria feito uma bagunça nos índices.

Meu requisito é deixar apenas 10% de espaço para o banco de dados crescer e liberar o espaço não utilizado. Em seguida, pretendo reconstruir os índices e atualizar as estatísticas depois disso.

Qual seria a melhor abordagem para este problema. Quaisquer sugestões ou indicações na direção certa são muito apreciadas.

Agradeço antecipadamente

sql-server sql-server-2005
  • 1 respostas
  • 18009 Views
Martin Hope
M.Ali
Asked: 2014-09-19 07:21:57 +0800 CST

Unidade virtual única versus várias unidades virtuais para arquivos do SQL Server

  • 5

Olá pessoal, tenho uma dúvida sobre como duas configurações diferentes de disco rígido podem afetar o desempenho do meu banco de dados.

Eu tenho duas opções.

Opção 1:

Um disco rígido físico e vários discos rígidos virtuais para arquivos de banco de dados do SQL Server (.mdf, .ndf), arquivos de log, TempDB, backups, etc.

Opção 2:

Um disco rígido físico e, em seguida, um enorme disco rígido virtual para arquivos de banco de dados do SQL Server (.mdf, .ndf), arquivos de log, TempDB, backups, etc.

insira a descrição da imagem aqui

Pelo que sei, se todos fossem discos rígidos físicos, ter várias unidades para todos esses arquivos (tempDB, arquivo de log, backups, arquivos de banco de dados) definitivamente se beneficiaria do processamento paralelo.

Mas há alguma desvantagem em ter um disco rígido virtual enorme em comparação com vários discos rígidos virtuais, pois, na realidade, quando o Sql Server está lendo ou gravando, tudo será feito a partir de um disco rígido físico?

Um método é preferido em detrimento de outro? Qualquer sugestão ou indicação na direção certa é muito apreciada. Obrigado

sql-server sql-server-2008-r2
  • 3 respostas
  • 2421 Views
Martin Hope
M.Ali
Asked: 2014-08-09 01:56:24 +0800 CST

SQL Server 2000 Backup falha com Status = 33

  • 0

Estou tentando fazer um backup completo de um tamanho de banco de dados de cerca de 75 GB.

É SQL Server 2000 - 8.00.2055 x86 versão. Tenho bastante espaço em disco onde o backup está sendo criado. Portanto, o espaço em disco não é um problema.

O processo de backup começa bem, mas no meio do caminho ocorre um erro apenas dizendo with status = 33.

insira a descrição da imagem aqui

Eu tenho procurado por qualquer informação online, mas não consegui encontrar nada.... Qualquer sugestão, qualquer solução, qualquer indicação na direção direta é muito apreciada.......

sql-server backup
  • 1 respostas
  • 247 Views
Martin Hope
M.Ali
Asked: 2014-06-12 06:46:55 +0800 CST

as consultas distribuídas são configuradas para serem executadas no modo de apartamento de thread único

  • 3

Eu tenho o sql server 2008 R2 64bit Developer's Edition instalado na minha máquina.

E Microsoft Office 2010 Professional 32 bits.

Eu tenho tentado importar alguns dados do Excel de uma planilha do Excel para um banco de dados do sql server. Eu usei a seguinte consulta para fazer isso:

Consulta

SELECT * 
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
                'Excel 8.0;Database=D:\Files\BlueFile.xlsx;IMEX=1',
                'SELECT * FROM [Sheet1$]')

Entendo que o sql server desativou esse recurso por padrão como medida de segurança, no entanto, executei as seguintes instruções para habilitá-lo.

Configuração

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO

Mensagem de erro

No entanto, toda vez que executo a instrução select para obter dados da planilha do Excel, recebo o seguinte erro.

Msg 7308, nível 16, estado 1, linha 1 O provedor OLE DB
'Microsoft.Jet.OLEDB.4.0' não pode ser usado para consultas distribuídas porque o provedor está configurado para ser executado no modo de apartamento single-thread.

sql-server sql-server-2008-r2
  • 1 respostas
  • 38641 Views
Martin Hope
M.Ali
Asked: 2014-04-30 01:21:19 +0800 CST

Falha na tarefa de backup do SQL Server

  • 1

Eu tenho uma configuração de trabalho do agente SQL para fazer backup completo todas as noites. Ontem à noite, o trabalho falhou com a seguinte mensagem de erro.

Mensagem de log de erro do SQL Server

BackupIoRequest::ReportIoError: falha de gravação no dispositivo de backup 'H:\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\My_Database_backup_2014_04_28_233008_2135500.bak'. Erro 2 do sistema operacional (falha ao recuperar o texto para este erro. Motivo: 15100).

Erro: 3041, Gravidade: 16, Estado: 1.

Registro do Histórico de Tarefas do SqlAgent

Executado como usuário: DomainName\sqlagent. Microsoft (R) SQL Server Execute Package Utility Versão 10.50.2500.0 para 64 bits Copyright (C) Microsoft Corporation 2010. Todos os direitos reservados. Iniciado: 23:30:01 Progresso: 28/04/2014 23:30:06.81 Fonte: {123123123-F70A-430F-8041-12312312313} Executando a consulta "DECLARE @Guid UNIQUEIDENTIFIER EXECUTE msdb..sp...".: 100% concluído End Progress Error: 2014-04-28 23:30:16.19 Código: 0xC123123
Fonte: Backup do banco de dados (completo) Execute a tarefa SQL Descrição: A execução da consulta "BACKUP DATABASE [My_Database] TO DISK = N'H:\MSS..." falhou com o seguinte erro: "Write on" H:\MSSQL10_50. MSSQLSERVER\MSSQL\Backup\MY_Database_backup_2014_04_28_233008_2135500.bak" falhou: 2 (falha ao recuperar o texto para este erro. Motivo: 15100) O BACKUP DATABASE está sendo encerrado de forma anormal. 10% processado. 20% processado. 30% processado. 40% processado. 50% processado. 60% processado.". Possíveis motivos de falha: Problemas com a consulta, propriedade "ResultSet" não definida corretamente, parâmetros não definidos corretamente ou conexão não estabelecida corretamente. End Error DTExec: A execução do pacote retornou DTSER_FAILURE (1). Iniciado: 23:30:01 Terminado: 23:30: 16 Decorridos: 14,844 segundos. A execução do pacote falhou. A etapa falhou.

Depois de fazer a pesquisa na web, a maioria das postagens sugere que não tenho espaço suficiente nos discos, verifiquei o espaço em meus discos, tenho pelo menos 30 GB de espaço livre em quase todas as unidades (disco para .mdf e disco arquivos .ldf). Tenho quase 15 GB de espaço livre na minha unidade C. como uma das postagens na web sugeria que não ter espaço suficiente na unidade C também pode causar problemas.

Alguém já enfrentou o mesmo problema, como você o corrigiu? qual pode ser o motivo desse erro e como posso evitá-lo no futuro. Quaisquer sugestões na direção certa são muito bem-vindas. Obrigada.

sql-server sql-server-2008-r2
  • 1 respostas
  • 18204 Views
Martin Hope
M.Ali
Asked: 2014-03-21 13:08:32 +0800 CST

Criando usuários no servidor secundário no envio de logs

  • 7

Eu tenho um servidor de produção, digamos ServerAque configurei o envio de log para o ServerBqual é deixado no modo somente leitura. O objetivo desse envio de log é diminuir a carga no servidor de produção para algumas consultas caras (relatórios dolorosos).

Agora, se eu tiver que criar alguns logins usando nossas contas de domínio. Não posso fazer isso porque o banco de dados secundário está no formato standby mode.

Achei que, se eu criar esses logins no servidor primário, eles serão copiados para o servidor secundário e os logs serão restaurados lá, mas não é o caso.

Eu fiz muitas pesquisas online para encontrar uma maneira de contornar isso. Eu encontrei os seguintes recursos para isso. Eu tentei todos os métodos sugeridos neste artigo, mas nenhum deles parece funcionar.

  1. Log Shipping in SQL Server 2008 R2 for set BI on replicated database

  2. How to transfer logins and passwords between instances of SQL Server

  3. Orphaned Users with Database Mirroring and Log Shipping

Alguém experimentou o mesmo problema? o que você fez? Existe alguma maneira de contornar este problema? Qualquer sugestão, qualquer ponteiro, por favor.

sql-server sql-server-2008-r2
  • 1 respostas
  • 12146 Views
Martin Hope
M.Ali
Asked: 2014-01-24 15:14:13 +0800 CST

Erro "O banco de dados está em transição"

  • 14

Hoje eu estava tentando restaurar um banco de dados sobre um banco de dados já existente, simplesmente cliquei com o botão direito do mouse no banco de dados em SSMS -> Tarefas -> Desconectar para que eu pudesse restaurar o banco de dados.

Uma pequena janela pop-up apareceu e mostrou Query Executing.....por algum tempo e depois lançou um erro dizendo Database is in use cannot take it offline. Do qual eu reuni existem algumas conexões ativas para esse banco de dados, então tentei executar a seguinte consulta

USE master
GO
ALTER DATABASE My_DatabaseName
SET OFFLINE WITH ROLLBACK IMMEDIATE
GO

Novamente, neste ponto, o SSMS apareceu Query Executing.....por algum tempo e depois lançou o seguinte erro:

Msg 5061, Level 16, State 1, Line 1
ALTER DATABASE failed because a lock could not be placed on database 'My_DatabaseName'. Try again later.
Msg 5069, Level 16, State 1, Line 1
ALTER DATABASE statement failed.

Depois disso, não consegui me conectar ao banco de dados por meio do SSMS. e quando tentei colocá-lo offline usando o SSMS, ele apresentou um erro dizendo:

Database is in Transition. Try later .....

Neste ponto, eu simplesmente não conseguia tocar no banco de dados, nada que tentei, retornou a mesma mensagem de erro Database is in Transition.

Peguei no google e li algumas perguntas em que as pessoas enfrentaram problemas semelhantes e recomendaram fechar o SSMS e abri-lo novamente, assim como eu e como era apenas um servidor dev, acabei de excluir o banco de dados usando o SSMS e restaurá-lo em um novo banco de dados.

Minha pergunta é o que poderia ter causado isso ?? e como posso evitar que isso aconteça no futuro e se eu acabar na mesma situação no futuro, existe alguma outra maneira de corrigi-lo além de excluir todo o banco de dados ???

obrigada

sql-server sql-server-2008-r2
  • 3 respostas
  • 71503 Views
Martin Hope
M.Ali
Asked: 2013-11-29 12:50:45 +0800 CST

Configuração de segurança do SSRS Reports Manager

  • 1

Acontece que estou configurando um servidor de relatórios no trabalho desde o início. Tendo muito pouca experiência em administração de servidor SQL, estou achando muito difícil definir as configurações de segurança para o Gerenciador de Relatórios.

Entendo que todos os usuários que acessarão o Gerenciador de Relatórios precisarão de permissões em Dois Níveis

1 – Permissão para acessar dados do sql server. (para o qual, após algumas pesquisas, decidi usar a função datareader.

2- Permissão para acessar o gerenciador de relatórios para o qual tenho a opção de escolher entre as funções do gerenciador de relatórios, como (navegador, gerenciador de conteúdo etc etc.)

Para o gerenciador de relatórios, criei uma nova função apenas com permissões para visualizar relatórios.

Problema

Com todos esses filtros de segurança em vigor, quando adicionei uma conta de usuário de domínio ao Gerenciador de relatórios, o usuário pode navegar em qualquer lugar no Gerenciador de relatórios (pode acessar pastas, DataSources e relatórios para os quais não tem permissão).

Não desejo que os usuários exibam fontes de dados ou quaisquer outras pastas ou relatórios para os quais não tenham permissão.

O que eu tentei até agora

1- Adicionado um usuário a uma pasta no gerenciador de relatórios, mas eles podem navegar para qualquer outra pasta no gerenciador de relatórios.

2- Adicionado um usuário a apenas um relatório, novamente eles podem navegar para qualquer outra pasta no Gerenciador de relatórios.

3- Eu estava usando uma conta virtual para SSRS Service Account, removi isso e tentei em todas as outras 3 contas integradas para conta de serviço, LocalService, LocalNetwork e LocalSystem. (Não tenho certeza se isso teria feito diferença).

Todos esses esforços em vão, pois, sempre que um usuário é adicionado a qualquer relatório ou pasta, ele pode navegar para todas as outras pastas e relatórios e pode realmente executar relatórios.

Os usuários tinham a função de leitor de dados atribuída no Sql Server e uma função personalizada no Gerenciador de relatórios, que tinha permissões apenas para exibir relatórios.

Configurei os serviços de relatórios para usar a autenticação padrão do Windows. é Sql

Serviços de relatórios do Server 2008 R2. Data Center Edição.
Por favor, qualquer conselho ou qualquer direção seria uma grande ajuda. Eu tenho lido o BOL, mas nada ajudou ainda.

sql-server sql-server-2008-r2
  • 3 respostas
  • 12828 Views
Martin Hope
M.Ali
Asked: 2013-10-30 12:49:42 +0800 CST

Melhor solução possível para espelhamento ou replicação de relatórios?

  • 3

Olá, tenho o SQL SERVER 2008R2 Data Center Edition e uso SSRS e um aplicativo de fornecedor para geração de relatórios. Eu tenho um Reporting Server onde fazemos backup e restauração todos os dias do Live Server para ter dados disponíveis para nossos relatórios.

Eu enfrento muitos problemas por causa disso qualquer código desenvolvido tem que esperar um dia até que a restauração seja feita para testar. Qualquer código desenvolvido no Reporting Server é sobrescrito. Relatórios surpresa surpresa mostram dados de um dia e eu poderia continuar indefinidamente.

Eu sei que tenho duas opções disponíveis de espelhamento e replicação:

O espelhamento permitirá o modo somente leitura e os relatórios serão executados corretamente? Este modo somente leitura tem alguma outra implicação que estou perdendo?

Replicação Eu não tenho chaves primárias em todas as tabelas, então me resta apenas a opção de replicação de mesclagem que usa um identificador exclusivo global (GUID), não posso deixar o sql server adicionar esta coluna a todas as tabelas em meus bancos de dados.

Alguém pode me aconselhar uma solução para ter uma cópia dinâmica do banco de dados SQL Server em outro servidor para fins de relatório?

MEUS Requisitos

  1. Eu posso viver com dados de alguns minutos.
  2. Quaisquer alterações feitas no servidor de produção precisam ser copiadas para o servidor de relatórios, ou seja, dados, objetos SQL Server (tabelas, exibições, procedimentos de armazenamento, tudo)
  3. Quaisquer objetos criados no Reporting Server não precisam ser copiados para o servidor/banco de dados de produção.

Por favor, informe qualquer solução, pois será uma grande ajuda. Obrigado antecipadamente.

sql-server sql-server-2008-r2
  • 2 respostas
  • 18093 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