SQL Operations Studio Preview v0.25.4 – Janeiro 2018


A Microsoft disponibilizou para download nesta semana o SQL Operations Studio Preview v0.25.4. A ferramenta está disponível para Windows, macOS e Linux.

Se você ainda não conhece esta nova ferramenta, saiba que o SQL Operations Studio é uma ferramenta gratuita para gerenciamento do SQL Server, Azure SQL Database e Azure SQL Data Warehouse.

A primeira versão Preview pública foi lançada no início de novembro de 2017. De acordo com o changelog, a versão 0.25.4 traz correções de bugs, corrige um problema com o tamanho do ícone no menu Iniciar, muda o campo Nome do servidor para Servidor na caixa de diálogo Conexão e mais.

Confira a lista completa de melhorias e correções disponíveis no changelog clicando aqui.

Microsoft SQL Operations Studio Preview v0.25.4

A versão para Windows do SQL Operations Studio Preview v0.25.4 está disponível para download aqui com instalador e aqui em versão portátil (não requer instalação). As versões para outras plataformas e as instruções de instalação podem ser encontradas aqui.

Para maiores informações acesse: https://docs.microsoft.com/en-us/sql/sql-operations-studio/what-is

Fontes e Direitos Autorais: Microsoft – 17/01/2018 – https://docs.microsoft.com/en-us/sql/sql-operations-studio/release-notes

Anúncios

Microsoft libera o .Net Core v2.0.5


A Microsoft disponibilizou para download nesta semana o .NET Core v2.0.5. Esta versão pode ser utilizada para desenvolvimento via linha de comando, editor de texto, Visual Studio 2017, Visual Studio Code ou Visual Studio for Mac.

O .NET Core é uma versão modular, multiplataforma e open-source do .NET Framework. O SDK (kit para desenvolvimento de software) v2.1.4 e o .NET Core Runtime v2.0.5 para Windows estão disponíveis para download aqui.

Na mesma página é possível encontrar o .NET Core e outros downloads para Linux e macOS. Instruções para instalação em diferentes distribuições do Linux estão disponíveis no link acima.

Imagens da versão 2.0.5 do .NET Core também estão disponíveis no Docker Hub. Elas podem ser usadas no Linux e no Nano Server.

Microsoft disponibiliza o .NET Core v2.0.5
A Microsoft disponibilizou para download nesta semana o .NET Core v2.0.5. Esta versão pode ser utilizada para desenvolvimento via linha de comando, editor de texto, Visual Studio 2017, Visual Studio Code ou Visual Studio for Mac

Fontes e Direitos Autorais: Baboo.com –  11 jan 2018 | 9:42 am.

Microsoft anuncia o lançamento do Powershell Core 6.0


A Microsoft anunciou nesta semana a disponibilidade do PowerShell Core 6.0, uma versão multi-plataforma e open-source do PowerShell, para Windows, macOS e Linux.

Apesar do “6.0” no nome, esta é a primeira versão oficial do PowerShell Core.

A versão para Windows do PowerShell Core 6.0 é compatível com o Windows 7, Windows 8.1, Windows 10, Windows Server 2008 R2, Windows Server 2012 R2 e Windows Server 2016.

A versão para macOS é compatível com a versão 10.12 e posteriores e a versão para Linux é compatível com distribuição como Ubuntu, CentOS, Red Hat Enterprise Linux, OpenSUSE e Fedora.

Assim como o .NET e o .NET Core, o PowerShell Core é uma versão open-source do PowerShell. A Microsoft não pretende mais lançar novas versões do Windows PowerShell “normal”, com a 5.1 sendo a última*.

*Ela continuará recebendo correções durante seu ciclo de vida, mas a 5.1 é a última grande versão do Windows PowerShell.

O PowerShell Core também pode ser usado mesmo em sistemas com o Windows PowerShell instalado.

Alguns recursos suportados pelo Windows PowerShell, como PowerShell Workflows, Snap-ins e cmdlets WMlv1, não são suportados no PowerShell Core 6.0, mas isso pode mudar no futuro.

O PowerShell Core será atualizado regularmente pela Microsoft.

Microsoft lança o PowerShell Core 6.0

A empresa anunciou seu plano de tornar o PowerShell open-source e compatível com macOS e Linux em 2016. A empresa também disponibilizou uma versão de testes na época.

Profissionais de TI interessados podem obter mais informações no post com o anúncio da versão 6.0 publicado aqui pela Microsoft.

Instruções para download e instalação do PowerShell Core 6.0 no Windows podem ser encontradas aqui. Já as instruções para download e instalação no macOS e Linux estão disponíveis aqui.

Fontes e Direitos Autorais: PowerShell Team Blog – 10/01/2018.

Script desenvolvido pela Microsoft verifica se PCs estão vulneráveis aos ataques gerados pelas falhas Meltdown e Spectre


A Microsoft anunciou em seu site de suporte a disponibilidade de um script do PowerShell que pode ser utilizado por profissionais de TI para verificar se PCs são vulneráveis aos ataques Meltdown e Spectre.

O script pode ser utilizado via PowerShell no Windows 10 (1v1507, v1511, v1607, v1703 e v1709), Windows 8.1 e Windows 7 com SP1.

Ações recomendadas
Antes de começar, a Microsoft alerta que seus precisam tomar as seguintes medidas para se protegerem contra as vulnerabilidades:

– Verifique se você está executando um aplicativo antivírus com suporte antes de instalar as atualizações de SO ou firmware. Contate o fornecedor do software antivírus para obter informações de compatibilidade.

– Aplique as atualizações disponíveis do sistema operacional Windows, incluindo as atualizações de segurança do Windows de janeiro de 2018.

– Aplique a atualização de firmware fornecida pelo fabricante do dispositivo.

Nota: Máquinas baseadas no Windows (físicas ou virtuais) devem instalar as atualizações de segurança da Microsoft que foram lançadas em 3 de janeiro de 2018.

Aviso
Os clientes que só instalarem as atualizações de segurança do Windows de janeiro de 2018 não receberão o benefício de todas as proteções conhecidas contra as vulnerabilidades. Além de instalar as atualizações de segurança de janeiro, é necessária uma atualização do microcódigo do processador ou do firmware. Ele deve estar disponível pelo fabricante do seu dispositivo.

Observação: Os dispositivos da linha Surface receberão uma atualização do microcódigo através do Windows Update.

Script da Microsoft verifica se PCs são vulneráveis aos ataques Meltdown e Spectre

Verificando se o computador é vulnerável aos ataques Meltodown e Spectre

Para ajudar os clientes a confirmar se as proteções foram habilitadas e se seus sistemas estão vulneráveis, a Microsoft publicou um script PowerShell que os profissionais de TI podem executar em seus sistemas. Instale e execute o script executando os seguintes comandos:

Instale o módulo via PowerShell:

PS > Install-Module SpeculationControl

Execute o módulo no PowerShell para validar se as proteções estão habilitadas:

PS > Get-SpeculationControlSettings

A saída desse script PowerShell será semelhante à exibida abaixo. As proteções habilitadas serão exibidas na saída como “True”:

PS > Get-SpeculationControlSettings

Speculation control settings for CVE-2017-5715 [branch target injection]
Hardware support for branch target injection mitigation is present: True
Windows OS support for branch target injection mitigation is present: True
Windows OS support for branch target injection mitigation is enabled: True
Speculation control settings for CVE-2017-5754 [rogue data cache load]
Hardware requires kernel VA shadowing: True
Windows OS support for kernel VA shadow is present: True
Windows OS support for kernel VA shadow is enabled: True
Windows OS support for PCID optimization is enabled: True

Perguntas frequentes

P: Como saber se eu tenho a versão certa do microcódigo da CPU?
R: O microcódigo é fornecido através de uma atualização de firmware. Consulte o fabricante do dispositivo sobre aversão do firmware que possui a atualização apropriada para a sua CPU.

P: Meu sistema operacional (SO) não está listado. Quando posso esperar o lançamento de uma correção?
R: Abordar uma vulnerabilidade de hardware através de uma atualização de software apresenta desafios significativos, e as mitigações para sistemas operacionais mais antigos exigem extensas mudanças na arquitetura. A Microsoft está trabalhando com fabricantes de chips afetados para determinar a melhor maneira de proporcionar mitigações, que podem ser disponibilizadas em atualizações futuras.

P: Onde posso encontrar as atualizações de firmware/hardware do Surface?
A: As atualizações para dispositivos Microsoft Surface serão entregues aos clientes através do Windows Update, juntamente com as atualizações para o sistema operacional Windows. Para obter mais informações, consulte o artigo KB4073065.

Nota: Se seu dispositivo não for da Microsoft, aplique o firmware do fabricante do dispositivo. Contate o fabricante para obter mais informações.

P: Tenho um arquitetura x86, mas não vejo atualização. Vou receber uma?
R: Abordar uma vulnerabilidade de hardware através de uma atualização de software apresenta desafios significativos, e as mitigações para sistemas operacionais mais antigos exigem extensas mudanças na arquitetura. Estamos trabalhando com fabricantes de chips afetados para determinar a melhor maneira de fornecer mitigações para clientes x86, que podem ser fornecidos em uma atualização futura.

Fontes e Direitos Autorais: Suporte Microsoft – 05/01/2018 – https://support.microsoft.com/pt-br/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in

Microsoft não oferecerá atualizações de segurança realizadas ao Windows em computadores com antivírus considerados incompatíveis


A Microsoft publicou em seu site de suporte um alerta informando que não oferecerá atualizações de segurança para o Windows em PCs com antivírus incompatíveis.

A empresa tomou esta atitude depois que os usuários enfrentaram problemas com a atualização disponibilizada recentemente com foco nas vulnerabilidades Meltdown e Spectre.

Por causa dos antivírus incompatíveis, alguns PCs não puderam mais ser inicializados corretamente após a instalação da atualização. Para evitar problemas similares no futuro, a Microsoft alertou que não oferecerá atualizações de segurança para o Windows em PCs com antivírus incompatíveis.

Os desenvolvedores de softwares antivírus deverão tornar seus produtos compatíveis com esta e futuras atualizações definindo a seguinte chave de registro:

Key=”HKEY_LOCAL_MACHINE” Subkey=”SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat”
Value=”cadca5fe-87d3-4b96-b7fb-a231484277cc”
Type=”REG_DWORD”
Data=”0x00000000”

Microsoft não oferecerá atualizações de segurança para o Windows em PCs com antivírus incompatíveis

Perguntas frequentes

Por que algumas soluções antivírus são incompatíveis com as atualizações de segurança?
Durante seu processo de testes, a Microsoft descobriu que alguns softwares antivírus de terceiros estão fazendo chamadas sem suporte para memória do kernel do Windows, causando erros de parada (também conhecidos como erros de tela azul).

O que a Microsoft está fazendo para ajudar a atenuar os problemas causados por esses aplicativos sem suporte?
Para proteger seus clientes contra telas azuis e cenários desconhecidos, a Microsoft exige que todos os fornecedores de software antivírus confirmem a compatibilidade de seus aplicativos, definindo uma chave de registro do Windows.

Por quanto tempo a Microsoft exigirá a definição de uma chave do Registro para receber atualizações de segurança?
A Microsoft adicionou esse requisito para garantir que os clientes possam instalar com êxito as atualizações de segurança de janeiro de 2018. A empresa continuará a impor esse requisito até que haja confiança de que a maioria dos clientes não encontrará falhas de dispositivo depois de instalar as atualizações de segurança.

Tenho um aplicativo antivírus compatível, mas não recebi a opção de atualizações de segurança de janeiro de 2018. O que devo fazer?
Em alguns casos, pode demorar até que as atualizações de segurança sejam entregues nos sistemas, particularmente para dispositivos que foram desligados ou que não conectados à Internet (offline). Depois que eles forem novamente ligados, esses sistemas receberão atualizações de seus provedores de software antivírus. Os clientes que ainda estiverem enfrentando problemas 24 horas depois de garantirem que seus dispositivos têm boa conectividade com a Internet deverão contactar seus fornecedores de software antivírus para conhecer as etapas de solução de problemas adicionais.

Meu software antivírus não é compatível. O que devo fazer?
A Microsoft tem trabalhado estreitamente com parceiros de software antivírus para ajudar a garantir que todos os clientes recebam as atualizações de segurança do Windows de janeiro de 2018 o mais rápido possível. Se os clientes não estiverem recebendo a atualização de segurança deste mês, a Microsoft recomenda que eles contatem seus fornecedores de software antivírus.

Tenho um aplicativo de software antivírus compatível, mas ainda estou com problemas de tela azul. O que devo fazer?
A Microsoft reuniu os seguintes recursos para ajudar os clientes potencialmente afetados:

– Solucionar problemas de erros de tela azul
– Solucionando erros de parada (tela azul) no Windows 7

Fontes e Direitos Autorais: Suporte da Microsoft – 05/01/2018 – https://support.microsoft.com/pt-br/help/4072699/january-3-2018-windows-security-updates-and-antivirus-software

#19 – Para que serve


Salve galera, boa tarde.

Feliz Ano Novo, Feliz 2018, o tempo passou e hoje dia 02/01 nos encontramos no primeiro dia útil para grande maioria da população mundial, mas que dureza pensar que temos mais 365 dias pela frente para superarmos, por outro lado que bom pensar assim.

Neste primeiro post de 2018 não vou trazer nenhuma novidade relacionada ao Microsoft SQL Server ou banco de dados, mas sim compartilhar como faço em alguns momentos, conceitos já conhecidos da grande maioria.

Hoje quero trazer para vocês um dos assuntos mais discutidos quando estamos trabalhando com nossos servidores de banco de dados, estou me referindo ao período de processamento do comando select dentro de um bloco de transação conhecido como Ciclo de Vida de Query através do comando Select.

Sendo assim, chegou a hora de conhecer um pouco mais sobre o primeiro post de 2018, post de número 19 da sessão Para que serve. Entã seja bem vindo ao #19 – Para que serve – Ciclo de Vida de Query através do comando Select.


Introdução

Um dos comandos mais utilizados em qualquer Sistema Gerenciador de Banco de Dados ou propriamente um Banco de Dados é o comando Select, sendo este responsável em recuperar linhas do banco de dados e permite a seleção de uma ou várias linhas ou colunas de uma ou várias tabelas, no Microsoft SQL Server isso não é diferente.

Basicamente ao se executar um comando Select podemos estar trabalhando com uma simples query ou conjunto de querys que podem formar uma ou mais transações, é com base neste cenário que o comando Select composto por sua conjunto de argumentos e opções permite estabelecer um ciclo de vida dedicado exclusivamente ao seu período de compilação, execução e encerramento.

Desta forma, algumas perguntas podem surgir decorrentes do seu processo de processamento, dentre as quais destaco:

  1. Quais são as etapas para o processamento de um select? 
  2. Onde inicia e onde termina cada processo?

De uma maneira bastante simples e direta vou tentar responder estas questões, iniciando pela organização da estrutura de componentes utilizadas pelo comando Select, conhecidos como:

  • Relation Engine;
  • Storage Engine; e
  • Buffer Pool.
  1. Relational Engine é responsável pelos processos de Query Optmizer, Query Executor e Parse entre outros, avaliando toda a parte algébrica, sintaxe e plano de execução da Query.
  2. Storage Engine é o cara do I/O, responsável pelo gerenciamento e requisições de disco, alocações, Access Methods Code, Buffer Manager e Transaction MGR.
  3. Buffer Pool tem vários papeis, mas, um dos mais importantes é o gerenciamento de memória para o plano de execução e alocação de páginas no data cache.

A Figura 1 apresentada abaixo ilustra um modelo básico da estrutura de relação entre estes componentes:

Figura 1 – Estrutura dos componentes utilizados pelo comando select.

Logicamente, dentro de cada componente podemos encontrar diversos subcomponentes que formam sua estrutura, responsáveis por diversas ações e procedimentos, formando um ecossistema único para cada elemento, dentre eles destaco o Query Optimizer com suas diversas fases de otimização para gerar o plano de execução mais assertivo.

O Ciclo (Select)

O primeiro passo é estabelecer a conexão entre aplicação (ERP, CRM, Web, etc…) e o SQL Server. Para isso, é utilizado um protocolo chamado Network Interface (SNI). No fundo o SNI utiliza um outro protocolo, na verdade, podem existir vários protocolos e o mais conhecido é o famoso TCP/IP.

A Figura 2 abaixo ilustra o inicio do ciclo de vida do comando select através do acesso feito por uma aplicação:

Figura 2 – Representação do inicio do ciclo de vida do comando select.

Ao realizar a conexão através da comanda e do protocolo (TCP/IP), os pacotes TDS (Tabular Data Stream Endpoints) são encaminhados ao Protocolo Layer, que tem como papel “reconhecer e interpretar” o pacote e validar a informação, assim como sua origem (client). Após isso o conteúdo (SQL Command) do pacote é enviado ao Command Parse.

A Figura 3 apresenta o comportamento do Command Parse após o processo de reconhecimento e interpretação do pacote contendo o comando select ser realizado:

Figura 3 – Comportamento do Command Parse após o processo de reconhecimento dos pacotes.

Neste cenário o CMD Parser vai fazer o seu trabalho, primeiro validando o T-SQL, checando sintaxe, nomes de objetos, parâmetros, palavras chaves. A segunda parte é procurar no Buffer Pool se já existe um plano de execução compatível para está query, se sim, ele recupera este plano e executa (Query Executor), caso contrário, passa o result da análise (Query Tree) para o Query Optmizer que é o responsável por gerar o Execution Plan (plano de execução) que será usado na execução (próxima etapa) do ciclo.

Ao receber as instruções o Query Optimizer,  identifica a query realizando diversas etapas (fases 0,1,2) de otimização, afim de encontrar o plano mais eficiente, com base no “cost-based” (I/O, CPU). Nesta etapa as estatísticas são utilizadas servindo como Input de informação para tomada de decisão do Query Optimizer. Após o termino desta etapa, o plano de execução está pronto, passando o bastão para o Query Executor

O Query Executor é quem executa a Query, na verdade ele executa o plano de execução, colocando os operadores para trabalhar. É neste ponto também que ocorre a interação com a Storage Engine via interface Access Methods (OLE DB).

Seguindo em frente, Access Methods passa a solicitação para o Buffer Manager recuperar a página de dados, se a página especifica estiver em memória, o Buffer Pool solicita ao Data Cache que recupere a pagina, e retorna ao Access Methods (leituras logicas). Ao contrário, os dados são recuperados do disco (leituras físicas), colocados em cache e devolvendo o controle para o Access Methods. 

De posse dos dados, o Access Methods devolve a informação para o Relational Engine que será enviada ao Client que a solicitou, assim o resultando do comando select é apresentado na tela da aplicação exibindo assim os dados solicitados pelo usuário. Desta maneira, nosso ciclo ou melhor o ciclo de vida do comando select esta concluído, conforme a Figura 4 apresenta abaixo:

Figura 4 – Ciclo de vida do comando select concluído e dados apresentados para o usuário.

Com isso chegamos ao final do primeiro post de 2018 e post de número 19 da sessão Para que serve.


Referências

https://docs.microsoft.com/en-us/sql/t-sql/queries/select-transact-sql

https://technet.microsoft.com/en-us/library/ms189559(v=sql.90).aspx

http://www.sqlservergeeks.com/sql-server-architecture-part-2-the-relational-engine/

https://blogs.msdn.microsoft.com/tcaserta/2016/01/04/sql-server-fundamentos-storage-engine-parte-i/

https://blogs.msdn.microsoft.com/tcaserta/2016/01/04/sql-server-fundamentos-storage-engine-parte-i/

Links

Caso você ainda não tenha acessado os posts anteriores desta sessão, fique tranquilo é fácil e rápido, basta selecionar um dos links apresentados a seguir:

https://pedrogalvaojunior.wordpress.com/2017/12/15/18-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/11/24/17-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/10/01/16-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/06/28/15-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/04/30/14-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/03/25/13-para-que-serve/

https://pedrogalvaojunior.wordpress.com/2017/01/23/12-para-que-serve/

Conclusão

Como sempre a Microsoft e toda sua equipe nos surpreende com sua capacidade de trabalho, fortalecendo cada vez mais o Microsoft SQL Server não somente com um SGBD ou ferramenta de banco de dados, mas sim um ambiente completo para qualquer tipo de análise, desenvolvimento e administração que esteja relacionada com dados.

Este é o fantástico Microsoft SQL Server, surpreendente em todos os sentidos…

Agradecimentos

Mais uma vez obrigado por sua ilustre visita, sinto-me honrado com sua presença, espero que este conteúdo possa lhe ajudar e ser útil em suas atividades profissionais e acadêmicas.

Um forte abraço, até o próximo post da sessão Para que serve…..

Valeu.

Microsoft disponibiliza atualização cumulativa 9 para SQL Server 2014 SP2


A Microsoft disponibilizou para download nesta semana a Atualização Cumulativa 9 para SQL Server 2014 SP2. Esta atualização contém correções para os problemas que foram descobertos depois do lançamento do SQL Server 2014 SP2.

O SP2 foi lançado pela Microsoft em julho de 2016.

Atualização Cumulativa 9 para SQL Server 2014 SP2

De acordo com o artigo KB4055557 publicado no site de suporte da Microsoft, a Atualização Cumulativa 9 altera o build para 12.0.5563.0 e traz correções para múltiplos bugs.

Entre os bugs corrigidos estão que faz com que o DBCC CHECKDB retorne erros de consistência se a função SOUNDEX é usada em certos cenários e um que gera o erro “Invalid comparison due to NO COLLATION”.

A lista completa com todos os bugs corrigidos por esta atualização cumulativa pode ser vista no link acima.

A Atualização Cumulativa 9 para SQL Server 2014 SP2 está disponível para download aqui em múltiplos idiomas para plataformas 32 e 64 bits.

Atualização Cumulativa 9 para SQL Server 2014 SP2
De acordo com o artigo KB4055557 publicado no site de suporte da Microsoft, a Atualização Cumulativa 9 altera o build para 12.0.5563.0 e traz correções para múltiplos bugs

Correcções incluídas neste pacote de atualizações cumulativas


Fontes e Direitos Autorais: Microsoft.com – 19/12/2017 –https://support.microsoft.com/pt-br/help/4055557/cumulative-update-9-for-sql-server-2014-sp2