segunda-feira, novembro 29, 2010

VMWare Server: Failed to lock the file

Ao tentar importar um nova máquina virtual no VMWare Server 2.0.2 recebia a seguinte mensagem:
Cannot open the disk 'D:\Virtual Machines\VMware\Windows Server 2003 Standard Edition.vmdk' or one of the snapshot disks it depends on.
Reason: Failed to lock the file.
Então, fui no caminho especificado e exclui todos os arquivos .lck após efetuar este procedimento foi possível realizar a importação da máquina.

terça-feira, novembro 23, 2010

Alterar porta de conexão ao servidor de licenças solidworks

Estávamos com problema em efetuar a liberação de acesso ao servidor de licenças do Software SolidWorks, quando o mesmo estava atrás de um firewall, neste caso ISA Server 2006.
Por padrão o mesmo utiliza a porta 25734, e utiliza uma outra porta aleatória, ai que estava o problema, pois liberávamos a porta mais ao parar e iniciar o servidor de licenças outra porta era usada, após um pesquisa encontrei a solução, editei o arquivo de licenças(arquivo sw_d.lic) e especifiquei a porta, conforme print abaixo:Após especificar a porta e efetuar a liberação no firewall foi possível acessar o servidor de licenças.

quinta-feira, novembro 18, 2010

Desativar NetBios sobre TCP/IP servidor DCHP

Os passos abaixo são necessários para desativar o NetBIOS sobre TCP/IP nos clientes DHCP.
Acessar o gerenciador do DHCP e selecionar o scope que tu deseja desabilitar o NetBios ou tu podes desabilitar para todos os Scopes alterando as opções do servidor, no print abaixo estou desabilitando no Scope Teste, é só adicionar a opção “001 Microsoft Disable NetBios Option” (Aba Avançado nas configurações das opções do servidor DHCP, selecionar Microsoft Options em Vendor Class)e alterar o valor “Long” para 0x2

Só é necessário que nas configurações dos clientes DHCP a opção abaixo esteja selecionada (Usar as configurações Netbios do Servidor DHCP, aba WINS), para verificar essa opçãs acessar as configurações TCP/IP da máquina:

terça-feira, novembro 16, 2010

Gravador de Passos para Reprodução de Problemas

Um recurso bem interessante é o PSR disponível para Windows 7, que permite a gravação de telas, o mais interessante é que os passos utilizados são descritos, uma boa ferramenta para gerar algum procedimento necessário para repassar para usuários. Para acessar o PSR é só digitar psr na barra de pesquisas instantâneas, após a gravação o mesmo vai gerar um arquivo .mht, com todas as imagens e procedimentos neste arquivo.



segunda-feira, outubro 25, 2010

Alterar Endereço MAC Windows

Para alterar o endereço MAC de uma placa de rede em um computador rodando o Windows, é necessário seguir os seguintes passos, selecionar a conexão de rede que tu deseja alterar o MAC e ir nas propriedades e na opção “Configure” da respectiva placa de rede, neste exemplo estou alterando o MAC da placa de rede "Intel 21140 Based PCI Fast Ethernet":

Ir na aba Advanced e alterar a propriedade "Network Address" conforme print abaixo:

sexta-feira, outubro 08, 2010

Acesso negado. Não é possível estabelecer a comunicação entre "server" e "PC"

Ao utilizar a ferramenta do gerenciador Hyper-V a patir de uma máquina com o Windows 7, e tentar conectar no servidor com o Hyper-V eu recebia a seguinte mensagem:
Acesso negado. Não é possível estabelecer a comunicação entre "server" e "PC"
Para resolver este problema seguir o seguinte passos:
Iniciar - Executar - DCOMCNFG:
Serviços de Componente-
Computadores -
Ir em propriedades do "Meu computador"
Ir na aba "Segurança COM"
Em permissão de Acesso clicar em "Editar Limites"
Selecionar o usuário "LOGON ANÔNIMO" e permitir a opção "Acesso Remoto"

quarta-feira, outubro 06, 2010

Certificação ITIL

Hoje foi o último dia do curso de ITIL, no final do curso foi aplicado a prova de certificação, para minha felicidade consegue obter um bom resultado, o que me garantiu a certficação ITIL.
Agora é aplicar os conhecimentos adquiridos no curso no meu dia-a-dia, pois ficar apagando fogo todos os dias não dá, a equipe de TI tem que ser pro-ativa, e trabalhar alinhado ao negocio da empresa.

domingo, outubro 03, 2010

ITIL

Estarei realizado um curso sobre Itil V3 curso com duração de três dias, e farei a prova de certificação no final do terceiro dia, meu objetivo é obter conhecimento sobre boa práticas para o gerenciamento de TI, recentemente li um livro sobre Itil, o livro é T.I Mudar e Inovar, da editora Senac-SP, achei o livro bem interessante, e de fácil leitura visto que não tinha nenhum conhecimento sobre Itil.
Espero que no final do terceiro dia possa estar escrevendo um novo post no blog, informando de mais um conquista em minha carreira, a certificação Itil.

domingo, setembro 26, 2010

Ações a serem executadas para reparar uma conexão

Os passos abaixo devem ser executados para reparar uma conexão de rede perdida, isso pode ser feito através do botão reparar disponível nas conexões de rede do Windows, ou através de linha de comando, os seguis comandos são uteis para reparar uma perda de conexão:

>ipconfig /renew # renova as informações dos adaptadores de rede.
>arp –d * # Libera o cachê arp
>nbtstat –R # Limpa e recarrega as informações da tabela de nomes netbios
>nbtstat –RR # Envia pacotes de liberação de nomes para WINs e inicia
a atualização
>ipconfig /flusdns # Limpa o cache DNS
>ipconfig /registerdns # registra o nome DNS com o servidor DNS

domingo, setembro 19, 2010

Gerenciamento de Group Policy no Windows 2003 Server

Algumas ferramentas disponíveis para Windows 2003 Server que podem ajudar no gerenciamento das GPOs do seu domínio.

Group Policy Object Editor: Ferramenta gráfica que permite a edição de qualquer GPO, para iniciar a mesma é só digitar gpedit.msc, ao abrir a ferramenta estará selecionado a GPO do computador local.
Resultant Set of Policy(RSop): Essa snap-in MMC simplifica a implementação e a resolução de problemas com GPOs, demonstra graficamente a aplicação das GPOs.
Gpresult: Ferramenta de linha de comando sua versão gráfica e a SAP-in RSop.
Group Policy Management Console(GPMC): Ferramenta gráfica de gerenciamento de GPOs, não está inclusa nativamente no Windows 2003 Server, é necessário efetuar o download da mesma no site da microsoft, essa snap-in permite o gerenciamento de GPOs, backup/restore de GPOs entre outras funções, altamente recomendado a sua utilização.
Active Directory User and Computers: Se você não tem o GPMC instalado tu podes editar as GPOs através desta ferramenta.
Active Directory Sites and Services: Se você não estiver instalado o GPMC tu podes utilizar essa ferramenta para editar as configurações do site, entre outras opções.
Gpupdate: Ferramenta de linha de comando que tu podes forçar a aplicação das GPO imediatamente.

sábado, setembro 18, 2010

Instalação do IAS no Windows 2003 Server

O IAS(Internet Authentication Service) é a implementação Microsoft do protocolo Radius, no Windows 2008 Server o mesmo foi substituído pela NPS.
Para a instalação do IAS no Win 2003 adicionar a opção “Internet Authetication Service”, essa opção está disponível em Adiconar e remover componentes do Windows “Networking Services”.


Tech.Ed 2010

Participei do tech.ed 2010 nos dias 13 a 15 de setembro, gostei muito do evento, voltei para o trabalho cheio de idéias e projetos que desejo implantar onde eu trabalho, foi dada grande ênfase na parte de virtualização e computação em nuvem, ou cloud computing ;-).
Em resumo acho que o evento foi muito bom, e ano que vem quero participar novamente.


segunda-feira, setembro 06, 2010

Limitar o uso de memória do processo sqlservr.exe no Forefront TMG

Estávamos com um pequeno problema, o processo sqlservr.exe estava com alta utilização da memória, neste caso o SQL é utilizada para o armazenamento dos logs do Forefront, então realizei os passos abaixo para resolver o problema.
Executar os seguintes procedimentos:
Abrir o notepad e criar um arquivo .sql com as configurações abaixo, neste exemplo eu estou limitando a 1GB=1024MB:
USE master
EXEC sp_configure 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
USE master
EXEC sp_configure 'max server memory (MB)',1024
RECONFIGURE WITH OVERRIDE

No prompt de commando executar o comando abaixo:

osql -E -S Server\msfw -i caminhodoArquivo\arquivo.sql

Para verificar se foi realizada a alteração nas configurações, é só editar o arquivo.sql ou criar um novo arquivo é deixar somente a opção sp_configure

domingo, setembro 05, 2010

Ferramentas para gerenciamento de pacotes no Slackware

São quatro as principais ferramentas de gerenciamento de pacotes no slackware:
pkgtool: baseado em um menu, permite a instalação e remoção de pacotes.
installpkg: instala um novo pacote no sistema.
removepkg: remove um pacote do sistema.
upgradepkg: realiza a atualização de um pacote no sistema.

sábado, setembro 04, 2010

Protocolo OSPF Windows 2003 Server

É indicado para roteamento em grandes redes, principal vantagem é sua eficiência, pois a troca de tabelas de roteamento não exige muito da rede, sua desvantagem é sua complexidade.
Não tem limite de saltos:

Protocolo de Roteamento RIP Windows 2003 Server

Routing Information Protocol, é um protocolo de roteamento para pequenas e médias organizações, o RIP descarta pacotes caso o custo seja maior que 15, sua principal vantagem é a facilidade de implantação.
Para a instalação do RIP no Windows 2003 seguir os seguintes passos:Acessar o Routing and Remote Access – Ip Routing – General – Clicar com o botão direito do mouse ir na opção “New Routing Procotol”
Após realizar a instalação do protocolo é necessário disponibilizar uma interface.
Opções disponiveis na para a interface:
General: Informaçõe sobre modo de operação.
Security: Pode configurar quais roteadores o RIP irá aceitar o trafego.
Neighbors: Específica o modo de interação com outros roteadores.

WTS e impressoras

Faz algum tempo que eu trabalho com WTS, é um das necessidades dos usuários que acessam o WTS é efetuar a impressão em suas impressoras locais, quando eu recebia alguma solicitação de instalação de impressora no WTS eu verificava o modelo de impressora que o usuário possui e efetuava a instalação do driver, no meu caso as impressoras são redirecionados no WTS para a impressora local, não tenho nenhuma impressora instalada fisicamente no servidor, pois são vários usuários acessando o WTS de diversas cidades, com o passar do tempo e inúmeros drivers instalados no WTS, o servidor foi apresentando problemas como: demora para efetuar logoff, sessões ficavam travadas, spooler parava entre outros problemas, então efetuei a formatação do WTS.
Mais se continuasse com os mesmos procedimentos no WTS eu logo teria problemas novamente, pois eu teria que instalar diversos drivers, então encontrei uma ótima solução para resolver estes problemas, a instalação de drivers universais, o objetivo em teoria pelo menos, de um driver universal é funcionar em diversos modelos de impressoras do fabricante que disponibiliza o driver, ao utilizar drivers universais talvez alguns recursos de impressão fiquem indisponíveis, no meu cenário essa solução resolveu diversos problemas, claro que nem todos os drivers funcionaram, alguns modelo tive que baixar o driver da respectiva impressora.
Se tu utiliza WTS em seu cenário e possui diversas impressora uma boa opção é a instalação de drivers universais, isso resolveu o meu problema.

quarta-feira, julho 21, 2010

Desinstalar MyBrowserBar

Ao navegar na WEB e era gerado o erro HTTP 404 - File not found, o navegador era automaticamente redirecionado para o endereço “mybrowserbar.com”, para resolver essa situação efetuei a desinstalação do programa pdfforge Toolbar, que foi instalado quando efetuei a instalação do PDFCreator.
Para efetuar a desinstalação deste programa acessar Painel de Controle – Programas – Programas e Recursos(Windows Vista – Windows 7), se for Windows XP Painel de Controle - Adicionar e Remover Programas.

quinta-feira, julho 15, 2010

Microsoft Tech.Ed Brasil 2010

Definir Tempo Proteção de Tela

Houve a necessidade de definir no WTS um tempo padrão para a Proteção de tela para todos os usuários, após uma pesquisa encontrei uma diretiva para definir o tempo de proteção de tela, para definir essa diretiva executei os seguintes passos:
Inciar - exexutar - gpedit.msc
Configurações do Usuário
Modelos Administrativos
Painel de Controle
Exibição
Editar
Tempo limite de proteção de tela, conforme print abaixo:

Cátalogo global - Erro

Ao efetuar a criação de uma usuário recebia a seguinte mensagem:
“O Windows não pode verificar se o nome de usuário é exclusivo porque ocorreu o seguinte erro ao ser contatado o cátalogo global”:
O Servidor não está operacional

Após uma pesquisa executei os seguinte procedimento e resolveu o problema:
Acessei - Serviços e sites do Active Directory - Sites - Site -Servidor :
Fui nas propriedades de NTDS Settings e marquei a opção "Catálogo global" conforme print abaixo:Após efetuar este procedimento ao criar novos usuários não recebi mais a mensagem de erro.

Links:
http://technet.microsoft.com/pt-br/library/cc776756%28WS.10%29.aspx
http://www.itcentral.com.br/default.asp?id=15&ACT=5&content=107&mnu=15

sábado, julho 03, 2010

Ferramentas para verificar conectividade

Ipconfig, ferramenta que permite verificar o endereçamento IP.

Network Diagnostics, ferramenta gráfica disponível para Windows 2003 que efetua diversos passos para verificar problemas na conectividade, para acessar ir em Help and Support Center(F1) – Tools – Network Diagnotics.

Netdiag, utilitário de linha de comando que está incluído nas ferramentas de Support da Microsoft, pode ser instalado através do CD do Windows. NetDiag realiza uma série de testes para detectar problemas de rede, é uma ferramenta com diversas opções como:
Ndis - Netcard queries Test
IpConfig - IP config Test
Member - Domain membership Test
NetBTTransports - NetBT transports Tes
Autonet - Autonet address Test
IpLoopBk - IP loopback ping Test
DefGw - Default gateway Test
NbtNm - NetBT name Test
WINS - WINS service Test
Winsock - Winsock Test
DNS - DNS Test
Browser - Redir and Browser Test
DsGetDc - DC discovery Test
DcList - DC list Test
Trust - Trust relationship Test
Kerberos - Kerberos Test
Ldap - LDAP Test
Route - Routing table Test
Netstat - Netstat information Test
Bindings - Bindings Test
WAN - WAN configuration Test
Modem - Modem diagnostics Test
Netware - Netware Test
IPX - IPX Test
IPSec - IP Security Test

C:\ >netdiag /test:WAN

Ping, basicamente o comando mais famoso, todos conhecem, então nem vou entrar em detalhes.

Pathping, é uma ferramenta que combina funcionalidades do ping e do tracert e mais algumas informações que essas ferramentas não tem.

Tracert, ferramenta que permite determinar a rota de um pacote, enviando pacotes ICMP echo request para o endereço IP especificado, e incrementa o campo TTL.

Arp, o comando arp permite verificar o cache arp, caso dois computador em uma mesma subrede não conseguem pingar um no outro é possível verificar com o comando arp –a, se o MAC da máquinas estão listados uma na outra.

quarta-feira, junho 30, 2010

Instalação do Network Monitor

Para capturar o trafico de rede é necessário que esteja instalado dois componentes o Network Monitor e o agente Network Monitor Agent.
Para realizar a instalação do Network Monitor é necessário ir em ”Add or remove Windows components”, e selecionar a opção “Management and Monitoring Tools” após isso selecionar a opção “Network Monitor Tools“ conforme print abaixo:

Quando é realizado a instalação do Network Monitor o agente Network Monitor Agent é instalado automáticamente, mais também é possível realizar a instalação somente do Network Monitor Agent, para a instalação é necessário seguir os seguintes passos, ir em “Network Connections”, selecionar a conexão de rede e ir em “properties”- “install “- “protocol” e selecionar a opção “Network Monitor Driver”.

quinta-feira, junho 24, 2010

O driver IPSec entrou no modo de bloqueio

Aconteceu este problema em um computador executando o Windows Server 2003, após reiniciar o mesmo, o computador não conectada mais a rede, após verificar no log de eventos do Windows encontrei o seguinte evento:
"
O driver IPSec entrou no modo de bloqueio. O IPSec descartará todo o tráfego de rede TCP/IP de chegada e saída que não seja permitido pelos isolamentos da diretiva IPSec em tempo de inicialização.
"Após algumas verificações encontrei um artigo da Microsoft sobre este problema, este problema é relacionado a perda de uma chave de registro do Windows, a chave é "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local".

Este problema é relacionado ao serviço "Serviços IPSEC" quando eu tentava iniciar o serviço acontecia o seguinte erro:
"
O serviço Serviços IPSEC terminou com o erro:
O sistema não pode encontrar o arquivo especificado.
"
Pesquisei no registro do Windows e essa chave não existia, então registrei a dll "polstore.dll", executando o seguinte procedimento:

Clique em Iniciar , clique em Executar , digite regsvr32 polstore.dll na caixa Abrir e, em seguida, clique em OK .
Reiniciei o computador e o acesso a rede foi possível.

Mais informações sobre o problema estão disponíveis no Kb da Microsoft abaixo:
http://support.microsoft.com/kb/912023/pt-br

quinta-feira, junho 03, 2010

Vmware 2.0

Após realizar a instalação do vmware 2.0 e realizar a configuração de uma máquina virtual não conseguia acessar o console da máquina, eu estava tentando efetuar o acesso com o Firefox 3.6 mais recebia a mensagem abaixo:
Cannot access virtual machine console. The request timed out.
Como não consegui achar um solução para resolver este problema com o Plugin e também não havia muito tempo, encontrei um alternativa para conectar via console, acessei o seguinte caminho:
C:\Users\usuario\AppData\Roaming\Mozilla\Firefox\Profiles\edgqu6sl.default\extensions\VMwareVMRC@vmware.com\plugins
Lembrando que o diretório AppData é um diretório oculto.
Neste diretório tem o executável vmware-vmrc.exe simplismente eu criei um atalho para este executável com os seguintes parâmetros:
-h maquina:8333 -M 48
-h = nome da máquina:porta
-M = Código da máquina

Basicamente o atalho ficou assim:
C:\Users\usuario\AppData\Roaming\Mozilla\Firefox\Profiles\edgqu6sl.default\extensions\VMwareVMRC@vmware.com\plugins\vmware-vmrc.exe -h maquina:8333 -M 48

Para descobrir o código de sua máquina é só acessar o o gerenciado Web do Wmware e clicar na máquina desejada, e observar o valor do campo após o parâmetro VirtualMachine, abaixo segue o exemplo, neste caso o código da máquina é 48:

https://servidorvm:8333/ui/#{e:%22VirtualMachine|48%22,w:{t:true,i:0}}

domingo, maio 23, 2010

Instalando pacotes txz no slackware

Depois de algum tempo sem utilizar o slackware hoje resolvi brincar um pouco, por curiosidade baxei o wine, porém ele estava em um formato que eu não conhecia o .txz(é um novo formato de compactação) tentei realizar a instalação via installpkg mais não foi possível depois de procurar um pouco encontrei a solução, para realizar a instalação de pacotes .txz realizei a instalação\Atualização dos seguintes pacotes:

pkgtools-13.1-noarch-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-current/slackware/a/pkgtools-13.1-noarch-1.tgz

tar-1.23-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-current/slackware/a/tar-1.23-i486-1.tgz

xz-4.999.9beta-i486-1.tgz
ftp://ftp.slackware-brasil.com.br/slackware-current/slackware/a/xz-4.999.9beta-i486-1.tgz

Após realizar a instalação deste pacotes foi possível realizar a instalação do wine:
#installpkg wine-1.1.44-i486-1sg.txz


domingo, maio 16, 2010

Jiu-Jitsu

Ontem, sábado dia 15 de maio participei de um campeonato interno de Jiu -Jitsu, foi meu primeiro campeonato consegui vencer, lutei três lutas, a primeira venci por pontos e a segunda e terceira consegui finalizar, mais estava bem nervoso e isso acabou me prejudicando um pouco, agora é só treinar para os próximos campeonatos.

domingo, maio 02, 2010

Acessando uma instância do ms sql 2005 através do DAC

DAC(dedicated administrator connection)
É possível acessar vis SSMS(Para conectar via DAC especificar admin: e a instancia) ou via SQLCMD.
Para acessar via SSMS é necessário abrir o SSMS mais não se conectar a nenhuma instancia, se tentar efetuar o acesso via DAC vai gerar o erro abaixo:“Dedicated administrator connections are not supported. (ObjectExplorer)”

Após isso clicar em new query, e tentar a conexão via DAC.Para acessar via SQLCMD:

domingo, abril 25, 2010

Criando um SQL Server Agent Job

Somente o proprietário ou membros do grupo sysadmin podem modificar um Job.
Criando um Job para efetuar o backup da database maykon:

Definindo Steps:
Definindo o horário de execução:

quinta-feira, abril 22, 2010

DBCC CHECKDB

Verifica a integridade física e lógica dos objetos de uma base de dados, executa as seguintes operações:
DBCC CHECKALLOC
DBCC CHECKTABLE
DBCC CHECKCATALOG
Valida os dados Service Broker no banco de dados
Valida o conteúdo de toda exibição indexada do banco de dados.

Verificando a integridade da base de dados AdventureWorks:

dbcc checkdb('AdventureWorks')
WITH ALL_ERRORMSGS

sábado, abril 17, 2010

Shrinking

A utilização do shrink é para redução dos arquivos de uma base de dados:

Usando SHRINKDATABASE serve para reduzir todos os arquivos de dados e log de uma base de dados, abaixo o comando está sendo executado na base de dados AdventureWorks:
DBCC SHRINKDATABASE(N'AdventureWorks' )

Usando ShrinkFile para reduzir o tamanho do arquivo AdventureWorks_data, a opção Trucateonly Libera todo o espaço livre no final do arquivo para o sistema operacional.
DBCC SHRINKFILE (N'AdventureWorks_Data' , 0, TRUNCATEONLY)

A procedure sp_spaceused exibe informações sobre o espaço disponível.

quarta-feira, abril 14, 2010

Verificando Índices

Verificando a taxa de fragmentação da database AdventureWorks tabela Person.Address

SELECT avg_page_space_used_in_percent,avg_fragmentation_in_percent,* FROM sys.dm_db_index_physical_stats
(DB_ID(N'AdventureWorks'), OBJECT_ID(N'Person.Address'), NULL, NULL , 'DETAILED');

Reorganizando índices

alter index AK_Address_rowguid on Person.Address
reorganize

Reconstruindo índices

alter index AK_Address_rowguid on Person.Address
Rebuild

Quando usar Rebuild ou Reorganize:
Se avg_page_space_used_in_percent for menor que 75 e maior que 60
ou avg_fragmentation_in_percent for maior que 10 e menor 15
Neste caso usar Reorganize

Se avg_page_space_used_in_percent menor que 60 ou avg_fragmentation_in_percent maior que 15
Neste caso usar Rebuild

terça-feira, abril 13, 2010

Comandos Windows

Encontrei através do Stumble um site com alguns comandos do Windows que você provavelmente não deve conhecer, para executar estes comandos é só executar no executar do Windows:
Abrir diretório home é só ir em executar e digitar: .Abrir diretórios dos usuário: ..
Abrir meu computador: ...
Abrir driver onde o Windows está instalado: \

Fonte:
instantfundas

segunda-feira, abril 12, 2010

Usando Copy database Wizard

Usado para copiar ou mover databases, pode operar de duas formar Detach e Attach e SMO(a base não precisa ficar offline).
Para utilizar essa função selecionar a database e ir na opção task – copy database.
Vou mostrar um exemplo copiando a database para outra instância no mesmo servidor:
Selecionado a origem:Destino:Selecionando o método de transferência:
Selecionei o método SMO o método mais demorado.
Selecionar o destino, e algumas outras opções:
O ponto final e só executar ou agendar a tarefa.

Usando Detach e Attach

Um exemplo de como utilizar Detach e Attach para mover databases através da linguagem SQL, isso também pode ser feito através do SSMS:

-- detach a database Maykon
exec sp_detach_db 'Maykon','true'

-- attach a database Maykon
create database Maykon
on
(filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Maykon.mdf'),
(filename='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\Maykon_log.ldf')
for attach

domingo, março 21, 2010

Backup MS SQL 2005

O MS SQL suporta quatro tipos de backups:
Full Backups, Differential Backups, Transaction Log Backups e Filegroup Backups.

Full Backup: captura todos os dados armazenados do banco de dados, abaixo efetuando um backup completo via T-SQL:

backup database maykon to disk ='C:\Test\backupFULL.bak' with init

Differential Backups: captura todos os extents(unidade de alocação do sql) armazenados desde o último backup completo, comando T-SQL:

backup database maykon to disk ='C:\Test\backupDIF.bak' with differential

Transaction Log Backups: só disponível se a database estiver configurada como Full ou Bulk-Logged na opção Recovery model, o Transaction Log registra todas as transações e modificações feitas no banco de dados a cada transação, exemplo de utilização:

backup log maykon to disk='C:\test\backupLog.bak' with init

Filegroup Backups: uma alternativa ao backup completo, sintaxe T-SQL:

backup database maykon filegroup='PRIMARY'
to disk=
'C:\Test\BackupFile.bak'

Também é possível efetuar um backu diferencial com o comando abaixo:

backup database maykon filegroup='PRIMARY'
to disk=
'C:\Test\BackupFileDif.bak'
with differential

Um recursos interessante é a possibilidade de utilizar a cláusula MIRROR com este comando é possível salvar o backup em mais de um lugar, o comando abaixo é um exemplo, estou salvado uma cópia do backup original chamando de Mirror.bak conforme comando abaixo:

backup database maykon to disk='C:\test\Original.bak' mirror to disk='C:\test\Mirror.bak' WITH FORMAT;

Isso é só um guia rápido sobre o backup no MS SQL 2005, porém existem diversas opções no backup que não foram tratadas neste post.

Usando SSIS Import/Export Wizard

Para iniciar o SSIS Import/Export Wizard selecionar a database que tu vai trabalhar clicar com o botão direto do mouse e selecionar a opção Import Data ou Export Data, também é possível inicializar através da linha de comando com o comando: DTSWizard.exe
Realizando a exportação para um arquivo de texto:

Selecionando o destino:
Clico em Next terei duas opções, copiar tabelas visões etc, ou construir uma consulta SQL, neste caso vou selecionar a primeira opção, após este passo vou selecionar a tabela ou visão que eu desejo exportar, neste caso vai ser a tabela teste, conforme imagem abaixo:


Tenho a opção de editar a exportação dos dados na opção “Edit Transform”, após este passo clico em Next, onde eu tenho a opção de executar a tarefa imediatamente, e salvar este pacote de exportação, caso eu selecione a opção “SQL Server” este pacote fica salvo no banco de dados msdb, se selecionar a opção “File system” será salvo um arquivo DTSX no caminho especificado, também é possível especificar as opções de criptografia do pacote.
Definindo um nome para o pacote:
Após este procedimento clica na opção Next depois Finish que as ações serão executadas.

terça-feira, março 16, 2010

Bulk Insert

O comando Bulk Insert é um comandoTransact-SQL utilizado para importar(somente importar) dados para um Banco de dados MS SQL, sua utilização é parecida com ao utilitário BCP, abaixo o comando SQL para realizar a importação dos dados do arquivo importar.txt para a tabela TesteBulk na database Maykon:

bulk insert Maykon..TesteBulk from 'C:\importar.txt'

BCP (Bulk Copy Program)

BCP(bulk copy program) é usado para importação\exportação de grandes volumes de dados, é um utilitário de linha de comando com muitas opções, vou descrever dois exemplos de utilização desta ferramenta, realizando a importação e exportação de dados, conforme abaixo.

Inicialmente vou criar uma database qualquer:

create database Maykon
Agora vou criar um tabela com duas colunas:
CREATE TABLE TesteBCP(
id int NULL,
nome varchar(50) NULL,)

No diretório raiz da máquina que vou realizar a importação tenho o arquivo importar.txt, este arquivo tem poucos registro conforme imagem abaixo:
(O arquivo está delimitado por TAB e com um ENTER após o último registro)
Agora é só executar o comando Bcp no prompt de comando, conforme imagem abaixo:

Como pode observar os registros foram importados para a tabela.

Realizando a exportação de uma tabela:
C:\>bcp Maykon..TesteBCP out "C:\export.txt" -t -T -c

Estou exportando para o arquivo export.txt os dados da tabela TesteBCP a opção –c serve para a exportação de dados de caractere para transferências para e a partir de produtos não SQL Server.


segunda-feira, março 15, 2010

Triggers

Em MS SQL Server 2005 temos dois tipos de Triggers: DML(em respostas a comandos Insert, update e delete) e DDL(geralmente usado para processos de auditoria)

Abaixo um exemplo da criação de uma Trigger DML
Criando a tabela que vai ser realizado o update

create table produto
(ProdutoID int NOT NULL,
)

Criando a tabela que contera as informações das alterações realizadas(update)

create table TriggerDML
(auditID int identity(1,1) primary key,
ProdutoID int not null,
usuario sysname not null
);

Criando a trigger

create trigger auditoria
on produto -- tabela que vai ser auditada
for update -- para update
as
insert into TriggerDML -- tabela que vou inserir as informações de auditoria
(ProdutoID,usuario) -- os campos em q serão inseridos as informações
select produtoID,suser_name() -- buscando as alterações
from
produto

Criando uma segunda Trigger que vai mostra a mensagem “Um registro inserido na tabela” após uma operação de Insert.

create trigger TriggerDML2
on produto
for insert
as
print
'Um registro inserido na tabela'

Agora vou criar um trigger DDL

create trigger TriggerDDL
on database
for drop_table
as
print 'Você não pode excluir essa tabela'
rollback

Ao tentar executar a exclusão de qualquer tabela em que foi criando a trigger eu vou receber a mensagem “Você não pode excluir essa tabela”, e nenhuma tabela da batabase será excluida.

sábado, março 13, 2010

Especialização em Segurança da Informação

Dia 12-03-2010 eu tive o prazer de participar do enceramento da minha especialização em segurança da informação, foram 18 meses, em que eu aprendi muitas coisas e conhecia pessoas interessantes, agora sou um especialista em Segurança da Informação(que chique..)

Criando uma procedure

Vou exemplificar de uma maneira bem rápida como criar uma procedure para atualizar um campo em uma pequena tabela.
Tenho uma tabela chamada teste com o campo data, estou utilizando a função getdate para trazer a data atual (minha máquina virtual está com a data errada (-:), mas tudo bem.

Criando a procedure:

create procedure maykon
as
begin
update teste set data=getdate()
end

Executando a procedure

exec maykon

Abaixo o resultado do comando:


Uma procedure pode executar qualquer comando Transact-SQL exceto: USE, SET SHOWPLAN_TEXT ON E SHOWPLAN_ALL ON.

domingo, fevereiro 28, 2010

Criando Partições

A criação de partições é uma novidade implementado no Microsoft SQL Server 2005, a sua função é realizar o particionamento de dados.
Abaixo criando uma partição, isso é o primeiro passo para o particionamento de tabelas, índex etc.:

create partition function partfunc (int) as
range left for values(1000,2000)

Para verificar os valores da partição:

select * from sys.partition_range_values

Criando um esquema

A criação do scheme serve para mapear as partições de uma tabela particionada ou índice para grupos de arquivos, abaixo o exemplo:

create partition scheme partscheme as
partition partfunc to
([FG1],[FG2],[FG3]);

Verificar o resultado do comando

select * from sys.partition_schemes

sábado, fevereiro 27, 2010

Begin Transaction

Uma boa prática para quem trabalha com MS SQL é utilizar a cláusula “Begin Transaction”,”Commit Transaction” e “RoolBack” este comandos são utilizados para manter a consistência na base de dados abaixo um exemplo:

Estou abrindo uma transação:

begin transaction

Agora vou executar um update em uma tabela qualquer

update teste set inteiro=11

Agora eu realizo um select na tabela e verifico que todos os dados estão alterados.
Ao abrir outra conexão com a base de dados e executar um select na tabela teste, não vou receber nenhum resultado, pois a transação está aberta.
Só que acabei lembrando que tinha esquecido a cláusula where...
Para resolver este problema é só usar o comando rollback

rollback

Ao executar o comando rollback os dados voltarão ao estado antes do update.
Para salvar um transação realizada é só realizar o comando:

commit transaction

Estes comandos são bem simples e bem úteis.

quarta-feira, janeiro 13, 2010

Implementando Constraints

Constraints são utilizadas como um meio de segurança prevenindo a entrada de dados fora de um limite estabelecido pelo DBA.
É possível criar um constraints com dois diferentes níveis:
Coluna: É aplicado somente na coluna e não pode referenciar outra coluna.
Tabela: Pode ser referenciado em qualquer coluna de uma tabela, mais não pode fazer referência a outras tabelas.

Criando um rule para validação de e-mail
create rule EmailValida
as
@value like '%@%.[a-z][a-z][a-z]' or @value like '%@%.[a-z][a-z].[a-z][a-z]';

Criando um tabela para realizar a aplicação da Rule

create table Teste(
nome varchar(30) not null,
email varchar(30) not null
)

Aplicando a rule a coluna email
EXEC sp_bindrule 'EmailValida','Teste.email'

Após aplicar a rule eu tento inserir um valor que não passa na validação da rule “s”.
insert Teste(nome,email) values ('maykon','s')
Gera o seguinte erro:

A column insert or update conflicts with a rule imposed by a previous CREATE RULE statement. The statement was terminated. The conflict occurred in database 'data', table 'dbo.Teste', column 'email'.

Este valor passa na validação

insert Teste(nome,email) values ('maykon','maykon@.com.br')
Adicionado default constraint na coluna cidade

create table Teste2(
nome varchar(30) not null,
email varchar(30) not null,
cidade varchar(60) not null default 'Cidade'
)


Unique Constraints
Com essa funcionalidade da para negar a inserção de valores duplicados em uma coluna.

create table Teste3(
nome varchar(30) not null unique nonclustered,
email varchar(30) not null,
cidade varchar(60) not null default 'Cidade'
)

Inserindo os dados

insert Teste3(nome,email,cidade) values ('maykon','maykon@sc.br',default)
Se eu tentar executar novamente a query vai gerar o seguinte erro.
Violation of UNIQUE KEY constraint 'UQ__Teste3__014935CB'. Cannot insert duplicate key in object 'dbo.Teste3'.

Criação de uma chave primária.
create table Teste4(
id int primary key,
nome varchar(30) not null
)

terça-feira, janeiro 12, 2010

Agendador de tarefas não executa batch – Windows Vista,7,2008

Depois de apanhar um tempão consegui descobrir o porquê a tarefa agendada não estava executando o arquivo .bat, ele simplesmente não executava o .bat e dava o erro 0x1
Então acabei descobrindo que se eu colocar a opção “Start in” que está como opcional a tarefa funciona corretamente.

Comando NET parte 2

Depois de muito tempo, segue a parte dois com algumas dicas do comando net.
Os comandos abortados serão: PAUSE | PRINT | SEND | SESSION |
SHARE | START | STATISTICS | STOP | TIME | USE | USER | VIEW ]

C:\ net pause Server
Pausa o serviço Server, não é todos os serviços que pode entrar em pause.
--
C:\net print
Exibe trabalhos na fila de impressão, não mais disponível no Windows 7
--
C:\net send
Envia mensagens, não mais disponível no Windows 7.
--
C:\net session
Informações sobre sessões abertas.
--
C:\net share
Administração dos recursos compartilhados.
Para compartilhar uma pasta:
C:\net share Comp=C:\Teste /remark:"Teste"
Compartilhei a pasta C:\Teste com o nome de Comp.
Deletando o compartilhamento.
C:\net share Comp /delete
--
C:\net start
Inicia um serviço, abaixo iniciando serviço de soopler.
C:\ net start spooler
--
C:\net statistics
Informações sobre serviços, os serviços disponíveis são Server e estação de trabalho.
--
C:\net stop
Para um serviço, parando o serviço de spooler do Windows
C:\net stop spooler
--
C:\net time
Sincronização do Horário do Windows.
--
C:\net use
Mapeamento de compartilhamentos
C:\ net use m: \\computador\recurso /persistent:yes
--
C:\net user
Adiciona e verifica usuários no sistema, abaixo adicionando o usuário teste com a senha @123456789
C:\ net user /add teste @123456789
--
C:\net view
Mostra os recursos compartilhados de um computador
--
Pronto essa foi a segunda parte com os commandos net.
Parte 1


Godmode - Windows

Uma dica que eu recebi da Luciana, minha colega de trabalho é o godmode, basicamente o godmode centraliza todas as configurações do sistema, funciona em Windows 7, Windows 2008, Windows Vista, pelo menos nestes eu testei. Para ativar essa função é só criar um pasta no explorer e dar o seguinte nome GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

domingo, janeiro 03, 2010

Criação de Tabelas

É possível a criação de três diferentes tipos de tabelas no SQL Server, tabelas permanentes, temporárias e tabelas variáveis.

-- criando de uma tabela permanente
create table tabela(
endereco varchar(30) not null,
bairro varchar(30) null,
cidade varchar(30) not null,
nome varchar(30) not null,
cep char(10) null,
)

Para a criação de uma tabela temporária é só especificar o # após o table.

create table #temp
(
Nome varchar(30) not null,
)

As tabelas temporárias são criadas na database tempdb, as tabelas temporárias são automaticamente deletadas após a conexão associada terminar, no caso acima a tabela vai ficar disponível somente para o usuário que criou a tabela, se for necessário que está tabela fique disponível para todos os usuários é necessário utilizar dois ##.

Criação de uma tabela variável:
declare @teste table
(
nome varchar(30) not null
)

A criação de um tabela variável é uma alternativa a criação de tabelas temporárias, a tabela variável é utiliza na criação de tiggers e procedures, sua criação não requer espaço em disco, pois ela fica armazenada na memória.

Existem sete permissões para as tabelas são elas:
create table,
alter table,
select,
insert,
update,
delete,
references

Para dar as permissões nas tabelas utilizemos a cláusula Grant

use Teste

GRANT SELECT, INSERT, UPDATE, ALTER ON Teste TO mcp

No exemplo acima foi dado a permissão para o usuário mcp na database Teste.