{"id":1773,"date":"2025-01-09T11:11:35","date_gmt":"2025-01-09T14:11:35","guid":{"rendered":"https:\/\/thesqltimes.com\/blog\/?p=1773"},"modified":"2025-07-23T18:18:52","modified_gmt":"2025-07-23T21:18:52","slug":"novos-scripts-no-repositorio-sqlserver-lib","status":"publish","type":"post","link":"https:\/\/thesqltimes.com\/blog\/2025\/01\/09\/novos-scripts-no-repositorio-sqlserver-lib\/","title":{"rendered":"Novos Scripts no Reposit\u00f3rio sqlserver-lib"},"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=\"1773\" 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><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>\n<p>Ol\u00e1 pessoa,<\/p>\n\n\n\n<p>Estou a todo vapor revisando e adicionando novos script ao<a href=\"https:\/\/thesqltimes.com\/blog\/2025\/01\/08\/10-anos-de-scripts-sql-server-gratuitamente-no-github\/\"> reposit\u00f3rio sqlserver-lib<\/a>. Aqui est\u00e1 uma descri\u00e7\u00e3o do que foi adicionado at\u00e9 aqui:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Script<\/strong><\/td><td><strong>Descri\u00e7\u00e3o<\/strong><\/td><\/tr><tr><td>AlwaysON\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/AlwaysOn\/DatabaseReplicaStates.sqlcmd.sql\">DatabaseReplicaStates.sqlcmd.sql<\/a><\/td><td>Consulta, usando o SQLCMD mode, informa\u00e7\u00f5es sobre o sincronismo dos bancos no AlwaysON. \u00datil para comparar informa\u00e7\u00f5es entre prim\u00e1rio e secund\u00e1rio.<\/td><\/tr><tr><td>AlwaysON\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/AlwaysOn\/GenerateRoutingURL.sql\">GenerateRoutingURL.sql<\/a><\/td><td>Gera o routing URL para ser configurado no AlwaysON usando as portas atuais do servi\u00e7o<\/td><\/tr><tr><td>Audit\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Audit\/QueryAuditFile.sql\">QueryAuditFile.sql<\/a><\/td><td>Consulta um arquivo gerado pelo fecurso de Server Audit. Faz alguns joins com DMVs para trazer o nome dos eventos<\/td><\/tr><tr><td>Backups\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Backups\/AddLogicDevice.sql\">AddLogicDevice.sql<\/a><\/td><td>Exemplo de como adicionar um logic device (acho que s\u00f3 vi isso em produ\u00e7\u00e3o uma vez)<\/td><\/tr><tr><td>Backups\\Backup\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Backups\/Backup\/BackupVolumetria_PorPeriodo.sql\">BackupVolumetria_PorPeriodo.sql<\/a><\/td><td>Gera um relat\u00f3rio de volumetria de backup, permitindo ter estimativa de quanto de backup sua inst\u00e2ncia gera, podendo ver por banco e por per\u00edodo (mensal, anual, di\u00e1rio, etc.)<\/td><\/tr><tr><td>Backups\\Restore\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Backups\/Restore\/LastRestores.sql\">LastRestores.sql<\/a><\/td><td>Lista informa\u00e7\u00f5es do \u00faltimo restore feito em cada banco de dados, como data, tamanho do backup usado, origem, etc.<\/td><\/tr><tr><td>CDC\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/CDC\/ValidarCdcRoleMembers.sql\">ValidarCdcRoleMembers.sql<\/a><\/td><td>Valida se Logins est\u00e3o nas Roles do CDC e, se n\u00e3o tiver, gera o script para incluir. \u00datil para quem usa CDC e precisa periodicamente recriar e garantir que os usu\u00e1rios estejam configurados corretamente<\/td><\/tr><tr><td>CLR\\<a class=\"Link--primary\" title=\"SqlLabClr.create.sql\" href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/CLR\/SqlLabClr.create.sql\" aria-label=\"SqlLabClr.create.sql, (File)\">SqlLabClr.create.sql<\/a><\/td><td>Aqui tem v\u00e1rios arquivos, sql e powershell.&nbsp; Eles s\u00e3o um exemplo simples de como voc\u00ea pode compilar c\u00f3digo CLR sem instalar o Visual Studio. \u00datil para testar algo no seu ambiente e come\u00e7ar a aprender usar CLR.<\/td><\/tr><tr><td>Checkdb\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Checkdb\/PerTableCheck.sql\">PerTableCheck.sql<\/a><\/td><td>&nbsp;Executa um CHECKDB para cada tabela do banco atual. \u00datil para quando o CHECKDB falha e voc\u00ea precisa determinar quais tabelas est\u00e3o boas ou n\u00e3o<\/td><\/tr><tr><td>&nbsp;Criptografia\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Criptografia\/demo-DesmistificandoCriptografia.sql\">demo-DesmistificandoCriptografia.sql<\/a><\/td><td>&nbsp;Demo simples demonstrando o uso de criptografia b\u00e1sica no SQL Server<\/td><\/tr><tr><td>Index\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Index\/sp_skindex.sql\">sp_skindex.sql<\/a><\/td><td>Scripts necess\u00e1rios para criar a sp_helpindex2, que eu renomiei para sp_skindex (n\u00e3o lembro o porqu\u00ea escolhi esse nome). O script foi criado por Paul Randal + Kimberly Tripp, eu s\u00f3 guardei aqui para ficar f\u00e1cil<\/td><\/tr><tr><td>Misc\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Misc\/ProcurarTexto.sql\">ProcurarTexto.sql<\/a><\/td><td>Procura uma string em todas as tabelas do banco atual que possuem colunas de texto  ou sql_variant<\/td><\/tr><tr><td>Misc\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Misc\/sp.ForceOledbWait.sql\">sp.ForceOledbWait.sql<\/a><\/td><td>Cont\u00e9m uma proc e instru\u00e7\u00f5es para simular um wait OLEDB, \u00fatil para debugar como esse wait funciona<\/td><\/tr><tr><td>Tables\\<a href=\"https:\/\/github.com\/rrg92\/sqlserver-lib\/blob\/main\/Tables\/TableSize2.sql\">TableSize2.sql<\/a><\/td><td>Traz informa\u00e7\u00f5es do consumo de espa\u00e7o, por tabela, do banco atual. Traz o consumo total, espa\u00e7o usado por \u00edndice, espa\u00e7o comprimido, espa\u00e7o LOB, etc. Bem \u00fatil para mapear quais tabelas mais consomem espa\u00e7o do seu banco de dados<\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>&nbsp;<\/p>\n\n\n\n<p>\u00a0<\/p>\n\n\n\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ol\u00e1 pessoa, Estou a todo vapor revisando e adicionando novos script ao reposit\u00f3rio sqlserver-lib. Aqui est\u00e1 uma descri\u00e7\u00e3o do que foi adicionado at\u00e9 aqui: Script Descri\u00e7\u00e3o AlwaysON\\DatabaseReplicaStates.sqlcmd.sql Consulta, usando o SQLCMD mode, informa\u00e7\u00f5es sobre o sincronismo dos bancos no AlwaysON. \u00datil para comparar informa\u00e7\u00f5es entre prim\u00e1rio e secund\u00e1rio. AlwaysON\\GenerateRoutingURL.sql Gera o routing URL para ser&hellip;&nbsp;<a href=\"https:\/\/thesqltimes.com\/blog\/2025\/01\/09\/novos-scripts-no-repositorio-sqlserver-lib\/\" rel=\"bookmark\"><span class=\"screen-reader-text\">Novos Scripts no Reposit\u00f3rio sqlserver-lib<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":1971,"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":[1],"tags":[410,411,408,409,33,407,412,403,177,71,111],"series":[],"class_list":["post-1773","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-adm","tag-administracao-2","tag-checkdb","tag-da","tag-dba","tag-dbcc","tag-dev","tag-git","tag-scripts","tag-sql","tag-tsql"],"_links":{"self":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1773","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=1773"}],"version-history":[{"count":4,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1773\/revisions"}],"predecessor-version":[{"id":1972,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/posts\/1773\/revisions\/1972"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/media\/1971"}],"wp:attachment":[{"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/media?parent=1773"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/categories?post=1773"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/tags?post=1773"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/thesqltimes.com\/blog\/wp-json\/wp\/v2\/series?post=1773"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}