<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>SQL Server: um Endpoint Brasileiro : Gerenciamento</title><link>http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx</link><description>Tags: Gerenciamento</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Webcasts de SQL Server no MSDN Experience</title><link>http://blogs.msdn.com/procha/archive/2008/08/13/webcasts-de-sql-server-no-msdn-experience.aspx</link><pubDate>Wed, 13 Aug 2008 18:33:37 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8858918</guid><dc:creator>procha</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/procha/comments/8858918.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=8858918</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=8858918</wfw:comment><description>&lt;p&gt;&lt;a href="http://www.msdnbrasil.com.br/experience/sqlserver" target="_blank"&gt;Está disponível o novo MSDN Experience exclusivo para SQL Server&lt;/a&gt;. Parafraseando meu bom amigo Luciano Moreira (Especialista em Desenvolvimento na Microsoft Brasil): &lt;/p&gt;  &lt;p&gt;&lt;em&gt;“O Experience de SQL Server conta com 5 módulos, que cobrem desde à introdução ao SQL Server e suas ferramentas, passando pela escrita de consultas (simples e complexas), criação de views e stored procedures, programação CLR, arquitetura e componentes internos, indexação, gerenciamento de transações, análise de performance e troubleshooting, e como um extra, ainda temos duas sessões sobre o Service Broker…” “…O conteúdo do MSDN Experience pode ser aplicado tanto para o SQL Server 2005 e 2008, como em parte, para o SQL Server 2000.”&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;O conteúdo é muito bom! Dois dos webcasts foram gravados por mim.&lt;/p&gt;  &lt;p&gt;Visite em &lt;strong&gt;MSDN Experience - SQL Server:&lt;/strong&gt; &lt;a href="http://www.msdnbrasil.com.br/experience/sqlserver"&gt;http://www.msdnbrasil.com.br/experience/sqlserver&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8858918" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Reporting+Services/default.aspx">Reporting Services</category><category domain="http://blogs.msdn.com/procha/archive/tags/Alta+disponibilidade/default.aspx">Alta disponibilidade</category><category domain="http://blogs.msdn.com/procha/archive/tags/Cluster/default.aspx">Cluster</category><category domain="http://blogs.msdn.com/procha/archive/tags/Ciclo+de+vida+de+desenvolvimento/default.aspx">Ciclo de vida de desenvolvimento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Desenvolvimento+em+Banco+de+Dados/default.aspx">Desenvolvimento em Banco de Dados</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+Management+Studio/default.aspx">SQL Server Management Studio</category><category domain="http://blogs.msdn.com/procha/archive/tags/T-SQL/default.aspx">T-SQL</category><category domain="http://blogs.msdn.com/procha/archive/tags/Webcast/default.aspx">Webcast</category><category domain="http://blogs.msdn.com/procha/archive/tags/curso/default.aspx">curso</category><category domain="http://blogs.msdn.com/procha/archive/tags/learning/default.aspx">learning</category><category domain="http://blogs.msdn.com/procha/archive/tags/MSDN/default.aspx">MSDN</category></item><item><title>Novidades no SQL Server Management Studio (SSMS)</title><link>http://blogs.msdn.com/procha/archive/2008/08/13/novidades-no-sql-server-management-studio-ssms.aspx</link><pubDate>Wed, 13 Aug 2008 18:20:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8858834</guid><dc:creator>procha</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/procha/comments/8858834.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=8858834</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=8858834</wfw:comment><description>&lt;p&gt;Recentemente tenho utilizado bastante algumas das novidades do SQL Server Management Studio na versão 10 (SQL Server 2008) e achei que seria interessante postar sobre isto. Algumas dessas novidades eram muito esperadas (debug de código T-SQL e IntelliSense, por exemplo) e vão deixar os administradores bastante entusiasmados. Outros recursos novos ajudam a reduzir o tempo necessário para administrar seus servidores, inclusive versões anteriores do SQL Server. &lt;/p&gt;  &lt;p&gt;Vamos a algumas das novidades mais interessantes:&lt;/p&gt;  &lt;h1&gt;IntelliSense&lt;/h1&gt;  &lt;p&gt;Agora é possível utilizar o editor de query do Management Studio com IntelliSense. Este recurso atua de forma muito similar de como funciona no Visual Studio, fornecendo recursos que completam os comandos conforme você os digita, destacam os erros de sintaxe e digitação e ajuda com parâmetros (aquele “tip tool” com a especificação dos parâmetros).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/01_2.jpg"&gt;&lt;img title="01" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="181" alt="01" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/01_thumb.jpg" width="303" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/03_2.jpg"&gt;&lt;img title="03" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="183" alt="03" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/03_thumb.jpg" width="325" border="0" /&gt;&lt;/a&gt; &lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/02_4.jpg"&gt;&lt;img title="02" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="193" alt="02" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/02_thumb_1.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Há quem diga que não gosta de IntelliSense, mas são poucos. E os que “não gostam”, geralmente mudam de idéia muito rápido. Mas para quem realmente não gosta, o IntelliSense pode ser desativado. &lt;/p&gt;  &lt;h1&gt;Debugger para código T-SQL&lt;/h1&gt;  &lt;p&gt;Quando eu queria resolver um problema no meu código T-SQL, costumava colocar comandos SELECT ou PRINT no meio das procedures para analisar o valor das variáveis durante a execução. Era possível resolver problemas de código (em geral, problemas de lógica) por esse tipo de análise ou seguindo outras técnicas. &lt;/p&gt;  &lt;p&gt;No novo Management Studio, é possível fazer debug do seu código T-SQL. Você pode colocar breakpoints, executar linha por linha e ter watches para analisar o valor dos seus objetos e de suas variáveis, da mesma forma como faz com o Visual Studio. Este é um grande recurso para aumentar a produtividade dos desenvolvedores e melhorar a qualidade do seu produto. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/07_2.jpg"&gt;&lt;img title="07" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="159" alt="07" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/07_thumb.jpg" width="437" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/08_2.jpg"&gt;&lt;img title="08" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="546" alt="08" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/08_thumb.jpg" width="727" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h1&gt;Procurar Objetos em seu banco de dados (Object Finder)&lt;/h1&gt;  &lt;p&gt;Você tem uma procedure, mas não se lembra o nome dela. Você sabe que ela tem a palavra “Converte” no meio do nome, mas não consegue encontrar ela. Seus problemas estão resolvidos!&lt;/p&gt;  &lt;p&gt;Com o novo SQL Server Management Studio, você pode pesquisar todos os objetos do seu servidor através de um campo de busca, simples. Ele retorna todos os tipos de objetos e aceita sintaxes como LIKE (‘%Texto%’). Agora ficou mais fácil encontrar suas tabelas, colunas, procedures, views, logins e tudo mais.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/05_2.jpg"&gt;&lt;img title="05" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="282" alt="05" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/NovidadesnoSQLServerManagementStudioSSMS_C8B9/05_thumb.jpg" width="871" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h1&gt;Multi-Server Management&lt;/h1&gt;  &lt;p&gt;Faz tempo que temos a habilidade de registrar servidores SQL Server na organização na ferramenta de administração (Enterprise Manager, Management Studio) e termos uma lista organizada destes servidores. Por exemplo: criávamos grupos e, abaixo destes grupos, registrávamos os servidores SQL Server que quiséssemos, para fácil acesso. Acontece que esta lista ficava guardada no Windows Registry e era diferente em todas as estações que você se logava. &lt;/p&gt;  &lt;p&gt;Agora o SQL Server Management Studio permite criar grupos de servidores em um repositório centralizado, chamado de Central Management Servers. Este repositório fica armazenado no MSDB de um servidor que você eleger e qualquer usuário que se conectar a este servidor vai visualizar a mesma lista de servidores disponíveis para administração. A partir deste repositório central você pode realizar as tarefas de administração do SQL Server Database Engine, Analysis Services, Reporting Services, SQL Server Compact e do Integration Services.&lt;/p&gt;  &lt;h1&gt;Consultas em vários servidores&lt;/h1&gt;  &lt;p&gt;A partir dos servidores registrados no seu ambiente centralizado, pode-se disparar uma query ou um comando que vai atingir todos os servidores do seu grupo de uma só vez. Este recurso foi solicitado pelos DBA, pois facilita tarefas repetitivas de administração.&lt;/p&gt;  &lt;h1&gt;Error List Window&lt;/h1&gt;  &lt;p&gt;Quando você executa um comando que retorna um erro no Management Studio, o erro indicava em qual linha estava o erro. Às vezes, você fica procurando o erro e simplesmente não consegue encontrar por ser um problema de digitação simples, ou por não conhecer a sintaxe corretamente. &lt;/p&gt;  &lt;p&gt;A nova Error List Window dá mais detalhes sobre seu erro e a posição dele em seu código, enquanto você digita. Mais uma vez, de forma semelhante ao Visual Studio.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8858834" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Ciclo+de+vida+de+desenvolvimento/default.aspx">Ciclo de vida de desenvolvimento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Desenvolvimento+em+Banco+de+Dados/default.aspx">Desenvolvimento em Banco de Dados</category><category domain="http://blogs.msdn.com/procha/archive/tags/Sem_26002300_226_3B00_ntica/default.aspx">Sem&amp;#226;ntica</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+Management+Studio/default.aspx">SQL Server Management Studio</category><category domain="http://blogs.msdn.com/procha/archive/tags/Debug/default.aspx">Debug</category><category domain="http://blogs.msdn.com/procha/archive/tags/SSMS/default.aspx">SSMS</category><category domain="http://blogs.msdn.com/procha/archive/tags/T-SQL/default.aspx">T-SQL</category><category domain="http://blogs.msdn.com/procha/archive/tags/IntelliSense/default.aspx">IntelliSense</category></item><item><title>Alta Disponibilidade com SQL Server</title><link>http://blogs.msdn.com/procha/archive/2008/03/07/alta-disponibilidade-com-sql-server.aspx</link><pubDate>Fri, 07 Mar 2008 22:24:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8105149</guid><dc:creator>procha</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/procha/comments/8105149.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=8105149</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=8105149</wfw:comment><description>&lt;p&gt;Alta disponibilidade &amp;#233; um assunto obrigat&amp;#243;rio quando falamos em servidores corporativos de banco de dados. Em qualquer segmento do mercado podemos citar exemplos de aplica&amp;#231;&amp;#245;es que n&amp;#227;o podem parar de funcionar: desde o controle de uma balan&amp;#231;a de caminh&amp;#245;es na estrada at&amp;#233; a emiss&amp;#227;o de passagens a&amp;#233;reas. Hospitais s&amp;#227;o um dos exemplos com o qual eu mais gosto de pensar quando falamos em miss&amp;#227;o cr&amp;#237;tica. &lt;/p&gt;  &lt;p&gt;Meu professor de guitarra dizia a alguns anos que eu parecia m&amp;#233;dico, pois, quando eu trabalhava com suporte e precisava fazer plant&amp;#227;o, ficava dispon&amp;#237;vel 24 horas por dia no per&amp;#237;odo de uma semana, que era o meu per&amp;#237;odo de plant&amp;#227;o em um m&amp;#234;s. Mas eu acho que, por maior que seja o preju&amp;#237;zo de um sistema parado, nenhum supera o preju&amp;#237;zo de uma vida perdida ou de um atendimento de emerg&amp;#234;ncia que n&amp;#227;o p&amp;#244;de ser iniciado. Ent&amp;#227;o quem faz miss&amp;#227;o cr&amp;#237;tica mesmo s&amp;#227;o os m&amp;#233;dicos e enfermeiros, n&amp;#227;o n&amp;#243;s, meros geeks da &amp;#225;rea de TI J&lt;/p&gt;  &lt;p&gt;Vamos voltar aos nossos preju&amp;#237;zos por causa de aplica&amp;#231;&amp;#245;es paradas. Os preju&amp;#237;zos podem ser em receita (entrada de pedidos, vendas), em aumento de custos (caminh&amp;#245;es parados, utiliza&amp;#231;&amp;#227;o de processos manuais ou de conting&amp;#234;ncia) e at&amp;#233; mesmo na imagem da empresa (atendimento a clientes, emiss&amp;#227;o de passagens, entrega de produtos), entre outros. O SQL Server oferece diversas alternativas para atingirmos n&amp;#237;veis non-stop de alta disponibilidade. &amp;#201; a abordagem que a Microsoft chama de Always On Technologies. No caso do SQL Server, seja com solu&amp;#231;&amp;#245;es como clusters geogr&amp;#225;ficos ou outras muito simples e baratas como o Database Mirroring, os n&amp;#237;veis alcan&amp;#231;ados de alta disponibilidade atendem as necessidades de neg&amp;#243;cio, independente do tamanho ou complexidade da aplica&amp;#231;&amp;#227;o. Neste post, vamos explorar algumas das alternativas de alta disponibilidade oferecidas pelo SQL Server 2005 e como elas foram melhoradas no SQL Server 2008. M&amp;#227;os a obra. &lt;/p&gt;  &lt;h1&gt;Antes de tudo, porque tantas op&amp;#231;&amp;#245;es?&lt;/h1&gt;  &lt;p&gt;Uma pergunta freq&amp;#252;ente &amp;#233;: porque existem tantas op&amp;#231;&amp;#245;es para resolver o mesmo problema? As diversas op&amp;#231;&amp;#245;es de alta disponibilidade oferecidas pelo SQL Server visam atender a qualquer cen&amp;#225;rio, n&amp;#227;o importa o tamanho da empresa. Seja um banco de dados de 100MB ou de 30TB, uma aplica&amp;#231;&amp;#227;o distribu&amp;#237;da contra uma centralizada, temos uma solu&amp;#231;&amp;#227;o mais apropriada para cada cen&amp;#225;rio. O que se deve fazer &amp;#233; olhar caso a caso e optar pela melhor op&amp;#231;&amp;#227;o. E, porque n&amp;#227;o, utilizar as op&amp;#231;&amp;#245;es de alta disponibilidade combinadas. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1&gt;Database Mirroring&lt;/h1&gt;  &lt;p&gt;O Database Mirroring foi introduzido ao SQL Server 2005 como parte do Service Pack 1. Trata-se de uma tecnologia que permite atingir os maiores n&amp;#237;veis de alta disponibilidade de uma forma muito simples e barata. Ele permite espelhar um banco de dados em outro servidor, aplicando quaisquer altera&amp;#231;&amp;#245;es no banco de dados no servidor principal instantaneamente no servidor de espelho. &lt;/p&gt;  &lt;p&gt;Dependendo da forma como o Database Mirroring for configurado, o failover para o servidor de mirror pode ser autom&amp;#225;tico, sem necessidade de chaveamento manual na aplica&amp;#231;&amp;#227;o. Isto &amp;#233; feito atrav&amp;#233;s da utiliza&amp;#231;&amp;#227;o de um servidor chamado witness (testemunha) que monitora a disponibilidade do servidor principal e &amp;#8220;notifica&amp;#8221; as aplica&amp;#231;&amp;#245;es que se conectam a ele a chavearem para o servidor de mirror. (as aplica&amp;#231;&amp;#245;es procuram pelo witness atrav&amp;#233;s de um par&amp;#226;metro em sua connection string) Muito simples de configurar e manter, tem sido amplamente utilizado no mercado. &lt;/p&gt;  &lt;p&gt;Quanto a desempenho, pode-se configurar se as transa&amp;#231;&amp;#245;es ser&amp;#227;o enviadas em tempo real (de forma s&amp;#237;ncrona) ou com um pequeno atraso (de forma ass&amp;#237;ncrona). Isto permite balancear a carga de rede e de processamento. &lt;/p&gt;  &lt;p&gt;No SQL Server 2008, o Database Mirroring foi melhorado. Ele compacta os dados que s&amp;#227;o enviados entre os servidores, gerando uma carga menor em rede. Al&amp;#233;m disso, a prote&amp;#231;&amp;#227;o dos dados passa a ser feita por p&amp;#225;ginas (pages of data): se uma p&amp;#225;gina estiver corrompida, tanto no servidor principal quanto no mirror, o mecanismo do Database Mirroring toma o cuidado de recuperar a p&amp;#225;gina a partir do outro servidor. &lt;/p&gt;  &lt;p&gt;O que torna o Database Mirroring uma solu&amp;#231;&amp;#227;o barata, afinal de contas? V&amp;#225;rios fatores. Um dos principais &amp;#233; o fato de n&amp;#227;o precisar de hardware espec&amp;#237;fico, como um cluster, por exemplo, que exige um disco compartilhado e hardware para cluster. Outro ponto importante &amp;#233; que se o servidor onde fica o mirror n&amp;#227;o for utilizado para consultas de outras bases de dados (apenas em stand by), n&amp;#227;o &amp;#233; necess&amp;#225;rio pagar a licen&amp;#231;a do SQL Server que est&amp;#225; atuando como mirror. Esta configura&amp;#231;&amp;#227;o &amp;#233; chamada de cold backup. A partir do momento que a instancia de cold backup passa a ser utilizada, ainda que apenas para leitura, se faz necess&amp;#225;rio licenciar tamb&amp;#233;m este servidor. Por&amp;#233;m, no caso de um failover, o servidor de backup pode ficar no ar at&amp;#233; trinta dias no lugar do principal, sem que seja necess&amp;#225;rio pagar a licen&amp;#231;a do cold backup.&lt;/p&gt;  &lt;h1&gt;Log Shipping&lt;/h1&gt;  &lt;p&gt;O Log Shipping &amp;#233; uma tecnologia de alta disponibilidade que aplica logs transacionais em uma c&amp;#243;pia do banco de dados com certa periodicidade, garantindo uma c&amp;#243;pia atualizada do banco de dados na rede. Embora o tempo de atraso entre a aplica&amp;#231;&amp;#227;o destes logs no servidor secund&amp;#225;rio possa resultar em um banco de dados desatualizado no destino, pode-se utilizar a base secund&amp;#225;ria para leitura dos dados e recupera&amp;#231;&amp;#227;o caso ocorra um erro humano na base principal.&lt;/p&gt;  &lt;p&gt;O Log Shipping est&amp;#225; dispon&amp;#237;vel desde vers&amp;#245;es anteriores do SQL Server e tamb&amp;#233;m &amp;#233; utilizado amplamente. &lt;/p&gt;  &lt;h1&gt;Failover Clustering&lt;/h1&gt;  &lt;p&gt;Geralmente o Failover Clustering &amp;#233; a solu&amp;#231;&amp;#227;o mais comum quando falamos em alta disponibilidade. O SQL Server usufrui do servi&amp;#231;o de cluster do Windows Server para garantir alta disponibilidade em caso de falha de hardware. O servi&amp;#231;o de cluster do Windows Server (Microsoft Cluster Service) garante que servi&amp;#231;os hospedados em um servidor sejam movidos a outro em caso de falha de hardware, com queda m&amp;#237;nima no tempo de servi&amp;#231;o (pouco maior do que o Database Mirroring). Esta solu&amp;#231;&amp;#227;o requer hardware espec&amp;#237;fico, sendo esta a principal desvantagem. Os servidores que s&amp;#227;o membros do cluster acessam um mesmo sistema de discos, que &amp;#233; compartilhado entre todos os membros do cluster.&lt;/p&gt;  &lt;p&gt;O cluster &amp;#233; muito simples de se configurar, tendo todos os pr&amp;#233;-requisitos atendidos. Da parte do Windows Server, um simples assistente faz a configura&amp;#231;&amp;#227;o. No caso do SQL Server, durante a instala&amp;#231;&amp;#227;o voc&amp;#234; marca uma op&amp;#231;&amp;#227;o dizendo que ir&amp;#225; &amp;#8220;clusterizar&amp;#8221; recursos como o Database Engine ou o Analysis Services, escolhe os n&amp;#243;s (nodes) do cluster que far&amp;#227;o parte da instala&amp;#231;&amp;#227;o do SQL Server e o programa de instala&amp;#231;&amp;#227;o toma os devidos cuidados. Ao contr&amp;#225;rio do que muitas pessoas pensam, a vers&amp;#227;o Standard do SQL Server 2005 suporta a configura&amp;#231;&amp;#227;o de cluster de dois n&amp;#243;s (nodes).&lt;/p&gt;  &lt;p&gt;A principal novidade no SQL Server 2008 &amp;#233; o fato de n&amp;#227;o precisar de um drive l&amp;#243;gico para cada inst&amp;#226;ncia SQL no cluster: agora v&amp;#225;rias inst&amp;#226;ncias podem utilizar um mesmo drive l&amp;#243;gico (&amp;#8220;G:&amp;#8220;, por exemplo), o que dever&amp;#225; viabilizar mais a instala&amp;#231;&amp;#227;o de m&amp;#250;ltiplas inst&amp;#226;ncias SQL Server em um mesmo cluster. Al&amp;#233;m disto, agora ser&amp;#225; poss&amp;#237;vel suportar 16 n&amp;#243;s (nodes) em um cluster, mas este &amp;#233; na verdade um benef&amp;#237;cio do Windows Server 2008. &lt;/p&gt;  &lt;h1&gt;Geographically Dispersed Failover Clustering&lt;/h1&gt;  &lt;p&gt;Imagine um cluster separado fisicamente, com replica&amp;#231;&amp;#227;o de storage. Isto &amp;#233; o Geographically Dispersed Failover Clustering. A grande vantagem dele sobre o cluster comum &amp;#233; exatamente a caracter&amp;#237;stica de replica&amp;#231;&amp;#227;o do storage, que elimina um ponto de falha na solu&amp;#231;&amp;#227;o. Na eventual falha do sistema de discos de um dos n&amp;#243;s, todo o controle &amp;#233; cedido ao servidor secund&amp;#225;rio, que tem uma r&amp;#233;plica dos dados. &lt;/p&gt;  &lt;h1&gt;Peer-to-Peer Replication&lt;/h1&gt;  &lt;p&gt;Entre os v&amp;#225;rios modelos de replica&amp;#231;&amp;#227;o do SQL Server, talvez este seja o que melhor se aplica ao tema alta disponibilidade. A replica&amp;#231;&amp;#227;o Peer-To-Peer permite que os dados sejam replicados entre dois ou mais servidores, n&amp;#227;o importa onde as altera&amp;#231;&amp;#245;es ou inser&amp;#231;&amp;#245;es est&amp;#227;o sendo feitas. Para este cen&amp;#225;rio, no entanto, as aplica&amp;#231;&amp;#245;es precisam ser desenhadas de modo que sejam direcionadas a um dos servidores em espec&amp;#237;fico, j&amp;#225; que o SQL Server n&amp;#227;o faz resolu&amp;#231;&amp;#227;o de conflitos (para isto, veja merge replication). Esta solu&amp;#231;&amp;#227;o &amp;#233; especialmente apropriada quando falamos em servidores que est&amp;#227;o separados por dist&amp;#226;ncias maiores. &lt;/p&gt;  &lt;p&gt;At&amp;#233; o SQL Server 2005, o processo de replica&amp;#231;&amp;#227;o precisava ser interrompido caso houvesse a necessidade de adicionar um servidor a topologia de replica&amp;#231;&amp;#227;o. No SQL Server 2008, no entanto, este n&amp;#227;o &amp;#233; o caso: servidores podem ser adicionados &amp;#224; topologia de replica&amp;#231;&amp;#227;o sem parada da replica&amp;#231;&amp;#227;o.&lt;/p&gt;  &lt;h1&gt;Downtime Reduzido &lt;/h1&gt;  &lt;p&gt;Al&amp;#233;m das tecnologias citadas acima, v&amp;#225;rios recursos internos do SQL Server permitem uma maior disponibilidade do sistema. Alguns deles s&amp;#227;o:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Fast Database Recovery: &lt;/strong&gt;disponibiliza parcialmente os bancos de dados durante o processo de recovery (enquanto faz rollback de algumas transa&amp;#231;&amp;#245;es, por exemplo) , durante o failover em Database Mirroring e em processos de restore. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Backup and Restore: &lt;/strong&gt;o processo de backup e restore permite que voc&amp;#234; fa&amp;#231;a c&amp;#243;pias em v&amp;#225;rias unidades de fita, por exemplo, (tamb&amp;#233;m pode ser em disco) para ajudar em casos de perda ou de comprometimento da m&amp;#237;dia de backup. O SQL Server tamb&amp;#233;m gera checksums para poder fazer verifica&amp;#231;&amp;#245;es na fase de restore. No SQL Server 2008 a novidade &amp;#233; poder fazer backup comprimidos, que podem reduzir o n&amp;#250;mero de fitas necess&amp;#225;rias para o backup significativamente. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Checksum on Data Pages: &lt;/strong&gt;compara os valores escritos no disco aos valores lidos do checksum (aplicando-se um algoritmo de verifica&amp;#231;&amp;#227;o). Se n&amp;#227;o coincidirem, a p&amp;#225;gina &amp;#233; marcada como suspect e precisa ser restaurada.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Online Index Operations: &lt;/strong&gt;outro dia falei sobre isto em um cliente e ele disse: &amp;#8220;-O SQL Server realmente faz isso?&amp;#8221;. Faz sim!Desde o SQL Server 2005, &amp;#233; poss&amp;#237;vel fazer manuten&amp;#231;&amp;#227;o em &amp;#237;ndices sem afetar a disponibilidade.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Online Piecemeal and Page-Level Restore:&lt;/strong&gt; no SQL Server 2008, permite que se fa&amp;#231;a o restore dos filegroups por partes, deixando dispon&amp;#237;veis os dados j&amp;#225; restaurados. Tamb&amp;#233;m permite que se fa&amp;#231;a o restore de p&amp;#225;ginas corrompidas. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Partial Database Availability:&lt;/strong&gt; deixa um banco de dados dispon&amp;#237;vel mesmo se parte dele estiver comprometida (por falha em um disco, por exemplo)&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Snapshot Isolation: &lt;/strong&gt;garante que registros sejam lidos mesmo durante altera&amp;#231;&amp;#227;o dos dados, a partir da visualiza&amp;#231;&amp;#227;o de vers&amp;#245;es de uma linha. Aumenta a disponibilidade pelo fato de reduzir os tempos de lock substancialmente. Eu considero este um dos principais benef&amp;#237;cios do database engine do SQL Server 2005 em rela&amp;#231;&amp;#227;o a vers&amp;#245;es anteriores.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Dynamic Configuration:&lt;/strong&gt; possibilidade de fazer upgrade de hardware sem parar o servi&amp;#231;o. Como um exemplo, adicione mem&amp;#243;ria em um servidor ligado (desde que o hardware d&amp;#234; suporte a isto) e disponibilize esta mem&amp;#243;ria para o SQL Server sem parar o servidor. No SQL Server 2008, a novidade &amp;#233; o suporte a adi&amp;#231;&amp;#227;o de processadores sem parar o servidor. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Perceba que alguns destes recursos est&amp;#227;o dispon&amp;#237;veis apenas na edi&amp;#231;&amp;#227;o Enterprise do SQL Server. Para uma tabela comparativa entre as diferentes edi&amp;#231;&amp;#245;es visite &lt;a href="http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx"&gt;http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Outro fator importante que precisa ser lembrado &amp;#233; que o SQL Server oferece todos os recursos citados acima out-of-box. N&amp;#227;o &amp;#233; necess&amp;#225;rio pagar nada a mais para ter o Database Mirroring ou o Failover Cluster, por exemplo. &lt;/p&gt;  &lt;h1&gt;Conclus&amp;#227;o&lt;/h1&gt;  &lt;p&gt;O SQL Server oferece diversas solu&amp;#231;&amp;#245;es para atingir n&amp;#237;veis de alta disponibilidade. Embora sejam solu&amp;#231;&amp;#245;es individuais e auto-suficientes (n&amp;#227;o dependem necessariamente uma da outra), elas podem ser utilizadas em conjunto para atingir maiores n&amp;#237;veis de alta disponibilidade, como no cen&amp;#225;rio abaixo:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="889" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="279"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;strong&gt;Database Mirroing:&lt;/strong&gt; site prim&amp;#225;rio de disastre&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Log Shipping:&lt;/strong&gt; sites adicionais para disastre e recovery l&amp;#243;gico (altera&amp;#231;&amp;#245;es n&amp;#227;o desejadas)&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Replica&amp;#231;&amp;#227;o:&lt;/strong&gt; relat&amp;#243;rios e escalabilidade para leitura, com redund&amp;#226;ncia&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Clustering: &lt;/strong&gt;redund&amp;#226;ncia de servidor&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Backup&lt;/strong&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="608"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/AltaDisponibilidadecomSQLServer_E4F5/image_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="570" alt="image" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/AltaDisponibilidadecomSQLServer_E4F5/image_thumb_1.png" width="513" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;N&amp;#227;o importa o tamanho do seu neg&amp;#243;cio ou a complexidade da sua aplica&amp;#231;&amp;#227;o: O SQL Server &amp;#233; o servidor de banco de dados ideal para atingir alta disponibilidade com baixos custos. &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8105149" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Alta+disponibilidade/default.aspx">Alta disponibilidade</category><category domain="http://blogs.msdn.com/procha/archive/tags/Database+Mirroring/default.aspx">Database Mirroring</category><category domain="http://blogs.msdn.com/procha/archive/tags/Failover+Clustering/default.aspx">Failover Clustering</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+backup/default.aspx">SQL Server backup</category><category domain="http://blogs.msdn.com/procha/archive/tags/Cluster/default.aspx">Cluster</category><category domain="http://blogs.msdn.com/procha/archive/tags/Log+Shipping/default.aspx">Log Shipping</category><category domain="http://blogs.msdn.com/procha/archive/tags/Peer-To-Peer+Replication/default.aspx">Peer-To-Peer Replication</category></item><item><title>Resource Governor: maior controle sobre seu servidor</title><link>http://blogs.msdn.com/procha/archive/2008/01/28/resource-governor-maior-controle-sobre-seu-servidor.aspx</link><pubDate>Mon, 28 Jan 2008 21:41:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7291280</guid><dc:creator>procha</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/procha/comments/7291280.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=7291280</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=7291280</wfw:comment><description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;Quantas vezes eu ouvi administradores reclamarem que seus desenvolvedores fazem queries &amp;quot;assassinas&amp;quot;, que derrubam todo o servidor. Muitas vezes. Algumas solu&amp;#231;&amp;#245;es atuais como particionamento e at&amp;#233; o &lt;a href="http://www.microsoft.com/technet/prodtechnol/sql/2005/dbmirror.mspx" target="_blank"&gt;Database Mirroring&lt;/a&gt; atendem a demandas de queries que consomem mais recursos de hardware sem afetar o restante do sistema, mas estas solu&amp;#231;&amp;#245;es em geral requerem um servidor adicional e copiar o banco de dados com queries &amp;quot;pesadas&amp;quot; para uma outra localidade. &lt;/p&gt;  &lt;p&gt;Agora ser&amp;#225; poss&amp;#237;vel limitar os recursos de hardware que ser&amp;#227;o alocados para um banco de dados em espec&amp;#237;fico - imagine poder reservar 20% do seu processador e 35% da sua mem&amp;#243;ria para um banco de dados e garantir que o restante estar&amp;#225; reservado para os outros bancos de dados: isto &amp;#233; o Resource Governor. &lt;/p&gt;  &lt;h3&gt;Defini&amp;#231;&amp;#227;o&lt;/h3&gt;  &lt;p&gt;O Resource Governor &amp;#233; uma nova tecnologia presente no SQL Server 2008 que permite aos administradores gerenciar a carga e os recursos do SQL Server 2008. Ele faz isso atrav&amp;#233;s de pol&amp;#237;ticas de limite de consumo de recursos (ufa). &amp;#201; poss&amp;#237;vel criar grupos (workloads) com perfis de utiliza&amp;#231;&amp;#227;o de hardware, como &amp;quot;Queries de Alta Prioridade&amp;quot; ou &amp;quot;Queries Menos Importantes&amp;quot; e atribuir a estes workloads crit&amp;#233;rios de consumo de processador e mem&amp;#243;ria. Ele n&amp;#227;o apenas &amp;#233; importante para limitar a utiliza&amp;#231;&amp;#227;o de processador e mem&amp;#243;ria em queries que j&amp;#225; conhecemos, mas tamb&amp;#233;m para garantir que queries com comportamento desconhecido se comportem de forma que n&amp;#227;o comprometam o restante da opera&amp;#231;&amp;#227;o do servidor. Ou seja: n&amp;#227;o apenas podemos definir o que conhecemos por priorit&amp;#225;rio, mas tamb&amp;#233;m queries (ou requisi&amp;#231;&amp;#245;es) que nos pegam de surpresa.&lt;/p&gt;  &lt;h3&gt;Conceitos&lt;/h3&gt;  &lt;p&gt;Quando falamos em Resource Governor, os seguintes termos precisam ser entendidos:&lt;/p&gt;  &lt;h4&gt;Resource Pools&lt;/h4&gt;  &lt;p&gt;Trata-se de um pool que representa os recursos f&amp;#237;sicos de um servidor. Ao criar um Resource Pool (por padr&amp;#227;o, o SQL Server 2008 instala um default e um system pool), pode-se especificar um valor m&amp;#237;nimo GARANTIDO e m&amp;#225;ximo de reserva de CPU e de mem&amp;#243;ria. Voc&amp;#234; pode criar tantos pools quanto achar necess&amp;#225;rio, mas a soma dos valores m&amp;#237;nimos de cada pool n&amp;#227;o podem exceder 100% dos recursos dispon&amp;#237;veis (ex.: n&amp;#227;o posso ter um pool que reserva m&amp;#237;nimo de 60% de CPU e outro que reserva m&amp;#237;nimo de 50%). O valor m&amp;#225;ximo pode ser qualquer valor entre o m&amp;#237;nimo e 100%. Conforme os pools s&amp;#227;o criados, o SQL Server calcula o valor real reservado para cada um dos pools. Por exemplo:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="2" width="913" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="97"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;Nome do Pool&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="87"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;MIN %&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="79"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;MAX %&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="124"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;Efetivo (Calculado) MAX %&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="151"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;Calculado (compartilhado)%&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="373"&gt;         &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;Como o c&amp;#225;lculo &amp;#233; feito&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="97"&gt;         &lt;p align="center"&gt;internal&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="86"&gt;         &lt;p align="center"&gt;0&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="80"&gt;         &lt;p align="center"&gt;100&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="126"&gt;         &lt;p align="center"&gt;100&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="155"&gt;         &lt;p align="center"&gt;0&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="373"&gt;&amp;#160;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="96"&gt;         &lt;p align="center"&gt;default&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="86"&gt;         &lt;p align="center"&gt;0&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="80"&gt;         &lt;p align="center"&gt;100&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="127"&gt;         &lt;p align="center"&gt;30&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="159"&gt;         &lt;p align="center"&gt;30&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="373"&gt;         &lt;p&gt;Efetivo (MAX): min(100,100-(20+50)) = 30.            &lt;br /&gt;Compartilhado: MAX (Efetivo) - MIN = 30.&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="95"&gt;         &lt;p align="center"&gt;Pool 1&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="86"&gt;         &lt;p align="center"&gt;20&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="80"&gt;         &lt;p align="center"&gt;100&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="128"&gt;         &lt;p align="center"&gt;50&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="162"&gt;         &lt;p align="center"&gt;30&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="373"&gt;         &lt;p&gt;Efetivo (MAX): min(100,100-50) = 50.            &lt;br /&gt;Compartilhado: MAX (Efetivo) - MIN = 30.&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="96"&gt;         &lt;p align="center"&gt;Pool 2&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="85"&gt;         &lt;p align="center"&gt;50&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="79"&gt;         &lt;p align="center"&gt;70&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="128"&gt;         &lt;p align="center"&gt;70&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="165"&gt;         &lt;p align="center"&gt;20&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="373"&gt;         &lt;p&gt;Efetivo (MAX): min(70,100-20) = 70.            &lt;br /&gt;Compartilhado: MAX (Efetivo) - MIN = 20.&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;Se outros pools forem criados, os valores efetivos e compartilhados seriam recalculados, de acordo com o requerimento m&amp;#237;nimo do novo pool.&lt;/p&gt;  &lt;h4&gt;Workload Groups&lt;/h4&gt;  &lt;p&gt;Os Workload Groups s&amp;#227;o containers que agrupam requisi&amp;#231;&amp;#245;es que tem algo em comum. &lt;/p&gt;  &lt;h4&gt;Classification&lt;/h4&gt;  &lt;p&gt;Utilizamos Classifications para identificar sess&amp;#245;es abertas ao SQL Server 2008 e atribu&amp;#237;-las a Workload Groups. S&amp;#227;o criadas fun&amp;#231;&amp;#245;es que analisam um crit&amp;#233;rio e estas fun&amp;#231;&amp;#245;es s&amp;#227;o executadas em TODAS as conex&amp;#245;es abertas ao SQL Server para que o encaminhamento seja feito. Veremos mais a frente como a classifica&amp;#231;&amp;#227;o &amp;#233; feita (o que &amp;#233; avaliado no instante da conex&amp;#227;o).&lt;/p&gt;  &lt;h3&gt;Como utilizar e exemplos&lt;/h3&gt;  &lt;p&gt;Recomendo fortemente que voc&amp;#234; comece a testar o Resource Governor e se familiarizar com sua configura&amp;#231;&amp;#227;o. Veremos aqui que &amp;#233; bastante simples habilitar e come&amp;#231;ar a criar seus Resource Pools.&lt;/p&gt;  &lt;h4&gt;Habilitar e Desabilitar o Resource Governor&lt;/h4&gt;  &lt;p&gt;Para habilitar ou desabilitar, simplesmente abra o SQL Server Management Studio, expanda Management e clique com o bot&amp;#227;o direito em Resource Governor, como na figura abaixo. Selecione Enable ou Disable (respectivamente).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg1_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="441" alt="rg1" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg1_thumb.jpg" width="378" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;Configurar Resource Pools e Workload Groups&lt;/h4&gt;  &lt;p&gt;Ao clicar com o bot&amp;#227;o direito do mouse sobre o Resource Governor e selecionando properties, a janela da figura abaixo &amp;#233; exibida. Ela tamb&amp;#233;m ser&amp;#225; exibida se clicarmos em &amp;quot;New Resource Pool&amp;quot;. Perceba que a lista de Workload groups for resource pool (itens do grid de baixo) exibe apenas os Workload Groups do Resource Pool selecionado&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg2_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="510" alt="rg2" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg2_thumb.jpg" width="774" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;h4&gt;Classificar as conex&amp;#245;es e utilizar os pools corretos&lt;/h4&gt;  &lt;p&gt;O c&amp;#243;digo abaixo cria uma fun&amp;#231;&amp;#227;o que avalia o nome do usu&amp;#225;rio conectado e a aplica&amp;#231;&amp;#227;o de origem e registra esta fun&amp;#231;&amp;#227;o com o Resource Governor:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;&lt;font color="#0000ff"&gt;CREATE FUNCTION&lt;/font&gt; rgclassifier_v1() RETURNS SYSNAME       &lt;br /&gt;&lt;font color="#0000ff"&gt;WITH&lt;/font&gt; SCHEMABINDING      &lt;br /&gt;&lt;font color="#0000ff"&gt;AS       &lt;br /&gt;BEGIN        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; DECLARE&lt;/font&gt; @grp_name &lt;font color="#0000ff"&gt;AS&lt;/font&gt; SYSNAME      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;IF&lt;/font&gt; (SUSER_NAME() = &lt;font color="#ff0000"&gt;'sa'&lt;/font&gt;)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;SET&lt;/font&gt; @grp_name = &lt;font color="#ff0000"&gt;'groupAdmin'&lt;/font&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;IF&lt;/font&gt; (APP_NAME() &lt;font color="#0000ff"&gt;LIKE&lt;/font&gt; &lt;font color="#ff0000"&gt;'%MANAGEMENT STUDIO%'&lt;/font&gt;)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;OR&lt;/font&gt; (APP_NAME() &lt;font color="#0000ff"&gt;LIKE&lt;/font&gt; &lt;font color="#ff0000"&gt;'%QUERY ANALYZER%'&lt;/font&gt;)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;SET&lt;/font&gt; @grp_name = &lt;font color="#ff0000"&gt;'groupAdhoc'&lt;/font&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;IF&lt;/font&gt; (APP_NAME() &lt;font color="#0000ff"&gt;LIKE&lt;/font&gt; &lt;font color="#ff0000"&gt;'%REPORT SERVER%'&lt;/font&gt;)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;SET&lt;/font&gt; @grp_name = &lt;font color="#ff0000"&gt;'groupReports'&lt;/font&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;RETURN&lt;/font&gt; @grp_name      &lt;br /&gt;&lt;font color="#0000ff"&gt;END       &lt;br /&gt;GO&lt;/font&gt;      &lt;br /&gt;&lt;font color="#008000"&gt;--Registra a fun&amp;#231;&amp;#227;o com o Resource Governor&lt;/font&gt;      &lt;br /&gt;&lt;font color="#0000ff"&gt;ALTER RESOURCE GOVERNOR WITH&lt;/font&gt; (CLASSIFIER_FUNCTION= dbo.rgclassifier_v1)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Perceba que o Resource Governor registrou a fun&amp;#231;&amp;#227;o&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg3_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="412" alt="rg3" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/ResourceGovernormaiorcontrolesobreseuser_EA65/rg3_thumb.jpg" width="697" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Conclus&amp;#227;o&lt;/h3&gt;  &lt;p&gt;As possibilidades s&amp;#227;o infinitas. O maior desafio vai ser definir os Resource Pools e a classifica&amp;#231;&amp;#227;o das conex&amp;#245;es. O Resource Governor resolve de forma muito simples (gr&amp;#225;fica, embora tudo possa ser feito por T-SQL) uma necessidade importante dos administradores SQL Server. Os exemplos acima s&amp;#227;o superficiais e refletem o estado do SQL Server 2008 CTP5. &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7291280" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category><category domain="http://blogs.msdn.com/procha/archive/tags/Resource+Governor/default.aspx">Resource Governor</category></item><item><title>Declarative Management Framework</title><link>http://blogs.msdn.com/procha/archive/2008/01/21/declarative-management-framework.aspx</link><pubDate>Mon, 21 Jan 2008 22:25:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7187230</guid><dc:creator>procha</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/procha/comments/7187230.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=7187230</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=7187230</wfw:comment><description>&lt;p&gt;Um dos recursos mais aguardados do SQL Server 2008 para os administradores &amp;#233; o &lt;b&gt;Declarative Management Framework&lt;/b&gt;. Trata-se de um sistema de gerenciamento baseado em pol&amp;#237;ticas que, atrav&amp;#233;s de objetos reutiliz&amp;#225;veis, permite que se configure o SQL Server e seus componentes em ader&amp;#234;ncia a pol&amp;#237;ticas de governan&amp;#231;a das empresas. Por exemplo: digamos que a pol&amp;#237;tica de uma empresa define que o &lt;i&gt;Database Mail&lt;/i&gt; n&amp;#227;o deve estar habilitado em um grupo de servidores SQL Server, ou que todas as tabelas criadas em um banco de dados n&amp;#227;o podem pertencer ao &lt;i&gt;schema &lt;/i&gt;dbo &amp;#8211; ou ainda melhor, que todas as tabelas precisem seguir um padr&amp;#227;o de nomenclatura. O &lt;b&gt;Declarative Management Framework&lt;/b&gt; ajuda os administradores a chegar a este n&amp;#237;vel de granularidade na administra&amp;#231;&amp;#227;o de seus servidores. Vamos falar sobre alguns conceitos chave do &lt;b&gt;Declarative Management Framework&lt;/b&gt; e em seguida para um exemplo r&amp;#225;pido. &lt;/p&gt;  &lt;p&gt;O SQL Server Management Studio &amp;#233; a ferramenta utilizada para trabalhar com o &lt;b&gt;Declarative Management Framework&lt;/b&gt;. Pode-se criar pol&amp;#237;ticas para &lt;b&gt;prevenir&lt;/b&gt; mudan&amp;#231;as que violem as suas normas, &lt;b&gt;alertar e logar&lt;/b&gt; mas permitir a mudan&amp;#231;a, e pode-se &lt;b&gt;agendar&lt;/b&gt; a verifica&amp;#231;&amp;#227;o de ader&amp;#234;ncia a pol&amp;#237;ticas (neste caso, quaisquer exemplos n&amp;#227;o-aderentes s&amp;#227;o tamb&amp;#233;m apenas logados). Imagine se seu sistema pudesse enviar uma mensagem ao desenvolvedor ou administrador quando estes tentam criar objetos com nomes que n&amp;#227;o sigam a conven&amp;#231;&amp;#227;o imposta pela sua empresa, dizendo como deve ser o nome correto &amp;#8211; as pol&amp;#237;ticas do &lt;b&gt;Declarative Management Framework&lt;/b&gt; tamb&amp;#233;m permitem isto. Vamos ent&amp;#227;o aos principais conceitos do &lt;b&gt;Declarative Management Framework&lt;/b&gt;:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#183; &lt;b&gt;Facets&lt;/b&gt; &amp;#8211; s&amp;#227;o objetos que cont&amp;#233;m propriedades que exp&amp;#245;e uma &amp;#225;rea gerenci&amp;#225;vel. Por exemplo, a &lt;i&gt;facet&lt;/i&gt; &lt;b&gt;Surface Area&lt;/b&gt; inclui propriedades que s&amp;#227;o relacionadas aos recursos do SQL Server como &lt;i&gt;Database Mail Enabled&lt;/i&gt;, e &lt;i&gt;CLR Integration Enabled&lt;/i&gt;; &lt;/p&gt;    &lt;p&gt;&amp;#183; &lt;b&gt;Conditions&lt;/b&gt; &amp;#8211; expressam o estado de uma &lt;i&gt;facet&lt;/i&gt;. Por exemplo: pode-se criar uma condi&amp;#231;&amp;#227;o chamada &amp;#8220;&amp;#193;rea de Ataque Reduzida&amp;#8221; onde todas as propriedades da &lt;i&gt;facet&lt;/i&gt; &lt;b&gt;Surface Area&lt;/b&gt; s&amp;#227;o definidas como &lt;i&gt;False&lt;/i&gt;; &lt;/p&gt;    &lt;p&gt;&amp;#183; &lt;b&gt;Policies&lt;/b&gt; &amp;#8211; aplica uma condi&amp;#231;&amp;#227;o em um ou mais &lt;i&gt;Targets&lt;/i&gt; (definido mais adiante). Como um exemplo, pode-se criar uma p&lt;i&gt;olicy&lt;/i&gt; chamada &amp;#8220;Servidores Protegidos&amp;#8221; que aplica a condi&amp;#231;&amp;#227;o &amp;#8220;Area de Ataque Reduzida&amp;#8221; a um servidor;&lt;/p&gt;    &lt;p&gt;&amp;#183; &lt;b&gt;Categories&lt;/b&gt; &amp;#8211; &amp;#233; um agrupamento de p&lt;i&gt;olicies&lt;/i&gt;. Digamos que se criem diversas &lt;i&gt;policies&lt;/i&gt; com exig&amp;#234;ncias em bancos de dados novos, como padr&amp;#245;es de nome de tabelas ou &lt;i&gt;stored procedures&lt;/i&gt;, exig&amp;#234;ncia sobre o &lt;i&gt;Compatibility Level&lt;/i&gt; do banco de dados ou outros. Pode-se atribuir os bancos de dados a &lt;i&gt;Categories&lt;/i&gt; para que eles sejam aderentes a um conjunto de &lt;i&gt;policies&lt;/i&gt;. Por padr&amp;#227;o, todos os bancos de dados pertencem a &lt;i&gt;default category&lt;/i&gt;. &lt;/p&gt;    &lt;p&gt;&amp;#183; &lt;b&gt;Targets&lt;/b&gt; &amp;#8211; s&amp;#227;o entidades como servidores, bancos de dados, &lt;i&gt;logins&lt;/i&gt;, tabelas ou qualquer outro objeto sobre os quais se aplica uma &lt;i&gt;policy&lt;/i&gt;. Pode tamb&amp;#233;m ser uma hierarquia, como &amp;#8220;Todos os Objetos do Schema &amp;#8216;Produtos&amp;#8217;&amp;#8221;. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Para definir uma pol&amp;#237;tica (&lt;i&gt;policy&lt;/i&gt;), simplesmente especifique a condi&amp;#231;&amp;#227;o (c&lt;i&gt;ondition&lt;/i&gt;) que voc&amp;#234; quer aplicar e selecione uma &lt;i&gt;facet&lt;/i&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#201; importante o entendimento destes conceitos para que se possa fazer o melhor uso do &lt;b&gt;Declarative Management Framework&lt;/b&gt;. Este sistema viabiliza de uma forma muito f&amp;#225;cil a re-utiliza&amp;#231;&amp;#227;o de qualquer regra, condi&amp;#231;&amp;#227;o ou objeto definido em uma pol&amp;#237;tica. O SQL Server 2008 j&amp;#225; vem com uma s&amp;#233;rie de &lt;i&gt;facets&lt;/i&gt; pr&amp;#233;-definidas que voc&amp;#234; pode utilizar para configurar seus servidores. A&amp;#237; v&amp;#227;o alguns exemplos de utiliza&amp;#231;&amp;#227;o das &lt;i&gt;facets&lt;/i&gt; que j&amp;#225; vem com o produto e um cen&amp;#225;rio onde voc&amp;#234; pode utiliz&amp;#225;-la:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#183; A Facet &lt;b&gt;Server&lt;/b&gt; pode ser utilizada para for&amp;#231;ar configura&amp;#231;&amp;#245;es espec&amp;#237;ficas do n&amp;#237;vel do servidor, como o modo de autentica&amp;#231;&amp;#227;o;&lt;/p&gt;    &lt;p&gt;&amp;#183; A Facet &lt;b&gt;Surface Area&lt;/b&gt; pode ser utilizada para controlar quais recursos est&amp;#227;o habilitados a fim de se reduzir a &amp;#225;rea de ataque;&lt;/p&gt;    &lt;p&gt;&amp;#183; A Facet &lt;b&gt;Database&lt;/b&gt; pode ser utilizada para restringir configura&amp;#231;&amp;#245;es espec&amp;#237;ficas de um banco de dados, como o &lt;i&gt;Compatibility Level&lt;/i&gt;;&lt;/p&gt;    &lt;p&gt;&amp;#183; A Facet &lt;b&gt;Multipart Name&lt;/b&gt; ajuda a garantir a ader&amp;#234;ncia de nomenclatura dos objetos dos bancos de dados como tabelas, &lt;i&gt;views&lt;/i&gt; e &lt;i&gt;stored procedures&lt;/i&gt;.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Nunca &amp;#233; demais lembrar que uma &lt;i&gt;category&lt;/i&gt; pode ser publicada para outros servidores em seu ambiente, o que reduz drasticamente o esfor&amp;#231;o de administra&amp;#231;&amp;#227;o e a possibilidade de se ter servidores com pol&amp;#237;ticas diferentes. &lt;/p&gt;  &lt;h4&gt;Exemplos de Utiliza&amp;#231;&amp;#227;o&lt;/h4&gt;  &lt;p&gt;Tendo falado sobre os conceitos do&lt;b&gt; Declarative Management Framework&lt;/b&gt;, vamos um exemplo passo a passo de utiliza&amp;#231;&amp;#227;o das pol&amp;#237;ticas. Este exemplo verifica se o servidor est&amp;#225; configurado para permitir a utiliza&amp;#231;&amp;#227;o do CLR (&lt;i&gt;Common Language Runtime&lt;/i&gt;) e de &lt;i&gt;queries Ad Hoc&lt;/i&gt;. Para isto, siga os seguintes passos:&lt;/p&gt;  &lt;p&gt;1) Abra o SQL Server Management Studio. No Object Explorer, clique em &lt;b&gt;&lt;i&gt;Management -&amp;gt; Policy Management -&amp;gt; Facets&lt;/i&gt;&lt;/b&gt;. Aqui voc&amp;#234; j&amp;#225; pode visualizar todas as &lt;i&gt;facets&lt;/i&gt; que foram criadas e as que o SQL Server 2008 traz por padr&amp;#227;o. Para este exemplo, clique com o bot&amp;#227;o direito na &lt;i&gt;facet&lt;/i&gt; &lt;b&gt;&lt;i&gt;Surface Area Configuration&lt;/i&gt;&lt;/b&gt; e clique em &lt;b&gt;&lt;i&gt;New Condition&lt;/i&gt;&lt;/b&gt;;&lt;/p&gt;  &lt;p&gt;2) Na caixa &lt;b&gt;&lt;i&gt;Name&lt;/i&gt;&lt;/b&gt;, digite &lt;b&gt;&amp;#8220;Area de Ataque Reduzida&amp;#8221;&lt;/b&gt; ou o nome que preferir. Perceba que a caixa &lt;b&gt;&lt;i&gt;Facet&lt;/i&gt;&lt;/b&gt; j&amp;#225; mostra &lt;b&gt;&amp;#8220;Surface Area Configuration&amp;#8221;&lt;/b&gt;;&lt;/p&gt;  &lt;p&gt;3) Em &lt;b&gt;&lt;i&gt;Expression&lt;/i&gt;&lt;/b&gt;, no campo &lt;b&gt;&lt;i&gt;Field&lt;/i&gt;&lt;/b&gt;, selecione &lt;b&gt;&lt;i&gt;&amp;#8221;@ClrIntegrationEnabled&amp;#8221;&lt;/i&gt;&lt;/b&gt;. Em &lt;b&gt;&lt;i&gt;Operator&lt;/i&gt;&lt;/b&gt;, selecione &lt;b&gt;&lt;i&gt;&amp;#8220;=&amp;#8221;&lt;/i&gt;&lt;/b&gt; e em &lt;b&gt;&lt;i&gt;Value &amp;#8220;False&amp;#8221;&lt;/i&gt;&lt;/b&gt;;&lt;/p&gt;  &lt;p&gt;4) Na linha seguinte, em &lt;b&gt;&lt;i&gt;Field&lt;/i&gt;&lt;/b&gt; selecione &lt;b&gt;&lt;i&gt;&amp;#8221;@AdHocRemoteQueriesEnabled&amp;#8221;&lt;/i&gt;&lt;/b&gt;. Em &lt;b&gt;&lt;i&gt;Operator&lt;/i&gt;&lt;/b&gt;, selecione &lt;b&gt;&lt;i&gt;&amp;#8220;=&amp;#8221;&lt;/i&gt;&lt;/b&gt; e em &lt;b&gt;&lt;i&gt;Value, &amp;#8220;False&amp;#8221;&lt;/i&gt;&lt;/b&gt;. A janela deve ficar como ilustrado na figura abaixo. At&amp;#233; aqui, criamos uma condi&amp;#231;&amp;#227;o sobre uma &lt;i&gt;facet&lt;/i&gt;;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig1_2.jpg"&gt;&lt;img height="335" alt="080121-fig1" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig1_thumb.jpg" width="640" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;5) Para criar a pol&amp;#237;tica, clique com o bot&amp;#227;o direito novamente em &lt;b&gt;&lt;i&gt;Surface Area Configuration&lt;/i&gt;&lt;/b&gt; e clique em &lt;b&gt;&lt;i&gt;New Policy&lt;/i&gt;&lt;/b&gt;;&lt;/p&gt;  &lt;p&gt;6) No campo &lt;b&gt;&lt;i&gt;Name&lt;/i&gt;&lt;/b&gt;, digite &lt;b&gt;&lt;i&gt;&amp;#8220;Desativados por padr&amp;#227;o&amp;#8221;&lt;/i&gt;&lt;/b&gt;. Na caixa &lt;b&gt;&lt;i&gt;Check Condition&lt;/i&gt;&lt;/b&gt;, selecione &lt;b&gt;&amp;#8220;Area de Ataque Reduzida&amp;#8221;&lt;/b&gt; (que est&amp;#225; sob &lt;b&gt;&lt;i&gt;&amp;#8220;Surface Area Configuration&amp;#8221;&lt;/i&gt;&lt;/b&gt;&lt;i&gt;)&lt;/i&gt;;&lt;/p&gt;  &lt;p&gt;7) Clique na &lt;i&gt;tab&lt;/i&gt; &lt;b&gt;&lt;i&gt;Description&lt;/i&gt;&lt;/b&gt;. Em &lt;b&gt;&lt;i&gt;Category&lt;/i&gt;&lt;/b&gt;, clique em &lt;b&gt;&lt;i&gt;New&lt;/i&gt;&lt;/b&gt;. Digite &lt;b&gt;&lt;i&gt;&amp;#8220;Servidores com configura&amp;#231;&amp;#227;o restrita&amp;#8221;&lt;/i&gt;&lt;/b&gt; e clique em Ok. Digite uma descri&amp;#231;&amp;#227;o para esta categoria, como preferir &amp;#8211; estas informa&amp;#231;&amp;#245;es estar&amp;#227;o dispon&amp;#237;veis aos administradores quando a pol&amp;#237;tica for violada. Clique em OK.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTA: &lt;/strong&gt;Perceba que esta pol&amp;#237;tica ser&amp;#225; utilizada sob demanda. Voc&amp;#234; poderia tamb&amp;#233;m habilitar a caixa &lt;b&gt;&lt;i&gt;Enabled&lt;/i&gt;&lt;/b&gt; e em &lt;b&gt;&lt;i&gt;Execution Mode&lt;/i&gt;&lt;/b&gt; selecionar &lt;b&gt;&lt;i&gt;&amp;#8220;On Schedule&amp;#8221;&lt;/i&gt;&lt;/b&gt; para que ela fosse executada automaticamente.&lt;/p&gt;  &lt;p&gt;Agora que criamos a pol&amp;#237;tica, vamos executar e ver o resultado. &lt;/p&gt;  &lt;p&gt;1) No Object Explorer, clique com o bot&amp;#227;o direito sobre um servidor e selecione &lt;b&gt;&lt;i&gt;Policy -&amp;gt; Run Now&lt;/i&gt;&lt;/b&gt;;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig2_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="330" alt="080121-fig2" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig2_thumb.jpg" width="445" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;2) Na caixa &lt;b&gt;&lt;i&gt;Run Now&lt;/i&gt;&lt;/b&gt;, selecione a pol&amp;#237;tica que foi criada (neste caso, &lt;b&gt;&amp;#8220;Desativados por padr&amp;#227;o&amp;#8221;&lt;/b&gt;) na caixa &lt;b&gt;&lt;i&gt;From Server&lt;/i&gt;&lt;/b&gt; e clique em &lt;b&gt;&lt;i&gt;Check&lt;/i&gt;&lt;/b&gt;. &lt;/p&gt;  &lt;p&gt;Perceba que a pol&amp;#237;tica avalia a configura&amp;#231;&amp;#227;o dos servidores e indica se est&amp;#227;o sendo violadas ou n&amp;#227;o. Neste exemplo, como voc&amp;#234; pode ver na figura abaixo, apenas uma das pol&amp;#237;ticas foi violada.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig3_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="520" alt="080121-fig3" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig3_thumb.jpg" width="614" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Vamos utilizar a mesma interface para &lt;b&gt;FOR&amp;#199;AR &lt;/b&gt;a ader&amp;#234;ncia a esta pol&amp;#237;tica. Para isto, simplesmente clique no bot&amp;#227;o &lt;b&gt;&lt;i&gt;Configure&lt;/i&gt;&lt;/b&gt;, na caixa &lt;b&gt;&lt;i&gt;Run Now&lt;/i&gt;&lt;/b&gt;. Verifique que agora os servidores passam no teste das pol&amp;#237;ticas.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig4_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="316" alt="080121-fig4" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig4_thumb.jpg" width="536" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;A figura abaixo&amp;#160; mostra um exemplo do resultado de uma viola&amp;#231;&amp;#227;o de pol&amp;#237;tica de nomenclatura de objetos. Se voc&amp;#234; gostaria de saber como criei este exemplo, deixe um coment&amp;#225;rio aqui e eu envio diretamente. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig5_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="249" alt="080121-fig5" src="http://blogs.msdn.com/blogfiles/procha/WindowsLiveWriter/DeclarativeManagementFramework_F2E7/080121-fig5_thumb.jpg" width="855" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Este tipo de pol&amp;#237;tica pode ser aplicada ao servidor inteiro ou a bancos de dados em particular, de forma restritiva (impedindo a continua&amp;#231;&amp;#227;o da mudan&amp;#231;a) ou de forma informativa. &lt;/p&gt;  &lt;h4&gt;Resumo&lt;/h4&gt;  &lt;p&gt;O &lt;b&gt;Declarative Management Framework&lt;/b&gt; &amp;#233; um dos recursos mais aguardados do SQL Server 2008. Ele d&amp;#225; ao administrador de banco de dados recursos que ajudam na seguran&amp;#231;a dos servidores e na ader&amp;#234;ncia de padr&amp;#245;es estabelecidos pelo neg&amp;#243;cio de uma forma simples e centralizada.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7187230" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Declarative+Management+Framework/default.aspx">Declarative Management Framework</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category></item><item><title>Um Endpoint Brasileiro</title><link>http://blogs.msdn.com/procha/archive/2008/01/15/um-endpoint-brasileiro.aspx</link><pubDate>Tue, 15 Jan 2008 16:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7118202</guid><dc:creator>procha</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/procha/comments/7118202.aspx</comments><wfw:commentRss>http://blogs.msdn.com/procha/commentrss.aspx?PostID=7118202</wfw:commentRss><wfw:comment>http://blogs.msdn.com/procha/rsscomments.aspx?PostID=7118202</wfw:comment><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Olá. Meu nome é Pericles Rocha e trabalho com foco em Plataforma de Dados na Microsoft Brasil. Utilizarei este espaço para discussão de assuntos ligados ao SQL Server e as ferramentas ao redor dele, como o Visual Studio por exemplo. O foco deste blog será em geral técnico, mas também poderei abordar assuntos comerciais a respeito do SQL Server, se for necessário ou se surgirem dúvidas. Fique a vontade para postar perguntas ou sugestões de pauta. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Para inaugurar este blog, gostaria de falar superficialmente (por hora – entrarei nos detalhes mais a fundo em textos individuais) sobre as principais novidades do SQL Server 2008 e porque ele deve ser considerado fortemente, independente do SGBD atual da sua preferência, ou mesmo de versões anteriores do SQL Server. Porém, para que eu possa falar sobre a nova versão, permita-me dedicar um parágrafo à versão atual.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;O SQL Server 2005 está sendo um marco importante na história deste produto. Teve larga aceitação no mercado enterprise e é posicionado como &lt;A class="" href="http://www.microsoft.com/presspass/press/2007/oct07/10-12DWMQPR.mspx" target=_blank mce_href="http://www.microsoft.com/presspass/press/2007/oct07/10-12DWMQPR.mspx"&gt;líder em &lt;I style="mso-bidi-font-style: normal"&gt;Data Warehousing&lt;/I&gt; no quadrante do Gartner de Outubro de 2007&lt;/A&gt; &lt;/FONT&gt;&lt;FONT face=Calibri size=3&gt;e conquistou espaço até então não alcançado pelo produto. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;O SQL Server 2005 é o servidor de banco de dados que &lt;A class="" href="http://download.microsoft.com/download/A/B/9/AB93175B-BA6A-4332-AFBF-FE4C3749BBEC/IDC%202006%20DB%20Marketshare%20206061.pdf" target=_blank mce_href="http://download.microsoft.com/download/A/B/9/AB93175B-BA6A-4332-AFBF-FE4C3749BBEC/IDC%202006%20DB%20Marketshare%20206061.pdf"&gt;mais cresce no mercado&lt;/A&gt; &lt;/FONT&gt;&lt;FONT face=Calibri size=3&gt;e é o servidor OLAP número 1 do mercado de acordo com &lt;A class="" href="http://www.olapreport.com/market.htm" target=_blank mce_href="http://www.olapreport.com/market.htm"&gt;olapreport.com&lt;/A&gt;. Em número de bancos de dados, o SQL Server está disparado na frente, com &lt;A class="" href="http://www.microsoft.com/sql/prodinfo/overview/default.%20mspx" target=_blank mce_href="http://www.microsoft.com/sql/prodinfo/overview/default. mspx"&gt;74.7% dos bancos de dados existentes&lt;/A&gt;. Com ZERO vulnerabilidades de segurança desde 2004 até esta data, o SQL Server é o servidor de banco de dados &lt;A class="" href="http://www.darkreading.com/document.asp?doc_id=110881" target=_blank mce_href="http://www.darkreading.com/document.asp?doc_id=110881"&gt;mais seguro do mercado&lt;/A&gt; &lt;/FONT&gt;&lt;FONT face=Calibri size=3&gt;e conquistou a confiança de muitos que, até então, não levavam a solução da Microsoft muito a sério. Eu mesmo ouvi inúmeras vezes, anos atrás, dizer que o SQL Server era considerado um banco de dados “departamental”. Este paradigma certamente foi quebrado e comprovado pelo relatório da WinterCorp datado de 2005, onde se levantou que o SQL Server tinha na época 43 bancos de dados instalados com mais de 1 TB. Veja bem: estes dados são de 2005, ano de lançamento do SQL Server 2005 (Veja os dados completos em &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/sql/prodinfo/compare/wintercorp-survey.mspx"&gt;&lt;FONT face=Calibri size=3&gt;http://www.microsoft.com/sql/prodinfo/compare/wintercorp-survey.mspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;). Além da robustez e confiabilidade do SQL Server 2005, ele é uma solução completa de BI, envolvendo o processo dos dados desde a aquisição (ETL) até a apresentação. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;A nova versão do produto vem construída nos mesmos pilares. Recursos novos na área de gerenciamento como Declarative Policy Framework e o Resource Governor, além de importantes aprimoramentos no Database Engine e no Analysis Services já geram ansiedade na comunidade. Nos próximos posts darei maiores detalhes sobre os novos recursos e exemplos de uso. Portanto insisto: se você tiver interesse em algum assunto em específico, fique a vontade para comentar aqui e terei prazer em esclarecer as dúvidas. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Por fim, gostaria de justificar o nome deste blog. Sempre li muita literatura técnica sobre SQL Server e os blogs dos times de produto, mas nenhum deles é em português. Por incrível que possa parecer, a barreira do idioma ainda é um obstáculo comum na nossa comunidade. Além disso, tenho percebido cada vez mais necessidades específicas da nossa região ou do modelo de negócio utilizado no Brasil. Portanto, nada mais justo do que termos um endpoint tupiniquim, com direito a código no texto inaugural e tudo mais.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;CREATE&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;ENDPOINT&lt;/SPAN&gt; [EndpointBrasileiro] &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;STATE=STARTED&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;AS&lt;/SPAN&gt; HTTP (PATH = &lt;SPAN style="COLOR: red"&gt;'/procha'&lt;/SPAN&gt;, AUTHENTICATION = (INTEGRATED), PORTS = (CLEAR), SITE = &lt;SPAN style="COLOR: red"&gt;'blogs.msdn.com'&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FOR&lt;/SPAN&gt; SOAP (WEBMETHOD &lt;SPAN style="COLOR: red"&gt;'GetSqlInfo'&lt;/SPAN&gt; (name=&lt;SPAN style="COLOR: red"&gt;'master.dbo.xp_msver'&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;SCHEMA&lt;/SPAN&gt;=STANDARD ), &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;WEBMETHOD &lt;SPAN style="COLOR: red"&gt;'DayAsNumber'&lt;/SPAN&gt; (name=&lt;SPAN style="COLOR: red"&gt;'master.sys.fn_MSdayasnumber'&lt;/SPAN&gt;), &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;WSDL = &lt;SPAN style="COLOR: blue"&gt;DEFAULT&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;SCHEMA&lt;/SPAN&gt; = STANDARD,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-ansi-language: EN-US; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;DATABASE&lt;/SPAN&gt; = &lt;SPAN style="COLOR: red"&gt;'master'&lt;/SPAN&gt;, NAMESPACE = &lt;SPAN style="COLOR: red"&gt;'http://tempUri.org/'&lt;/SPAN&gt; )&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;GO&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7118202" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server+em+portugu_26002300_234_3B00_s/default.aspx">SQL Server em portugu&amp;#234;s</category><category domain="http://blogs.msdn.com/procha/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/procha/archive/tags/Declarative+Management+Framework/default.aspx">Declarative Management Framework</category><category domain="http://blogs.msdn.com/procha/archive/tags/Gerenciamento/default.aspx">Gerenciamento</category></item></channel></rss>