sábado, 27 de outubro de 2012

Backup Full - Plano de Manutenção

Olá Pessoal,

Bom, final de ano é correria, trabalhos, provas, horas extras (free rs*) e entre outros fatores que acabam consumindo todo nosso tempo... "Mas como um amigo diz... não deixe o tempo passar... e o tempo passa e acabamos não fazendo nada e só se lamentando...!!!"


Então ao que interessa...


Vamos começar do zero, criando uma database  e uma tabela, consequentemente inserir alguns dados nela , OK ?


Então crie uma Database, com o nome de MeuPrimeiroBKP



Em seguida selecione sua Database


Observe em Available Databases





Agora vamos criar uma Tabela bem simples, com NOME, SOBRENOME, ENDERECO e EMAIL,
em seguida de um SELECT,




Vamos inserir alguns Dados, e novamente de um SELECT na tabela.



Novamente,

SELECT * FROM Clientes




Até aqui Ok, criamos uma Database com uma tabela, inserimos alguns dados nela!

Em Object Explorer

1 - Clique em Management
2 - Com o botão Direito do Mouse clique em Maintenance Plans
3 - Clique em Maintenance Plan Wizard..




Clique em NEXT


1- Digite um Nome para seu Plano e Coloque uma Descrição.
2 - Clique em NEXT.



Em Tasks Selecione o Plano, no Caso efetuaremos um FULL, mais podemos fazer DIFFERENCIAL e de LOG (entre outros planejamentos, fica a dica para estudar o restante =])

1 - Selecione Back Up Database (Full)
2 - Clique em NEXT



Task Order, não temos mais planos, se tivéssemos dois ou mais, aqui podemos colocar a ordem de execução, então clique em NEXT


1 - Clique em DATABASES
2 - Selecione a Database que Criamos MeuPrimeiroBKP
 3 - Clique em OK



Selecione uma Pasta onde queira Salvar seu BACKUP, vou salvar no C:\BACKUP_SQL, Então selecione a pasta e clique em OK




Selecione Verify backup integrity e clique em NEXT


 >Desmarque Write a Report to a text file e clique em NEXT


Clique em FINISH



Aguarde o Processo Terminar



Clique em CLOSE


Em Object Explorer, Iremos Editar o planejamento, então clique ....
1 - Management
2 - Maitenance Plans / BackupFull
3 - Selecione BackupFull e clique com o Botão direito do mouse, selecione MODIFY


chegaremos aqui !



Em SubPlan de 2x Cliques, em Name Coloque BackupFull e em Description Meu BackupFull e cliquem em OK




Agora clique em Subplan Schedule


1 - Qual a frequência de seu Backup, diário, semanal ou mensal ?, vamos colocar DAILY (um em um dia)
2 - DAILY FREQUENCY, vamos colocar as 22H de todos os dias.
3 - Você pode programar para começar em uma determinada data selecionando START DATE e quanto tempo ira fazer esse backup? uma semana, um mês... você pode determinar em END DATE....
Colocaremos NO END DATE (sem data para terminar)
4 - Clique em OK =]




Observe em Schedule, 
Occurs every day at 22:00:00. Schedule will be used starting on 28/10/2012.
(Todos os dias ás 22H, a partir de 28/10/2012)


Vamos testar ?

1 - Clique em Management
2 - BackupFull
3 - com botão direito do mouse em BackupFull selecione EXECUTE



Aguarde ...



Pronto Seu backup Agendado, está funcionando!!!


Qualquer Duvida só perguntar,

Um abraço a todos,
Diego Campos.


domingo, 23 de setembro de 2012

Usuários no SQL 2008 R2

Olá Pessoal, tudo bem ?

Tive uma aula sobre usuários do SQL e gostei do tema, vou tentar explicar de forma simples, para que serve cada usuário !

Então...,

Inicie seu SQL Management Studio



Em object Explorer vá em Security \ Logins e clique com o botão Direito no mouse e selecione New Login...


Aqui Temos Login name, onde podemos criar um usuário do SQL ou dentro do Domínio clicando em Search (Aqui é interessante vc ter um grupo dentro do Active Directory, Exemplo: você tem uma equipe que só faz backup então você cria esse grupo no Active Directory com o nome de Backup(exemplo) e coloca dentro desse grupo os Usuários da equipe backup =]).

Voltando, em Login name:



Repare que na frente temos Search, clicando ali podemos buscar um determinado Usuário no Domínio,
ou um outro usuário do windows(quem que não tem um desk ai com dois ou mais users ¬¬"),

No Meu caso não estou em um Domínio e sim em um Desktop Local, então digite um Login/Senha para seu Novo Usuário e altere de Windows Authentication para SQL Sever authentication, Será o SQL que ira gerenciar essa conta e não o Windows...



Agora clique em Select a page, selecione Server Roles, aqui temos as Roles padrão do SQL que não podem ser excluídas, quando criamos um Usuário devemos atrelar a ele uma Roles ao seu perfil de trabalho, portanto deve ser analisado com cuidado e selecionado a qual será concedida a esse usuário, ta mais e ai pra que serve cada Roles ?



  • bulkadmin -- Executa Processo de BULK INSERT (Exporta Arquivos txt para outro lugar (dados))
  • dbcreator -- Cria e altera qualquer database
  • diskadmin -- Gerencia os arquivos no Disco.
  • processadmin -- Administra os processos executados no SQL.
  • public -- Somente visualiza.
  • securityadmin -- Administra os Users(Logins) e consegue criar auditorias.
  • serveadmin -- Configura todas as opções e funções do servidor, inclusive consegue um shutdow!
  • setupadmin -- Configura replicações e etc...
  • sysadmin -- Consegue fazer oque quiser no SQL é um SA, então cuidado com essa Permissão.


"Diz a lenda que tem algumas criaturas ao criar o usuário seleciona SYSADMIN só para garantir rsrs,
Exemplo, se seu usuário ira somente criar algumas DB, pra que você vai selecionar SYSADMIN  e DBCREATOR ??????? não utilize SYSADMIN dessa maneira, seja cauteloso, a não ser que seu Gerente vier com aqueles papos que ele precisa que o user seja admin e tal bla bla bla..., então documente manda assinar enfim faça tudo que tire o seu da reta e manda bala, se não a vaca vai pro brejo cantando macarena *rsrs!"
*Voltando.....

Nosso User somente ira criar/alterar Database, então selecione dbcreator e só[*rs], relaxa que public por default fica selecionado ! =]


Agora em Select a pager selecione User Mapping,


Essa parte eu acho a mais interessante, aqui conseguimos determinar quais as Database que o User terá acesso e oque ele conseguira fazer nela, observe as Roles nível Database,

  • db_accessadmin -- Controla os acessos do Windows, Grupos do Windows e do SQL
  • db_backupoperator -- Faz backup do BD.
  • db_datareader -- Apenas SELECT (leitura do BD)
  • db_datawriter -- Consegue alterar, excluir, adicionar dados em todas as tabelas de usuários.
  • db_ddladmin -- (DDL-Data Definition Language) Executa qualquer comando dentro do BD.
  • db_denydatareader -- Não lê as tabelas dos usuários dentro de um BD.(Negação)
  • db_denydatawriter -- não consegue alterar, excluir, adicionar dados em todas as tabelas de usuários.(Negação)
  • db_owner -- Consegue executar todas as configurações e manutenção de BD.(Cuidado com essa opção)
  • db_securityadmin --  Pode modificar a associação de função e gerenciar permissões.


Agora que sei para que serve as Roles Nível Database, vou colocar meu User para Efetuar somente leitura dos BD.

Então selecione a Database e escolha a permissão que dará a ele, no caso db_datareader, Clique em Ok e Pronto, agora Ao iniciar o Management Studio em Authentication coloque SQL Server Authentication.

Galera espero ter ajudado em 0,01%!

Abraço a todos!

Att.,
Diego Campos.
DBA Brazil-SQL
23-09-12


domingo, 19 de agosto de 2012

AdventureWorks

Fala pessoal, tudo bem?

Hoje ensinarei vocês a subir o BD AdventureWorks aqueles BD que utilizamos nos cursos SQL Server 2008 R2, lembram. e ao mesmo tempo a fazer um restore.

Fiz um Backup dos meus BD que já estavam instalados e funcionando perfeitamente e joguei no Ubuntu One, vou compartilhar o link com vocês está compactado e com senha que é DBABRAZILSQL

Primeiro Vamos Baixar os AdventuresWorks dentro de uma pasta para depois descompactar.

AdventuresWorks - Clique Aqui.
AdventuresWorks2008 - Clique Aqui.
AdventuresWorksDW - Clique Aqui.
AdventuresWorksDW2008 - Clique Aqui.
AdventuresWorksLT - Clique Aqui.

Agora vá até a Pasta onde você salvou os arquivos, temos cinco arquivos compactados lá, ok!?


Selecione todos e clique com o Botão direito do mouse e descompacte dentro da própria pasta ou onde desejar!


Digite a senha DBABRAZILSQL para cada um deles. 



Agora temos cinco arquivos descompactados, exclua ou retire os Compactados desta pasta.


Abra seu SQL Server 2008R2, caso não tenha instalado siga esse tutorial, Clique Aqui.


Clique em Databases com o botão direito do mouse e selecione Restore Database...



Agora selecione From Device e clique em Specify Backup. 
(No quadradinho com três pontinhos, igual a imagem abaixo, onde a seta está apontando).


Nessa tela clique em ADD


Eu salvei no C:\AdventureWoks, então Observe que não aparecerá nada, 
mude File Of Type para All Files(*) e observe.


Agora temos todos os backup que baixamos, selecione o primeiro AdventureWorks e Clique em OK.



Clique em OK



1 - em To database Digite AdventureWorks
2 - Selecione Restore e clique em OK


Note que em Progress o SQL mostra quanto já foi restaurado, no caso abaixo já foram 80%



Caso tudo ocorra surgira essa tela, clique em OK



Verifique!


Agora só fazer o mesmo passo para os demais AdventureWorks!

Qualquer Duvida: dbabrazilsql@gmail.com

Diego Campos.