{"id":1295,"date":"2020-02-09T05:53:54","date_gmt":"2020-02-09T08:53:54","guid":{"rendered":"http:\/\/thesqltimes.com\/blog\/?p=1295"},"modified":"2020-05-07T19:18:45","modified_gmt":"2020-05-07T22:18:45","slug":"azure-file-share-sql-1","status":"publish","type":"post","link":"https:\/\/thesqltimes.com\/blog\/2020\/02\/09\/azure-file-share-sql-1\/","title":{"rendered":"Azure File Share no SQL Server &#8211; [1] Cen\u00e1rio real"},"content":{"rendered":"<div class=\"pld-like-dislike-wrap pld-template-1\">\r\n    <div class=\"pld-like-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-like-trigger pld-like-dislike-trigger  \" title=\"Muito \u00fatil!\" data-post-id=\"1295\" data-trigger-type=\"like\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                        <i class=\"fas fa-thumbs-up\"><\/i>\r\n                <\/a>\r\n    <span class=\"pld-like-count-wrap pld-count-wrap\">    <\/span>\r\n<\/div><\/div><div class=\"seriesmeta\">Post 1\/5. Este post \u00e9 parte da s\u00e9rie: <a href=\"https:\/\/thesqltimes.com\/blog\/series\/azure-file-share-sql\/\" class=\"series-279\" title=\"Azure File Share no SQL Server\">Azure File Share no SQL Server<\/a>\r\n<\/div>\r\n<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tempo de Leitura:<\/span> <span class=\"rt-time\"> 2<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span><p>Finalmente, me rendi as maravilhas do Azure, e tenho dedicado um bom tempo resolver situa\u00e7\u00f5es que envolvam a queridinha da Microsoft!<\/p>\n<p>E claro, esta rendi\u00e7\u00e3o veio devido a v\u00e1rios cen\u00e1rios que aparecem envolvendo o meu querido SQL Server!<\/p>\n<p>Em uma situa\u00e7\u00e3o recente, um bom e velho conhecido problema: Mapear um um diret\u00f3rio de rede (aquele no formato &#92;blablabla) para que eu pudesse fazer alguns restores peri\u00f3dicos no SQL Server!<\/p>\n<p>Para acessar o share, eu precisava fornecer um usu\u00e1rio e senha! Esse share era um <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/files\/storage-files-introduction\">Azure File Share<\/a>. O SQL estava em uma VM na mesma regi\u00e3o que a Storage Account deste share. (para os novatos em Azure: \u00e9 como se o share estivesse no mesmo datacenter, rede, etc. que a m\u00e1quina do meu SQL Server)<\/p>\n<p>Optei por resolver este problema preservando o m\u00e1ximo de seguran\u00e7a, isto \u00e9, sem senhas em scripts e que fosse persistente entre restarts dos servi\u00e7os ou da m\u00e1quina do SQL:<\/p>\n<ol>\n<li>Com as informa\u00e7\u00f5es de conex\u00e3o com Azure File Storage em m\u00e3os, execute os passos seguintes;<\/li>\n<li>Utilize o xp_cmdshell para adicionar credenciais na Credential Store do Windows\n<pre class=\"theme:vs2012-black lang:tsql decode:true\" title=\"Adicionado credenciais \u00e0 Credential Store do Windows\">EXEC xp_cmdshell 'cmdkey \/add:UrlStorageAccount \/user:Azure\\StorageAccount \/pass:StorageAccountKey'<\/pre>\n<p id=\"bYvFocI\"><a href=\"http:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1289 size-large\" src=\"http:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96-1024x347.png\" alt=\"\" width=\"1024\" height=\"347\" srcset=\"https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96-1024x347.png 1024w, https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96-300x102.png 300w, https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96-768x260.png 768w, https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe2f5df96.png 1512w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<\/li>\n<li>Teste o acesso\n<p id=\"CAwRkcq\"><img loading=\"lazy\" decoding=\"async\" width=\"832\" height=\"201\" class=\"alignnone size-full wp-image-1290 \" src=\"http:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe57407e2.png\" alt=\"\" srcset=\"https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe57407e2.png 832w, https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe57407e2-300x72.png 300w, https:\/\/thesqltimes.com\/blog\/wp-content\/uploads\/2020\/02\/img_5e3fbe57407e2-768x186.png 768w\" sizes=\"auto, (max-width: 832px) 100vw, 832px\" \/><\/p>\n<\/li>\n<\/ol>\n<p>Como este \u00e9 um assunto grande, eu resolvi dividir este post em uma s\u00e9rie, e deixar a solu\u00e7\u00e3o aqui para aqueles que est\u00e3o atr\u00e1s de respostas mais urgentes.<\/p>\n<p>Nos pr\u00f3ximos posts da s\u00e9rie, contarei detalhes por detalhes desta solu\u00e7\u00e3o e o porqu\u00ea\u00a0 lidar com diret\u00f3rios e mapeamento de unidade no SQL Server \u00e9 meio complicado \u00e0s vezes&#8230; Ent\u00e3o, se voc\u00ea quer entender tudo isso e mais um pouco, n\u00e3o perca!<\/p>\n<p>At\u00e9 mais!<\/p>\n<p>Fontes e Links \u00dateis<\/p>\n<ul>\n<li>Create Azure File Share<br \/>\n<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/files\/storage-how-to-use-files-windows\">https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/files\/storage-how-to-use-files-windows<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<div class=\"seriesmeta\">This entry is part 1 of 5 in the series <a href=\"https:\/\/thesqltimes.com\/blog\/series\/azure-file-share-sql\/\" class=\"series-279\" title=\"Azure File Share no SQL Server\">Azure File Share no SQL Server<\/a><\/div><p>Finalmente, me rendi as maravilhas do Azure, e tenho dedicado um bom tempo resolver situa\u00e7\u00f5es que envolvam a queridinha da Microsoft! E claro, esta rendi\u00e7\u00e3o veio devido a v\u00e1rios cen\u00e1rios que aparecem envolvendo o meu querido SQL Server! Em uma situa\u00e7\u00e3o recente, um bom e velho conhecido problema: Mapear um um diret\u00f3rio de rede (aquele&hellip;&nbsp;<a href=\"https:\/\/thesqltimes.com\/blog\/2020\/02\/09\/azure-file-share-sql-1\/\" rel=\"bookmark\"><span class=\"screen-reader-text\">Azure File Share no SQL Server &#8211; [1] Cen\u00e1rio real<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[8,277,278,3,7,93],"tags":[280,284,281,285,282,73,283],"series":[279],"class_list":["post-1295","post","type-post","status-publish","format-standard","hentry","category-administracao","category-azure","category-azure-storage","category-banco-de-dados-2","category-sql-server","category-windows","tag-azure","tag-cmdkey","tag-file-share","tag-link-simbolico","tag-mapeamento","tag-sql-server","tag-unidade-de-rede","series-azure-file-share-sql"],"_links":{"self":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/comments?post=1295"}],"version-history":[{"count":14,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1295\/revisions"}],"predecessor-version":[{"id":1512,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1295\/revisions\/1512"}],"wp:attachment":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/media?parent=1295"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/categories?post=1295"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/tags?post=1295"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/series?post=1295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}