• Opiniões
    • Arte
    • Dízimo
    • Tecnologia e Aprendizado
    • Guerras
    • Orkut
  • Setups
    • Meu Setup – Hardware
    • Meu Setup – iMac
    • Meu Setup – iPhone
  • Sobre

Oraculum Blog

mssql

Corrigindo erros nas tabelas de um banco MS SQL

5 de April de 2011 by oraculum 1 Comment
Sql Server Error

Precisei de fazer uma manutenção num banco de um cliente esses dias e usei os seguintes comandos:

Para pegar erros no banco

USE Nome_banco
GO
EXEC Sp_dboption 'Nome_banco', 'single user', 'true'
DBCC CHECKDB ('Nome_banco') WITH TABLOCK, ALL_ERRORMSGS, NO_INFOMSGS;
EXEC Sp_dboption 'Nome_banco', 'single user', 'false'
/* Torna de volta single user false, para o acesso ao banco ficar normal novamente */
GO

use Nome_banco GO Exec Sp_dboption 'Nome_banco', 'single user', 'true' DBCC CHECKDB ('Nome_banco') WITH TABLOCK, ALL_ERRORMSGS, NO_INFOMSGS; Exec Sp_dboption 'Nome_banco', 'single user', 'false' /* Torna de volta single user false, para o acesso ao banco ficar normal novamente */ GO

fix para corrigir os erros que foram encontrados no comando anterior:

1
2
3
4
5
6
7
8
USE Nome_banco
GO
EXEC Sp_dboption 'Nome_banco', 'single user', 'true'
/* Deixa em modo single user, para executar os comandos abaixo */
DBCC CHECKTABLE(1823762000,REPAIR_ALLOW_DATA_LOSS)
EXEC Sp_dboption 'Nome_banco', 'single user', 'false'
/* Torna de volta single user false, para o acesso ao banco ficar normal novamente */
GO

use Nome_banco GO Exec Sp_dboption 'Nome_banco', 'single user', 'true' /* Deixa em modo single user, para executar os comandos abaixo */ DBCC CHECKTABLE(1823762000,REPAIR_ALLOW_DATA_LOSS) Exec Sp_dboption 'Nome_banco', 'single user', 'false' /* Torna de volta single user false, para o acesso ao banco ficar normal novamente */ GO

Na linha 5 está o comando que corrige os erros da tabela o id (1823762000) da tabela você consegue pegar no primeiro comando que passei onde lista-se os erros do banco nele tem as tabelas e os ids com erros.

Se estiver usando SQL 2012 o comando muda para:

1
2
3
4
5
6
7
8
USE Nome_banco
GO
ALTER  DATABASE Nome_banco SET SINGLE_USER
/* Deixa em modo single user, para executar os comandos abaixo */
DBCC CHECKTABLE(1823762000,REPAIR_ALLOW_DATA_LOSS)
ALTER  DATABASE Nome_banco SET MULTI_USER
/* Torna de volta single user false, para o acesso ao banco ficar normal novamente */
GO

use Nome_banco GO ALTER DATABASE Nome_banco SET SINGLE_USER /* Deixa em modo single user, para executar os comandos abaixo */ DBCC CHECKTABLE(1823762000,REPAIR_ALLOW_DATA_LOSS) ALTER DATABASE Nome_banco SET MULTI_USER /* Torna de volta single user false, para o acesso ao banco ficar normal novamente */ GO

 

Posted in: Tecnologia Tagged: mssql, sql

SQL: Script para recuprar tamanho das tabelas

25 de July de 2009 by oraculum Leave a Comment

Pequeno script para recuperar o tamanho, quantidade de linhas e espaços alocados inutilmente pela banco na tabela (unused)

Posted in: Diversos Tagged: mssql, sql

Categorias

  • Aplicativos (51)
  • Celular (17)
  • Diversos (95)
  • Filmes (13)
  • Games (16)
  • Livros (2)
  • Musica (7)
  • Noticias (14)
  • Seriados (5)
  • Tecnologia (64)
  • Wallpaper (39)

arquivo

  • May 2016 (1)
  • March 2016 (1)
  • May 2015 (1)
  • April 2015 (2)
  • November 2014 (1)
  • October 2014 (3)
  • September 2014 (1)
  • August 2014 (13)
  • July 2014 (15)
  • June 2014 (16)
  • May 2014 (6)
  • April 2014 (10)
  • March 2014 (1)
  • February 2014 (1)
  • January 2014 (1)
  • November 2013 (5)
  • October 2013 (4)
  • September 2013 (1)
  • August 2013 (3)
  • July 2013 (1)
  • June 2013 (1)
  • May 2013 (2)
  • April 2013 (1)
  • December 2012 (3)
  • November 2012 (1)
  • October 2012 (4)
  • August 2012 (1)
  • July 2012 (3)
  • June 2012 (2)
  • April 2012 (6)
  • February 2012 (3)
  • January 2012 (2)
  • November 2011 (3)
  • October 2011 (3)
  • September 2011 (1)
  • August 2011 (5)
  • July 2011 (1)
  • June 2011 (3)
  • May 2011 (7)
  • April 2011 (6)
  • March 2011 (13)
  • February 2011 (3)
  • January 2011 (26)
  • December 2010 (13)
  • November 2010 (2)
  • August 2010 (5)
  • July 2010 (3)
  • June 2010 (4)
  • May 2010 (2)
  • March 2010 (16)
  • February 2010 (5)
  • December 2009 (2)
  • November 2009 (1)
  • October 2009 (2)
  • September 2009 (3)
  • August 2009 (8)
  • July 2009 (10)
  • June 2009 (7)
  • May 2009 (10)
  • April 2009 (6)
  • March 2009 (6)

Copyright © 2025 Oraculum Blog.

Omega WordPress Theme by ThemeHall