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

sa555's questions

Martin Hope
sa555
Asked: 2013-10-17 16:03:43 +0800 CST

Restaurando banco de dados corrompido do SQL Server 2005

  • 0

Estou restaurando um banco de dados do SQL Server 2005 em uma instância do SQL Server 2008 R2 usando este comando:

RESTORE DATABASE SampleDB FROM DISK= 'C:\SampleProject\SampleDB.bak' WITH REPLACE,
MOVE 'sampledb' TO 
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\SampleDB.mdf', 
MOVE 'sampledb_log' 
TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\SampleDB_log.ldf',
CONTINUE_AFTER_ERROR, STATS = 10;

E a saída é:

10 percent processed.
20 percent processed.
30 percent processed.
40 percent processed.
50 percent processed.
60 percent processed.
70 percent processed.
80 percent processed.
90 percent processed.
100 percent processed.
Msg 3242, Level 16, State 2, Line 3
The file on device 'C:\SampleProject\SampleDB.bak' is not a valid Microsoft Tape Format backup set.
Msg 3013, Level 16, State 1, Line 3
RESTORE DATABASE is terminating abnormally.

Por que a porcentagem processada atinge 100%, mas termina de forma anormal?

Como posso restaurar este backup de banco de dados mesmo com dados corrompidos? Continuar após o erro não parece fazer nenhuma diferença.

sql-server restore
  • 2 respostas
  • 1715 Views
Martin Hope
sa555
Asked: 2013-08-17 04:47:25 +0800 CST

Renomeando o resultado incomum do banco de dados SQL Server

  • 2

Este é um comportamento que observei ao renomear bancos de dados. Qual é a causa disso? O exemplo é simplificado para os propósitos desta questão.

CREATE DATABASE [Database_A]
GO
CREATE DATABASE [Database_B]
GO
CREATE DATABASE [Database_B_Copy]
GO
-- create a table for testing purposes
USE [Database_B]
GO
CREATE TABLE [dbo].[Table_1](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Column1] [nvarchar](50) NOT NULL,
 CONSTRAINT [PK_Table_1] PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO 
INSERT INTO [Database_B].[dbo].[Table_1] (Column1) values ('[Database_B]')
GO
-- create an copy of the table with the same schema
USE [Database_B_Copy]
GO
CREATE TABLE [dbo].[Table_1](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Column1] [nvarchar](50) NOT NULL,
 CONSTRAINT [PK_Table_1] PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO 
INSERT INTO [Database_B_Copy].[dbo].[Table_1] (Column1) values ('[Database_B_Copy]')
GO
-- create a stored procedure to demonstrate the problem
USE [Database_A]
GO
CREATE PROCEDURE [dbo].[TestSP]
AS
BEGIN
    SELECT * FROM Database_B.dbo.Table_1
END
GO

[1]. quando executo o procedimento armazenado TestSP, o resultado esperado é o conteúdo de DatabaseB Table_1.

ID      Column1        
1       [Database_B]    

[2]. Renomear Database_B para Database_B_Original causará este erro como seria de esperar:

Msg 208, Level 16, State 1, Procedure TestSP, Line 4
Invalid object name 'Database_B.dbo.Table_1'.

[3]. Colocando Database_B_Original offline, o erro do procedimento armazenado muda para:

Msg 942, Level 14, State 4, Procedure TestSP, Line 4
Database 'Database_B_Original' cannot be opened because it is offline.

[4]. Em seguida, renomeei Database_B_Copy para Database_B. Eu esperava que o procedimento armazenado funcionasse, pois um banco de dados chamado Database_B estava disponível. Porém o erro continua o mesmo.

Finalmente, se eu reiniciar o Sql Server, isso corrige magicamente o problema e a saída é, como esperado:

ID      Column1        
1       [Database_B_Copy]    

O SQL Server está armazenando em cache as tabelas e as informações de nome do banco de dados incorretamente? Existe uma maneira de forçar o Sql Server a atualizar as informações?

Gostaria de entender melhor qual é a causa subjacente desse problema e se é intencional ou um erro com o servidor SQL.

sql-server sql-server-2008-r2
  • 1 respostas
  • 1096 Views
Martin Hope
sa555
Asked: 2013-07-30 02:52:47 +0800 CST

Configuração de memória máxima e mínima do SQL Server

  • 8

Quais são as configurações corretas para memória mínima e memória máxima neste caso de uso?

O servidor possui 8 GB de RAM, processadores Intel Xeon duplos, executando o Windows Server 2008 R2 / Sql Server 2008 Standard Edition. Ele está executando vários bancos de dados que variam de 30 GB a 5 GB de tamanho.

Originalmente, o uso de memória foi definido para as configurações padrão (min=0 max=2.147.483.647). Nessas configurações, a maior parte do uso de memória foi ocupada pelo sqlservr.exe e o servidor eventualmente precisaria ser reiniciado a cada um ou dois dias. Ele seria executado normalmente no início, mas dentro de um dia começaria a expirar em operações simples, como procurar um registro usando a chave primária.

Eu mudei min=4.096 e max=6.144. Isso resulta em apenas 1,4 GB de uso de memória. No entanto, agora todos os quatro cpus estão rodando com 50-60% de uso da CPU constantemente. As tarefas estão demorando cerca de 1/3 a mais para serem executadas, embora o servidor seja muito mais estável.

sql-server sql-server-2008-r2
  • 1 respostas
  • 27370 Views
Martin Hope
sa555
Asked: 2013-07-27 22:03:21 +0800 CST

Restaurar banco de dados - tarefa do plano de manutenção

  • 1

Preciso agendar uma tarefa que restaura um banco de dados uma vez por semana a partir de um backup. Eu configurei planos de manutenção para fazer backup de bancos de dados (Gerenciamento > Planos de manutenção), mas não consigo descobrir como fazer uma tarefa de restauração - isso precisa ser uma tarefa de instrução T-SQL de execução ou há um item da caixa de ferramentas para isso?

sql-server restore
  • 3 respostas
  • 6401 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