Category Archives: Powershell

Retornando o status do serviço via PowerShell

Olá pessoal,

Passando aqui apenas para compartilhar mais um simples script PowerShell com vocês. A intenção do script é varrer uma lista de servidores de SQL Server e retornar apenas os serviços que estiverem com o status de stopped. O Script utiliza o cmdlet Get-Service. Read the rest of this entry

Retornando contas de serviço via PowerShell

Olá Pessoal,

Meus skills de desenvolvedor são horriveis, mas me deparei com uma situação no trabalho aonde eu não poderia realizar tal tarefa manualmente, pois seria muito dificil e muito chato de realizar e partindo dessa ideia me surgiu então o PowerShell. Não preciso falar muito como o PowerShell ajuda no dia-a-dia de um Administrador de Banco de Dados, ou de qualquer outra tecnologia Microsoft.

Para SQL Server não preciso mencionar que se alguem quiser aprender sobre PowerShell o blog do Laerte Junior (Twitter|Blog) onde você encontra muita coisa boa. Voltando para o meu problema eu precisava realizar a seguinte tarefa. Read the rest of this entry

Exportando planos de manutenção

Estava configurando um ambiente de alta disponibilidade e precisa recriar todos os planos de manutenção no outro servidor, mas recriar na mão seria um trabalho árduo, então para criamos os planos no outro lado vamos as seguintes configurações.

1) Conecte na instancia do Integration Services

2) Faça o seguinte caminho: Stored Packages -> MSDB -> Maintenance Plans

Conforme mostra a figura clique sobre o pacote desejado e vá na opção “Export Package”.

3) Após isso a tela abaixo ira aparecer.

Voce deve se conectar no servidor para a qual deseja exportar os pacotes, clicar em “Package Path” e selecionar o mesmo caminho dentro de SSIS Packages.

Feito isso os jobs aparecerão para voce no outro servidor, porem um detalhe importante é que os jobs do SQL Server Agent nao sao exportados. Nada adianta ter exportado os pacotes e ter que criar os jobs tudo na mao.

Pesquisando por ai, encontrei um script em powershell  feito por Enrique Puig Nouselles (SolidQ – Blog) para gerar o codigos dos jobs. Para configurar o script voce deve se atentar a dois parametros dentro do script.

1) $server = ‘localhost’ <- Servidor SQL Server
2) $outputPath = ‘C:\Temp\Script_Jobs.txt’ <- Onde deverá criar o arquivo

Feito a execução o arquivo ira aparecer onde voce predefiniu o caminho.

Agora é só executar o mesmo no outro servidor e pronto, tudo estará criado.

O script powershell pode ser baixado aqui.

Por hoje é isso, espero que tenham gostado.

Att,
Marcos Freccia
MCITP SQL Server 2008

Powershell and Me

Pessoal,

Sempre fui fã de powershell e sempre serei, acontece que eu nunca pratiquei. De um tempo pra cá meu amigo Laerte (Twitter|Blog) tem falado muito de powershell no twitter e também publicou alguns posts que eu sinceramente achei extraordinarios. Quando alguem fala de powershell para mim eu penso: Praticidade, escalibilidade e acima de tudo 1 linha.

Você se pergunta, mas porque 1 linha? O Laerte sempre brinca (e é verdade) que a maioria das coisas você consegue fazer com uma linha. E é pensando nesse conceito de 1 linha que hoje eu coloco a primeira linha de powershell que eu criei.

Esse script visa somente apagar arquivos antigos de uma pasta qualquer. Ele nao é um grande script e esta longe de ser um otimo script, mas é uma maneira de começar.

Então aqui está.

Remove-Item ‘K:\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\*’ -include *.txt

Viu? 1 unica linha e  você pode apagar os arquivos de qualquer diretorio que você quizer, filtrando somente por arquivos txt. Agora me diz quanto tempo você passaria desenvolvendo um script em vb? Em java? Em DotNet? Chuto que mais de 5 linhas é garantido.

Eu coloquei esse script em uma job no SQL Server para pelo menos uma vez por semana, apagar os arquivos txt de log que os scripts do Ola Hallegren (Blog) geram nessa pasta.

Vale lembrar que esse comando Remove-Item está postado no MSDN para quem quiser pegar. Como ja falei anteriormente, esse script esta longe de ser o melhor e mais dinamico, com certeza o Laerte vai saber uma maneira muito melhor de fazer esses procedimentos, mas antes tarde do que nunca para começar.

Eu quero agradecer muito ao Laerte, porque ele sempre falou de powershell para mim e agora eu tive coragem de colocar a mao na massa e aprender, e também colocar aqui o link da serie de posts que o Paulo R. Pereira Junior (Twitter|Blog) publicou sobre powershell, onde eu começei a dar uma lida sobre como trabalhar com o mesmo, acho que esses posts são de extrema importancia para quem quer começar a trabalhar com essa ferramenta.

Link: http://sqlfromhell.wordpress.com/2011/01/13/powershell-sql-server/

Então pessoal por hoje é isso ai, peço desculpas se alguem esperava algo extraordinario, mas assim que eu for adquirindo experiencia eu vou postando.

Marcos Freccia
@SQLFreccia