Tag Archives: microsoft

Certificações são importantes?

Até que ponto certificações são importantes? ou fazem diferença? você é reconhecido pelo mercado hoje por ser certificado?

Uma coisa certa de se dizer é que não necessariamente ter certificação implica na pessoa saber alguma coisa, principalmente na nossa área. Hoje com a ajuda de programas como Pass4sure, ExamCollection e muitos outros, não é nada difícil qualquer pessoa, sabendo ler um pouco, conseguir um certificado de qualquer empresa de Software ou Hardware.

Então, o que faz os bons profissionais de TI, que estão (de verdade) trabalhando bem, fazendo o trabalho limpinho, tentando ao máximo elevar a qualidade, serem diferentes de outra pessoa que só fazem uma prova, passam e conseguem o certificado? Com certeza algum de vocês vai me dizer uma dessas frases: “Oras, Continue reading Certificações são importantes?

Alguns comandos DBCC (não documentos)

ATENÇÃO: apenas para constar que NÃO me responsabilizo se você testar isso em seu ambiente e apresentar problemas

Vamos pelo básico,,,

Para listar os comandos DBCC: DBCC HELP(‘?’)

Para uma ajuda mais específica sobre um comando: DBCC HELP(‘SQLPERF’)

Bom,,, agora vem a parte divertida,,,

Para exibir os não documentados você precisa habilitar um TRACEON: DBCC TRACEON(2588) — O 2588 é para 2005 e 2008, para 7 e 2000 é 2520

Depois de habilitar o traceon execute um: DBCC HELP(‘?’) WITH NO_INFOMSGS

Agora vem um esquema camarada legal,,, Continue reading Alguns comandos DBCC (não documentos)

Qual tipo de driver de conexão está sendo usado?

Recentemente um cliente me pediu ajuda para identificar um problema bem interessante.

O time de desenvolvimento dele havia instalado uma aplicação ERP em 4 servidores, desses 4 servidores apenas 1 estava apresentando lentidão e as vezes erro enquanto executava qualquer tipo de acesso ao servidor SQL. Ele comentou que já havia pedido ao time de SO reinstalar o Windows mas, mesmo depois de reinstalar não fez nenhuma diferença.

Como teste simples, criei um arquivo de 1GB vazio usando o FSUTIL:

fsutil file createnew c:\teste.txt 1073741824

Copiamos esse arquivo para os 4 servidores, em tempos diferentes e ao mesmo tempo, nos testes não notamos diferenças de tempo entre as cópias.

Continue reading Qual tipo de driver de conexão está sendo usado?

Localizando tabelas não usadas

Este script irá retornar uma lista de tabelas do banco que, desde o último restart do SQL, não tiveram um SELECT executado contra elas. Isto pode ser usado para determinar se a tabela é usada ou não.
ATENÇÃO: As estatísticas do SQL são apagadas toda a vez que o serviço do SQL é reiniciado. Então, não é porque o script esta informando que a tabela não teve uso que ela não é importante, ela apenas não teve uso desde o último restart. Então não saia apagando tabelas ao seu bel prazer, vai que uma delas é usada pelo sistema fiscal apenas a vez por mês e você reinicia o SQL a cada Windows Update, você sempre vai ver essa tabela com esse script.

WITH LastActivity (ObjectID, LastAction) AS
(
SELECT object_id AS TableName,
             last_user_seek as LastAction
     FROM sys.dm_db_index_usage_stats u
WHERE database_id = db_id(db_name())
UNION
SELECT object_id AS TableName,
             last_user_scan as LastAction Continue reading Localizando tabelas não usadas

Alterando o Collation do servidor

Todo mundo já percebeu que quando você está instalando o SQL Server, em algum ponto da instalação você tem que escolher qual o collation que será usado para aquela instância,,, Até ai sem problemas,,,

Mas depois você percebe que alguém do time de DEV te manda um print screen com alguma mensagem de erro do tipo:

Cannot resolve collation conflict for equal operation

Ai essa mesma pessoa lhe informa que quando aponta a aplicação X para o banco de DEV e faz a mesma coisa não tem erro. Você acessa a instância Continue reading Alterando o Collation do servidor

Dicas para otimizar suas funções SQL

Existe uma grande diferença entre escrever uma instrução SQL que funciona e uma que funciona bem e é performática.

Algumas vezes os desenvolvedores estão muito focados em escrever suas queries que apenas resolvam uma tarefa específica sem levar em consideração performance ou o impacto na instancia do SQL server, como por exemplo quantidade de CPU, IO e memória que eles estão consumindo.  Assim, eles comem outros processos do SQL Server durante a execução derrubando toda a instância. Este artigo tentará prover ao desenvolvedor alguns pequenos detalhes que podem ajudar a otimizar as instruções.

Um grande número de livros e “white papers” foram escritos falando sobre performance no SQL server e este artigo não ira de forma alguma substituir o conhecimento que pode ser adiquirido com esses livros e “white papers”. A intenção é prover uma lista rápida para ajudar o desenvolvedor a identificar possíveis gargalos que podem existir no código SQL.

Continue reading Dicas para otimizar suas funções SQL

Uma pequena coleção de comandos DBCC

Existe um número bem legal de comandos DBCC que não fazem nada de mais a não ser checar consistencia no banco de dados. Eu coloque alguns no script abaixo. O primeiro comando é o único considerado mais “perigoso”, isso causará um grande stress no sistema de I/O enquanto efetua a limpesa do cache. Dependendo do workload, isso pode levar alguns minutos, e durante o processo ele pode impactar a performance.

-- A Small Collection of Useful DBCC Commands
-- Glenn Berry
-- August 2010
-- http://glennberrysqlperformance.spaces.live.com/
-- Twitter: GlennAlanBerry

-- Clears out contents of buffer cache
-- Use caution before doing this on a production system!
DBCC DROPCLEANBUFFERS;

-- Clears procedure cache on entire Continue reading Uma pequena coleção de comandos DBCC