Arquivo por tag: bases

set 16

Análise de Lentidão – II

Mais um caso interessante onde a soma de fatores fez com que uma transação que deveria demorar 1 segundo demorasse mais de uma hora, mesmo com memória de sobra, processamento abaixo dos 10% e nenhum usuário conectado além do administrator.         Cenário 1.   SQL Server 2008 R2 Standard com Failover Cluster em …

Continue lendo »

set 12

Perdeu uma base de sistema?

Talvez por administrar um grande parque de servidores de diferentes empresas de diversos portes, tive a oportunidade de atuar na recuperação de algumas bases de sistema e aqui vai um passo a passo que pode economizar bastante tempo. As causas são muitas e na maioria das vezes os sintomas são de arquivos corrompidos com logs …

Continue lendo »

abr 21

Fragmentação das bases

No artigo “Seu job de rebuild demora muito” explicamos a diferença entre os principais tipos de fragmentação das bases do SQL Server, a diferença entre REBUILD e REORGANIZE, o que é FILL FACTOR, além de um script que faz REORGANIZE quando a fragmentação externa é inferior a 30% e REBUILD se for maior. Também explica …

Continue lendo »

mar 15

Restaurar uma base em outra base existente

É muito comum em ambientes onde a base de homologação fica no próprio servidor de produção ter que restaurar uma base em cima de outra. Geralmente precisamos fazer um backup da base de produção e restaurar em cima da base de homologação para deixá-la igual e assim tornar os testes válidos. Exemplo: Restaurar a base …

Continue lendo »

jan 22

Listar todas as bases e data do último backup

    Para saber quando foi feito o último backup de todas as bases da sua instância, este script do Pinal Dave resolve de forma simples e eficaz:         SELECT sdb.Name AS DatabaseName, COALESCE(CONVERT(VARCHAR(12), MAX(bus.backup_finish_date), 101),’-‘) AS LastBackUpTime FROM sys.sysdatabases sdb LEFT OUTER JOIN msdb.dbo.backupset bus ON bus.database_name = sdb.name GROUP BY …

Continue lendo »

jan 15

Listar usuários e permissões no SQL Server

    Este script do www.pythian.com lista todas as bases, quais database roles possuem acessos, todos os usuários e as roles das quais ele participa. Excelente para documentar ou confirmar se as permissões estão corretas:       DECLARE @DB_USers TABLE (DBName sysname, UserName sysname, LoginType sysname, AssociatedRole varchar(max),create_date datetime,modify_date datetime) INSERT @DB_USers EXEC sp_MSforeachdb …

Continue lendo »

dez 04

Operating System Error 2 (The system cannot find the file specified.)

Esta semana um amigo me chamou para ajudá-lo pois estava diante de uma situação que, apesar de parecer tão simples, foi necessário pesquisar. Ele já havia passado por esta situação antes mas se esqueceu da solução, talvez por ser tão simples.     Ao tentar atachar uma base normalmente com sp_attach_db o SQL Server retornava os …

Continue lendo »

nov 14

Consumo de CPU por base

Pra quem gerencia instâncias com mais de uma base, fica fácil evidenciar. Hoje logo cedo precisei identificar qual base de um servidor era a maior responsável pelo consumo de CPU. Este script é uma baita de uma mão na roda:   WITH DB_CPU_Stats AS (SELECT DatabaseID, DB_Name(DatabaseID) AS [DatabaseName], SUM(total_worker_time) AS [CPU_Time_Ms] FROM sys.dm_exec_query_stats AS …

Continue lendo »

nov 02

SQL – Procedimentos pré migração

Antes de iniciarmos qualquer migração de banco de dados devemos garantir que nenhuma alteração será realizada na base entre o período de backup, restore e alteração da aplicação apontando para o novo servidor. Mesmo o cliente informando que parou a aplicação e que nenhum usuário se encontra na empresa, é muito importante executar o procedimento …

Continue lendo »

out 25

Seu job de rebuild demora muito?

Muitos ambientes possuem um job agendado para fazer o rebuild dos índices mas com o constante crescimento da base acabam chegando próximos da janela ou, quando não monitorados, até passam do horário permitido. Existe uma alternativa que se aplica a grande maioria dos ambientes. Para entendermos melhor, vamos relembrar os tipos de fragmentação e a …

Continue lendo »

out 05

Dicas úteis de migração…

    Como se preparar para a migração?   Se você é DBA e vai encarar essa missão, se prepare. As dicas abaixo são um pequeno resumo das armadilhas que você vai encontrar por aí. Planejamento, planejamento e, por fim, planejamento.       Documentação do ambiente de origem antes de preparar o ambiente de …

Continue lendo »

ago 23

Script de restore

Há algum tempo precisei migrar uma base com mais de 4TB, era um SAP de uma grande empresa de auditoria no Brasil. Sem acesso ao servidor de origem, só me restou um backup full de 10 dias atrás e um compartilhamento onde ficavam os backups de transaction log. Os backups eram gerados de 15 em …

Continue lendo »

jul 02

Gráfico para crescimento da base

É muito importante acompanharmos o crescimento dos arquivos de dados para podermos trabalhar preventivamente a questão de espaço em disco, além de melhorar o planejamento quando vamos configurar o tamanho dos arquivos. Hoje vamos gerar um gráfico como este:     Primeiro vamos criar uma tabela para armazenar os dados, com uma coluna para data …

Continue lendo »

jun 19

Obtendo informações importantes de todas as bases

Hoje vamos obter informações importantes como Recovery Model, Log Reuse, Log Size, Log Used, Compatibility Level, Page Verify, Auto Shrink entre algumas outras.   Vamos utilizar o script abaixo para obter estas informações que podem ser utilizadas para documentação, checagem, análise, ou seja, são realmente úteis.   SELECT db.[name] AS [Database Name], db.recovery_model_desc AS [Recovery …

Continue lendo »

Posts mais antigos «