{"id":1647,"date":"2019-07-15T11:13:40","date_gmt":"2019-07-15T18:13:40","guid":{"rendered":"http:\/\/3.209.169.194\/blogs\/glenn\/?p=1647"},"modified":"2020-08-04T17:10:17","modified_gmt":"2020-08-05T00:10:17","slug":"glenns-tech-insights-for-july-15-2019","status":"publish","type":"post","link":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/","title":{"rendered":"Glenn&rsquo;s Technical Insights For July 15, 2019"},"content":{"rendered":"<p><span style=\"font-size: small;\"><em>(Glenn\u2019s Technical Insights\u2026<\/em> used to be part of our bi-weekly <\/span><a href=\"https:\/\/www.sqlskills.com\/join-the-sqlskills-insider-community\/\"><span style=\"font-size: small;\">newsletter<\/span><\/a><span style=\"font-size: small;\"> but we decided to make it a regular blog post instead so it can get more visibility. It covers interesting new hardware and software developments that are generally relevant for SQL Server).<\/span><\/p>\n<h2><span style=\"font-size: medium;\"><span style=\"font-weight: bold;\">July Release of Azure Data Studio<\/span><\/span><\/h2>\n<p><span style=\"font-size: small;\">On <a href=\"https:\/\/cloudblogs.microsoft.com\/sqlserver\/2019\/07\/11\/the-july-release-of-azure-data-studio-is-now-available\/\" target=\"_blank\" rel=\"noopener noreferrer\">July 11, 2019<\/a>, Microsoft released <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/azure-data-studio\/download?view=sql-server-2017\" target=\"_blank\" rel=\"noopener noreferrer\">Azure Data Studio 1.9.0<\/a>. This release has a number of new features and improvements, as detailed in the <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/azure-data-studio\/release-notes-azure-data-studio?view=sql-server-2017\" target=\"_blank\" rel=\"noopener noreferrer\">Release notes<\/a>. So far, Microsoft is keeping pretty close to a monthly release cycle.<\/span><\/p>\n<p><span style=\"font-size: small;\">New features and improvements include:<\/span><\/p>\n<ul>\n<li><span style=\"font-size: small;\"><a href=\"https:\/\/www.sentryone.com\/products\/sentryone-plan-explorer-extension-azure-data-studio\" target=\"_blank\" rel=\"noopener noreferrer\">SentryOne Plan Explorer extension for Azure Data Studio<\/a><\/span><\/li>\n<li><span style=\"font-size: small;\">Improvements to Schema Compare<\/span><\/li>\n<li><span style=\"font-size: small;\">Multiple Notebook Improvements<\/span><\/li>\n<li><span style=\"font-size: small;\">Better SQL Server 2019 support<\/span><\/li>\n<li><span style=\"font-size: small;\">Update Language Packs<\/span><\/li>\n<li><span style=\"font-size: small;\">SQL Server Profiler extension improvements<\/span><\/li>\n<li><span style=\"font-size: small;\"><a href=\"https:\/\/code.visualstudio.com\/updates\/v1_35\" target=\"_blank\" rel=\"noopener noreferrer\">Visual Studio Code 1.35 updates<\/a><\/span><\/li>\n<li><span style=\"font-size: small;\"><a href=\"https:\/\/github.com\/microsoft\/azuredatastudio\/milestone\/35?closed=1\" target=\"_blank\" rel=\"noopener noreferrer\">Multiple bug fixes<\/a><\/span><\/li>\n<\/ul>\n<p><span style=\"font-size: small;\">\u00a0<\/span><\/p>\n<p><a href=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image-1.png\"><img fetchpriority=\"high\" decoding=\"async\" style=\"display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png\" alt=\"image\" width=\"991\" height=\"772\" border=\"0\" \/><\/a><\/p>\n<p><span style=\"font-size: small;\"><strong>Figure 1: Azure Data Studio 1.9.0<\/strong><\/span><\/p>\n<p><span style=\"font-size: small;\">\u00a0<\/span><\/p>\n<h2><span style=\"font-size: medium;\"><span style=\"font-weight: bold;\">SQL Server Security Updates Released<\/span><\/span><\/h2>\n<p><span style=\"font-size: small;\">On July 9, 2019, Microsoft released a GDR Security Update for all supported Service Packs for SQL Server 2014 and newer. This is for <a href=\"https:\/\/portal.msrc.microsoft.com\/en-US\/security-guidance\/advisory\/CVE-2019-1068\" target=\"_blank\" rel=\"noopener noreferrer\">CVE-2019-1068<\/a>, which is a remote code execution vulnerability. This is the complete description:<\/span><\/p>\n<blockquote><p><span style=\"font-size: small;\">A remote code execution vulnerability exists in Microsoft SQL Server when it incorrectly handles processing of internal functions. An attacker who successfully exploited this vulnerability could execute code in the context of the SQL Server Database Engine service account.<\/span><\/p>\n<p><span style=\"font-size: small;\">To exploit the vulnerability, an authenticated attacker would need to submit a specially crafted query to an affected SQL server.<\/span><\/p>\n<p><span style=\"font-size: small;\">The security update addresses the vulnerability by modifying how the Microsoft SQL Server Database Engine handles the processing of functions.<\/span><\/p><\/blockquote>\n<p><span style=\"font-size: small;\">There are updates for SQL Server 2014 SP2, SQL Server 2014 SP3, SQL Server 2016 SP1, SQL Server 2016, and <a href=\"https:\/\/techcommunity.microsoft.com\/t5\/SQL-Server\/SQL-Server-2017-RTM-CU15-GDR-Released\/ba-p\/745923\" target=\"_blank\" rel=\"noopener noreferrer\">SQL Server 2017 RTM<\/a>. For each SP level, there are two separate branches that each get a separate update. There is the GDR branch, which only gets Security Updates, and there is the CU branch, which gets all of the fixes and improvements in each CU (including security updates).<\/span><\/p>\n<p><span style=\"font-size: small;\">I think most organizations are better off on the CU branch, since they will get many more bug fixes and actually get product improvements and new features. The GDR branch will require less patching (since only security issues are fixed), so it may be a better choice for some organizations. If you are on the GDR branch, you need to be careful to only install GDR-only updates. If you install a CU on a GDR-branch instance, that will move you to the CU branch from then on.<\/span><\/p>\n<p><span style=\"font-size: small;\">You should also be aware that Microsoft is pushing this update out if you are running Microsoft Update on your machine. Microsoft Update is a superset of Windows Update, which will automatically download and install things like SQL Server security updates. This is not something you want happening on most Production SQL Server instances! It is much better to do a manual installation, at a time of your choosing, after you have tested the update on a non-production instance.<\/span><\/p>\n<p><span style=\"font-size: small;\">You should also be aware that Microsoft Update will probably trigger multiple reboots when it installs these SQL Server security updates. This is because the Windows OS updates will be installed first (which causes a pending reboot). Then, the SQL Server update will be installed (which may cause a pending reboot). Finally, if you have named instances on a machine, with different versions of SQL Server, you may have to reboot after the SQL Server update for each version. This is what you see in Figure 2.<\/span><\/p>\n<p><span style=\"font-size: small;\">\u00a0<\/span><\/p>\n<p><span style=\"font-size: small;\"><a href=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/windows-update.png\"><img decoding=\"async\" style=\"display: inline; background-image: none;\" title=\"Windows Update\" src=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/windows-update_thumb.png\" alt=\"Windows Update\" width=\"993\" height=\"772\" border=\"0\" \/><\/a><\/span><\/p>\n<p><span style=\"font-size: small;\"><strong>Figure 2: Microsoft Update Dialog<\/strong><\/span><\/p>\n<p><span style=\"font-size: small;\">\u00a0<\/span><\/p>\n<p><span style=\"font-size: small;\">Incredibly, I wrote one of these without talking about hardware or AMD!<\/span><\/p>\n<p><span style=\"font-size: small;\">\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Glenn\u2019s Technical Insights\u2026 used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can get more visibility. It covers interesting new hardware and software developments that are generally relevant for SQL Server). July Release of Azure Data Studio On July 11, 2019, Microsoft released [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[432,399],"tags":[433],"class_list":["post-1647","post","type-post","status-publish","format-standard","hentry","category-glenns-technical-insights","category-hardware","tag-glenns-tech-insights"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry\" \/>\n<meta property=\"og:description\" content=\"(Glenn\u2019s Technical Insights\u2026 used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can get more visibility. It covers interesting new hardware and software developments that are generally relevant for SQL Server). July Release of Azure Data Studio On July 11, 2019, Microsoft released [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/\" \/>\n<meta property=\"og:site_name\" content=\"Glenn Berry\" \/>\n<meta property=\"article:published_time\" content=\"2019-07-15T18:13:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-08-05T00:10:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png\" \/>\n<meta name=\"author\" content=\"Glenn Berry\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Glenn Berry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/\",\"name\":\"Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png\",\"datePublished\":\"2019-07-15T18:13:40+00:00\",\"dateModified\":\"2020-08-05T00:10:17+00:00\",\"author\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/57a8972435106bac7970692fcf5edfa7\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png\",\"contentUrl\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png\",\"width\":991,\"height\":772},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glenn&rsquo;s Technical Insights For July 15, 2019\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/#website\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/\",\"name\":\"Glenn Berry\",\"description\":\"Semi-random musings about SQL Server performance\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/57a8972435106bac7970692fcf5edfa7\",\"name\":\"Glenn Berry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/64bdac8830f25f2f8cc780f8a1286c66ff1182218009271e7a953639596f7e25?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/64bdac8830f25f2f8cc780f8a1286c66ff1182218009271e7a953639596f7e25?s=96&d=mm&r=g\",\"caption\":\"Glenn Berry\"},\"sameAs\":[\"https:\/\/www.sqlskills.com\/blogs\/glenn\/\"],\"url\":\"https:\/\/www.sqlskills.com\/blogs\/glenn\/author\/glenn\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/","og_locale":"en_US","og_type":"article","og_title":"Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry","og_description":"(Glenn\u2019s Technical Insights\u2026 used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can get more visibility. It covers interesting new hardware and software developments that are generally relevant for SQL Server). July Release of Azure Data Studio On July 11, 2019, Microsoft released [&hellip;]","og_url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/","og_site_name":"Glenn Berry","article_published_time":"2019-07-15T18:13:40+00:00","article_modified_time":"2020-08-05T00:10:17+00:00","og_image":[{"url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png","type":"","width":"","height":""}],"author":"Glenn Berry","twitter_misc":{"Written by":"Glenn Berry","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/","url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/","name":"Glenn&rsquo;s Technical Insights For July 15, 2019 - Glenn Berry","isPartOf":{"@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage"},"image":{"@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage"},"thumbnailUrl":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png","datePublished":"2019-07-15T18:13:40+00:00","dateModified":"2020-08-05T00:10:17+00:00","author":{"@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/57a8972435106bac7970692fcf5edfa7"},"breadcrumb":{"@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#primaryimage","url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png","contentUrl":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-content\/uploads\/2019\/07\/image_thumb-1.png","width":991,"height":772},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/glenns-tech-insights-for-july-15-2019\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqlskills.com\/blogs\/glenn\/"},{"@type":"ListItem","position":2,"name":"Glenn&rsquo;s Technical Insights For July 15, 2019"}]},{"@type":"WebSite","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/#website","url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/","name":"Glenn Berry","description":"Semi-random musings about SQL Server performance","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlskills.com\/blogs\/glenn\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/57a8972435106bac7970692fcf5edfa7","name":"Glenn Berry","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlskills.com\/blogs\/glenn\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/64bdac8830f25f2f8cc780f8a1286c66ff1182218009271e7a953639596f7e25?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/64bdac8830f25f2f8cc780f8a1286c66ff1182218009271e7a953639596f7e25?s=96&d=mm&r=g","caption":"Glenn Berry"},"sameAs":["https:\/\/www.sqlskills.com\/blogs\/glenn\/"],"url":"https:\/\/www.sqlskills.com\/blogs\/glenn\/author\/glenn\/"}]}},"_links":{"self":[{"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/posts\/1647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/comments?post=1647"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/posts\/1647\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/media?parent=1647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/categories?post=1647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/glenn\/wp-json\/wp\/v2\/tags?post=1647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}