quinta-feira, 17 de dezembro de 2009

Mais uma etapa alcançada!

Bom, hoje gostaria de compartilhar com todos que consegui passar no exame 70-443 (Designing a Database Server Infrastructure by Using Microsoft SQL Server 2005). Eu estava realmente preocupado, pois, pelo muito que ouvi falar, da carreira MCITP Database Administrator era a prova mais difícil. Após muito estudar (obrigado ao MS Self Paced Training Kit) e várias sessões de simulados, passei!

Para todos que estejam receosos com este mesmo exame, o ideal é focar em alguns conceitos que a Microsoft pede deste exame e, por conseguinte, para implementação de seus produtos. Acredito que minha experiência com infraestrutura de servidores em geral ajudaram bastante, pois a prova é baseada em cenários e a vida real não é diferente. Você sabe o que é o ideal, mas o que é viável e o que está disponível num ambiente pede que você utilize suas habilidades para atender os requisitos de negócio e para que o cliente sinta-se atendido. Normalmente o cliente vai lembrar de você quando conseguir superar os problemas e não quando simplesmente apresentar novos para ele resolver. O profissional de TI, quando é solicitado ou contratado, é para resolver problemas, trazer soluções.

Agora vou iniciar os estudos para o exame 70-444 e obter a credencial MCITP. Na sequência, atualizar para o SQL Server 2008.

Um forte abraço a todos!

sexta-feira, 6 de novembro de 2009

Corrigido problema de upgrade do Vista para Windows 7

A Microsoft liberou uma correção do tipo "Fix it" para um problema de upgrade do Windows 7 que resulta num travamento de sistema.

O problema, para usuários do Vista ao atualizar para Windows 7, é que a instalação nunca completa o upgrade. Ao invés disso, alguns usuários tem o sistema paralizado após 62 porcento do upgrade ter completado.

A Microsoft está apontando para um plugin do Windows Vista, "IphlpsvcMigPlugin.ddd", como o culpado, de acordo com o Fix it blog. A companhia publicou uma maneira de contornar isso através de passos complexos para seguir. Agora, usuários com o problema podem usar a solução Fix it da Microsoft que conduz através dos mesmos passos para completar seus upgrades para o Windows 7. Fix it é uma tentativa da Microsoft de simplificar tarefas de correção descritas nos boletins de suporte.

A solução Fix it pode ser aplicada após a falha ocorrer, aos 62 porcento da atualização. Neste ponto, o computador retornará para o Windows Vista. Os usuários podem então visitar esta página de suporte, rolar tela abaixo e clicar no link "Fix this problem" (corrija este problema). Um assistente irá ajudá-lo nos passos para aplicação da correção. Após a correção ter sido aplicada, os usuários poderão tentar o processo de atualização novamente.

A Microsoft adverte que esta solução "Fix it" não deverá ser usada para atualizações do Windows 7 que travem em outras porcentagens que não sejam "62 porcento".

O Windows 7 foi liberado para o público geral no úlitmo mês, mas alguns indivíduos relataram vários problemas ao atualizar do Vista, incluindo um problema de reinicialização sem fim ainda sob investigação pela Microsoft. O principal fórum para questões de atualização do Windows 7 pode ser encontrado aqui, mas a Microsoft também oferece outros recursos de suporte.
Upgrades somente são suportados quando feitos do Vista para o Windows 7. Para quem for migrar do Windows XP para o Windows 7, uma instalação limpa deverá ser feita, o que é descrito neste artigo.

Este artigo é uma tradução livre do artigo de Kurt Mackie, a quem eu gostaria de agradecer. Para quem quiser pode conferir o artigo original.

terça-feira, 20 de outubro de 2009

Dica Windows: Restaure as diretivas padrão do domínio

Se você é o administrador da rede e descobriu que as diretivas padrão (Default Domain Policy e Default Domain Controller Policy) sumiram do seu Active Directory, não se desespere, seus problemas acabaram.
Com o utilitário DcGPOfix, você poderá restaurar as diretivas, porém com um detalhe: COM TODAS AS CONFIGURAÇÕES PADRÃO. Ou seja, se suas diretivas já tinham várias opções definidas, o senhor não tinha backup ou documentação, prepare-se: terá que fazer tudo novamente. Mas a vida é assim, vivendo e aprendendo (às vezes, das piores formas e estas são as que nunca esqueceremos). bom, vamos ao comando:

Sintaxe: DcGPOFix [/ignoreschema] [/Target: Domain | DC | BOTH]

/target: {Domain | DC | BOTH}
Opcional. Especifica o GPO a ser restaurado -- o GPO de Diretiva de Domínio Padrão (Domain), o GPO de Diretiva de Controladores de Domínio Padrão (DC) ou ambos (BOTH).

/ignoreschema:
Opcional. Use esta opção para que esta ferramenta ignore a versão de esquema do
Active Directory. Do contrário, esta ferramenta funcionará somente na mesma ver
são de esquema da versão do Windows em que a ferramenta foi distribuída.

Depois basta vincular a diretiva restaurada ao container correspondente:
  • Default Domain Policy -> vinculado ao domínio (ex.: seudominio.local)
  • Default Domain Controller Policy -> vinculado à OU Domain Controllers (Controladores de Domínio)

quinta-feira, 15 de outubro de 2009

Dica Linux: arquivos texto DOS para Linux/Unix

Para quem não sabe, a quebra de linha de um arquivo gerado no DOS/Windows é diferente de um arquivo "*nix like". O que fazer para intercambiar entre estes sistemas operacionais?

Basta utilizar o utilitário dos2unix:

$ dos2unix dosfile.txt

Se quiser fazer um backup antes da conversão:

$ dos2unix -b dosfile.txt

Para fazer o caminho inverso, utilize o utilitário unix2dos:

$ unix2dos unixfile.txt

Fonte: http://www.cyberciti.biz/faq/howto-unix-linux-convert-dos-newlines-cr-lf-unix-text-format/

quinta-feira, 9 de julho de 2009

Recuperando o banco MSDB

Para quem não sabe, o SQL Server 2005 possui os seguintes bancos de dados do sistema:
  • master: registra toda informação de nível de sistema de uma instância SQL Server. É o repositório para todos os objetos que residem no esquema sys;
  • msdb: usado pelo SQL Server Agent para o alerta de agendamento e tarefas , e registrar operadores; contém também tabelas de histórico de tarefas de backup e restore;
  • model: modelo para criação todos os bancos de dados. Customizações são registradas neste banco;
  • tempdb: uma área de trabalho para criação de objetos temporários (tabelas, variáveis, stored procedures, cursores, resultados de ordenações, etc.). É recriado sempre que a instância reinicia;
  • resource: um banco de dados somente leitura que contém a cópia de todos objetos de sistema
  • distribution: este banco somente existe se o servidor foi configurado como Distribuidor de replicação. Armazena informações como metadados e dados históricos de todos os tipos de replicação.
Hoje, me deparei com o MSDB em estado 'suspect'. Tentei efetuar o procedimento descrito em http://dmelobrz.blogspot.com/2008/12/recuperando-um-banco-de-dados-em-estado.html, porém, não funcionou porque o banco possuía transações pendentes e havia uma falha em uma página do banco, conforme detalhamento do log de erros.
Reiniciei o serviço MSSQLServer com os seguintes parâmetros:
"C:\Arquivos de programas\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe" -c -T3608 -m -s SQLEXPRESS

Conectei à instância, via prompt de comando com a ajuda do aplicativo sqlcmd:

sqlcmd -S computador\sqlexpress -E

Com isso, pude desconectar o banco com problemas :

1) EXEC sp_detach_db 'msdb'
2) go
1) exit
Isso mesmo, vamos sair do aplicativo e executar o sqlcmd com um novo parâmetro:

sqlcmd -S computador\sqlexpress -E -i"C:\Arquivos de programas\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Install\instmsdb.sql"


O arquivo instmsdb.sql é utilizado para a criação do banco msdb. É interessante renomear ou apagar o arquivo MSDBData.mdf e MSDBLog.ldf antes de executar este comando.
O banco é recriado do zero (todas as informações já existentes serão perdidas).
Digite Ctrl-C no console do serviço SQL Server que foi inicializado manualmente e inicie a sua instância (através do console 'Serviços', pelo SSMS ou prompt de comando).

Mas nada melhor do que o bom e velho backup!

Referências:
http://msdn.microsoft.com/en-us/library/ms190190.aspx

segunda-feira, 6 de julho de 2009

ADPREP.exe do Windows Server 2008 aparentemente não executa

Quem já realizou uma atualização de AD (do 2000 para o 2003, do 2003 para 2003 R2) sabe que é necessário efetuar uma atualização também no esquema do AD, que é feita pelo utilitário 'adprep.exe'.
Hoje me deparei com o seguinte cenário:
  • Controlador de Domínio Windows Server 2003, 32 bits, Inglês;
  • Futuro Controlador de Domínio Windows Server 2008, 64 bits, Português;
  • Ao executar o comando 'adprep.exe /forestprep', nada aparece na tela. Qualquer tecla apertada e retorno para o prompt.

Normalmente, quando o comando é executado, aparece um aviso solicitando que seja pressionada a letra "C" (Continue), que é uma maneira de prevenir a execução acidental.

DICA: Sempre tenha um bom backup do seu System State antes de fazer alterações no AD!

No DVD de instalação do Windows Server 2008, o adprep fica em \sources\adprep.

Iniciei minhas buscas nos fóruns e me deparei com uma mensagem que indicava o conteúdo do diretório 'adprep': além dos arquivos .ldf, temos também um diretório, de acordo com o idioma, com o arquivo 'adprep.exe.mui' que contém mensagens específicas. Como eu estava num Windows Server 2003-Inglês (us-en) e o DVD de instalação do Windows Server 2008 era em Português (pt-br), o adprep não conseguiu encontrar o diretório adprep\en-us. Por isso, não aparecia mensagem alguma.

Bastou pressionar o "C", para confirmar a operação e a atualização prosseguiu normalmente.

Fica aí a orientação!

Obs.: este link de um fórum MS ajudou muito:

http://social.technet.microsoft.com/Forums/en-US/winserverMigration/thread/77b86b14-ce4f-4072-bff0-fcbbec8ab88b


Update1: Caso queira ver as mensagens "cross-language", copie o conteúdo de \sources\adprep para um disco local e renomeie a pasta específica de idiomas para coincidir com o do seu sistema operacional. Eu recomendo sempre que sejam padronizados sistemas operacionais com mesmo idioma.

sexta-feira, 8 de maio de 2009

Mudando o nome do servidor SQL

Por vários motivos, todos, um dia, se deparam com a tarefa de renomear um servidor. E se tivermos uma instância de SQL Server rodando? Se for algo programado, os comandos descritos aqui, devem ser executados antes de renomear o servidor.

No SQL Server Management Studio (ou Enterprise Manager):

sp_dropservernome-antigo

sp_addservernome-novo’, ‘local’

Onde nome-antigo é o nome do seu servidor antes de renomear e nome-novo é o seu servidor renomeado. Após isso, reinicie o SQL Server. Para certificar que tudo funcionou perfeitamente, utilize o seguinte comando:

SELECT @@SERVERNAME

Se o resultado for nome-novo (nome do servidor renomeado), a missão foi cumprida!

sexta-feira, 13 de fevereiro de 2009

Instalando o PEAR no CentOS 5

Recentemente, fazendo a instalação de um webmail (Squirrelmail), para um servidor Postfix com usuários virtuais (gerenciados por um banco de dados MySQL), era necessário instalar o pacote ‘php-pear’ (PEAR = PHP Extension and Application Repository). Fiz a coisa mais óbvia, que era rodar o ‘yum install php-pear’, que foi realizado com sucesso. Porém, ao efetuar logon no webmail, recebia a mensagem de que o suporte PEAR não estava habilitado para o servidor.

Verifiquei o PHP (versão 5.1.6), e vi que havia sido compilado com a diretiva ‘--without-pear’, na seção “Configure command’.

Logo me vi tendo que baixar os fontes do php e compilar com ‘--with-pear’, para solucionar meu problema. Mas acabei encontrando um caminho mais fácil, utilizando o yum mesmo. Basta baixar alguns pacotes adicionais:

# yum search php-pear

(vai listar vários pacotes)

# yum install php-pear-\*

Isto faz toda a diferença e resolve o problema da aplicação que não reconhecia o suporte do PEAR.

Squirrelmail - http://www.squirrelmail.org/

PEAR - http://pear.php.net/