{"id":2575,"date":"2013-12-14T20:16:56","date_gmt":"2013-12-14T22:16:56","guid":{"rendered":"http:\/\/fabriciolima.net\/blog\/?p=2575"},"modified":"2025-01-07T20:44:36","modified_gmt":"2025-01-07T23:44:36","slug":"5-motivos-para-quem-utiliza-o-protheus-totvs-contratar-um-dba-sql-server","status":"publish","type":"post","link":"https:\/\/fabriciolima.net\/blog\/2013\/12\/14\/5-motivos-para-quem-utiliza-o-protheus-totvs-contratar-um-dba-sql-server\/","title":{"rendered":"5 motivos para quem utiliza o Protheus (Totvs) contratar um DBA SQL Server"},"content":{"rendered":"<p>Ol\u00e1 Pessoal,<\/p>\n<p>Trabalho com administra\u00e7\u00e3o de banco de dados SQL Server Protheus desde 2009 em um ambiente que considero de grande porte:<\/p>\n<ul>\n<li>Base de Dados de<strong> 300 GB<\/strong> completamente compactada \u00e0 n\u00edvel de p\u00e1gina, caso contr\u00e1rio j\u00e1 estaria passando de<strong> 1 TB<\/strong> de dados. (update em 28\/09\/2015 &#8211; 500 GB e 1.5 TB)<\/li>\n<li><strong>3.000 usu\u00e1rios<\/strong> simult\u00e2neos conectados no Top Connect.<\/li>\n<li>Tenho um Database Mirroring dessa base de dados do Protheus configurado para outro servidor para subir o ambiente em caso de desastre.<\/li>\n<\/ul>\n<p><!--more--><\/p>\n<p>Vejo muita gente em f\u00f3runs ou listas de e-mails sobre SQL Server reclamando de alguns pontos da arquitetura do banco de dados Protheus.<\/p>\n<p>Defendendo um pouco o lado da Totvs, o sistema deles \u00e9 feito para ser executado em todos os grandes bancos de dados do mercado, ent\u00e3o, acredito que por isso eles acabam fazendo algo um pouco mais gen\u00e9rico. Apesar se sempre me perguntar porque n\u00e3o existe algo do tipo na implanta\u00e7\u00e3o de um ambiente protheus:<\/p>\n<p>IF SGBD = &#8216;SQL Server&#8217;<br \/>\nexec Customiza\u00e7\u00f5es SQL Server<\/p>\n<p>IF SGBD = &#8216;Oracle&#8217;<br \/>\nexec Customiza\u00e7\u00f5es Oracle<\/p>\n<p>IF SGBD = &#8216;DB2&#8217;<br \/>\nexec Customiza\u00e7\u00f5es DB2<\/p>\n<p>A complexidade de fazer isso deve ser muito alta e\\ou o investimento nessa estrat\u00e9gia n\u00e3o vale a pena financeiramente para a empresa.<\/p>\n<p>Diante disso tudo, mesmo n\u00e3o sendo poss\u00edvel alterar queries padr\u00f5es do sistema Protheus, existem uma s\u00e9rie de a\u00e7\u00f5es que voc\u00ea pode fazer para melhorar a performance do seu ambiente Totvs Protheus com SQL Server. Por isso, se voc\u00ea tem problema de performance no seu ambiente Protheus e n\u00e3o quer comprar um servidor mais potente, o que normalmente \u00e9 a indica\u00e7\u00e3o da Totvs, <strong>segue abaixo 5 motivos para voc\u00ea contratar um DBA ou uma <a href=\"https:\/\/www.fabriciolima.net\/blog\/consultoria-remota\/\" target=\"_blank\" rel=\"noopener noreferrer\">Consultoria em SQL Server<\/a>:<\/strong><\/p>\n<p><strong>1 &#8211; Para realizar a cria\u00e7\u00e3o de novos \u00edndices para o ambiente Protheus<\/strong><\/p>\n<p>J\u00e1 come\u00e7o pelo ponto que eu acho mais problem\u00e1tico no banco de dados Totvs. 99% dos \u00edndices do Protheus come\u00e7am com a coluna FILIAL.<\/p>\n<p>Existe uma tabela no Protheus chamada SE1010 (empresa 1). Em uma base da vers\u00e3o 10 padr\u00e3o (sem customiza\u00e7\u00f5es), essa tabela possui 25 \u00edndices. O \u00edndice clustered \u00e9 a coluna R_E_C_N_O_ ( parte boa dos \u00edndices do Protheus) e, dos 24 \u00edndices nonclustered, 23 come\u00e7am com a coluna E1_FILIAL.<\/p>\n<p>Olhando como DBA, esses 23 \u00edndices s\u00e3o &#8220;praticamente&#8221; iguais, pois o SQL server montar\u00e1 a B-Tree do \u00edndice para fazer as buscas de forma mais r\u00e1pida por essa coluna. Se voc\u00ea procurar por um c\u00f3digo de cliente, uma data de emiss\u00e3o ou um c\u00f3digo de documento, ao inv\u00e9s do Protheus fazer uma busca por esses campos, ele vai filtrar primeiro a filial e s\u00f3 depois filtrar o campo principal que voc\u00ea quer buscar. Isso gera uma perda de performance incr\u00edvel. Se voc\u00ea s\u00f3 tem uma filial, o \u00edndice n\u00e3o filtra quase nada.<\/p>\n<p>Para amenizar esse problema, no meu ambiente identifiquei a necessidade de cria\u00e7\u00e3o de MUITOS \u00edndices customizados e isso melhorou demais o desempenho do nosso ambiente.<\/p>\n<p>Como seu \u00edndice customizado via SQL Server n\u00e3o est\u00e1 no dicion\u00e1rio de dados do Protheus, quando voc\u00ea realizar alguma atualiza\u00e7\u00e3o maior no seu ambiente, os \u00edndices podem ser exclu\u00eddos. Para resolver isso, deve ser criado um job para criar todos \u00edndices customizados caso eles ainda n\u00e3o existam (IF NOT EXISTS &#8230; CREATE INDEX &#8230;).<\/p>\n<p><strong>2 &#8211; Para desabilitar \u00edndices do Protheus <span style=\"color: #ff0000;\">*Necess\u00e1rio valida\u00e7\u00e3o com seu suporte Totvs e homologa\u00e7\u00e3o<\/span><\/strong><\/p>\n<p>N\u00e3o podemos nunca excluir um \u00edndice do Protheus, todavia, existe uma solu\u00e7\u00e3o de contorno para isso.<\/p>\n<p>Ao inv\u00e9s de excluir um \u00edndice, no SQL Server voc\u00ea pode desabilitar um \u00edndice. Dessa forma, o \u00edndice continua existindo na tabela sys.indexes, mas agora com o valor da coluna is_disable = 1. Como o Protheus n\u00e3o usa hints para for\u00e7ar a utiliza\u00e7\u00e3o de um \u00edndice (with index= XXX), o SQL Server \u00e9 quem escolhe o \u00edndice que deve ser usado quando uma consulta \u00e9 realizada na base. Caso o Protheus for\u00e7asse a utiliza\u00e7\u00e3o de um \u00edndice, ele n\u00e3o poderia ser desabilitado de forma alguma.<\/p>\n<p>Desabilitando o \u00edndice, o SQL Server libera o espa\u00e7o em disco ocupado por esse \u00edndice e n\u00e3o atualiza mais esse \u00edndice, reduzindo o custo das opera\u00e7\u00f5es de I\/O.<\/p>\n<p>Existem muitos \u00edndices criados pelo Protheus que n\u00e3o s\u00e3o usados, ainda mais quando voc\u00ea criar os \u00edndices customizados. Por isso, desabilitar esses \u00edndices pode trazer grandes ganhos de performance.<\/p>\n<p>Mas Fabr\u00edcio, e se eu come\u00e7ar a usar uma nova funcionalidade do Protheus que utilizaria esses \u00edndices que foram desabilitados?<\/p>\n<p>R: A necessidade de utilizar novos \u00edndices voc\u00ea tem que identificar com as queries mais lentas ou as que est\u00e3o consumindo mais recursos no seu banco de dados. Assim, voc\u00ea pode criar os \u00edndices necess\u00e1rios e melhorar essas queries. <strong>Esse monitoramento deve ser constante.<\/strong><\/p>\n<p>J\u00e1 homologuei e utilizei isso em produ\u00e7\u00e3o (vers\u00e3o 10) e n\u00e3o tive problema com suporte da Totvs. J\u00e1 vi pessoas da Totvs dizendo que eles podiam ser desabilitados e pessoas que usam Protheus dizendo que o suporte da Totvs n\u00e3o deixa realizar essa opera\u00e7\u00e3o. Dessa forma, fica como dica para validarem com o suporte Totvs e homologar no seu Protheus antes de colocar em produ\u00e7\u00e3o. Se o suporte dizer que n\u00e3o pode, pe\u00e7a uma explica\u00e7\u00e3o t\u00e9cnica para isso.<\/p>\n<p>Da mesma forma que deve ser criado um job para a recriar os \u00edndices, deve se criado um job para desabilitar os \u00edndices novamente caso uma atualiza\u00e7\u00e3o do Protheus crie eles novamente.<\/p>\n<p><strong>3 &#8211; Para alterar o FILLFACTOR dos \u00edndices<\/strong><\/p>\n<p>Todos os \u00edndices do Protheus s\u00e3o criados com o FILLFACTOR de 100%. Isso significa que as p\u00e1ginas s\u00e3o preenchidas por completo, o que gera gera um aumento na fragmenta\u00e7\u00e3o das p\u00e1ginas desses \u00edndices e tamb\u00e9m eleva o n\u00famero de Page Splits no ambiente (opera\u00e7\u00e3o de I\/O que divide uma p\u00e1gina em duas).<\/p>\n<p>Para melhorar o desempenho do seu Protheus SQL, voc\u00ea pode analisar os \u00edndices que est\u00e3o se fragmentando mais e\/ou gerando mais PAGE SPLIT e alterar o FILLFACTOR desses \u00edndices.<\/p>\n<p>Seguem dois artigos deste blog que podem te ajudar:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.fabriciolima.net\/blog\/2011\/08\/11\/como-monitorar-o-page-split-de-um-indice\/\" target=\"_blank\" rel=\"noopener noreferrer\">Como monitorar o Page Split de um \u00cdndice?<\/a><\/li>\n<li><a href=\"https:\/\/www.fabriciolima.net\/blog\/2011\/02\/26\/qual-o-valor-ideal-para-o-fillfactor-de-um-indice\/\" target=\"_blank\" rel=\"noopener noreferrer\">Qual o valor ideal para o FILLFACTOR de um \u00cdndice?<\/a><\/li>\n<\/ul>\n<p><strong>4 &#8211; Para realizar um expurgos de dados da base de produ\u00e7\u00e3o<\/strong><\/p>\n<p>Se sua \u00e1rea de tributos\\contabilidade precisa de cinco anos de dados ONLINE, deixe apenas cinco anos ONLINE. Se precisa de tr\u00eas anos, deixe apenas tr\u00eas anos.<\/p>\n<p>Voc\u00ea pode criar uma ou v\u00e1rias bases de hist\u00f3rico para que os dados da base de produ\u00e7\u00e3o sejam expurgados para essas bases. Dessa maneira, a performance do seu ambiente de produ\u00e7\u00e3o aumentar\u00e1 pois ser\u00e3o menos dados para o banco de produ\u00e7\u00e3o fazer uma busca.<\/p>\n<p><strong>5 &#8211; Para compactar tabelas e \u00edndices (dispon\u00edvel apenas na vers\u00e3o enterprise do SQL Server 2008\/2008R2\/2012)<\/strong><\/p>\n<p>Novamente utilizando a tabela SE1010 como exemplo, essa tabela possui na vers\u00e3o do Protheus 10 um total de <strong>228 colunas<\/strong>. <strong>\u00c9 isso mesmo, 228 colunas.<\/strong><\/p>\n<p>Achou isso impressionante?<\/p>\n<p>Para aumentar o problema, a tabela possui uma constraint DEFAULT para cada uma dessas colunas. Caso seja um n\u00famero ele preenche com zero, caso seja string ele preenche com espa\u00e7o em branco. Exemplo de uma constraint na tabela SE1010:<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus.png\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2581 aligncenter\" title=\"ConstraintProtheus\" src=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus.png\" alt=\"\" width=\"744\" height=\"52\" srcset=\"https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus.png 1073w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-300x21.png 300w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-1024x72.png 1024w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-768x54.png 768w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-700x49.png 700w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-410x29.png 410w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-100x7.png 100w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-275x19.png 275w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/ConstraintProtheus-20x1.png 20w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><\/a><\/p>\n<p>Esse \u00e9 um dos principais motivos que fazem a compacta\u00e7\u00e3o de p\u00e1ginas de tabelas do Protheus ter <strong>GANHOS IMPRESSIONANTES<\/strong>.<\/p>\n<p>Segue um exemplo de uma tabela antes e depois de uma compacta\u00e7\u00e3o de todos os seus \u00edndices \u00e0 n\u00edvel de p\u00e1gina:<\/p>\n<p><strong>Antes:<\/strong><\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao.png\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2583 aligncenter\" title=\"PreCompactacao\" src=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao.png\" alt=\"\" width=\"519\" height=\"45\" srcset=\"https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao.png 598w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao-300x26.png 300w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao-410x36.png 410w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao-100x9.png 100w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao-275x24.png 275w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PreCompactacao-20x2.png 20w\" sizes=\"auto, (max-width: 519px) 100vw, 519px\" \/><\/a><\/p>\n<p><strong>Depois:<\/strong><\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao.png\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2584 aligncenter\" title=\"PosCompactacao\" src=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao.png\" alt=\"\" width=\"522\" height=\"47\" srcset=\"https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao.png 457w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao-300x28.png 300w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao-410x38.png 410w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao-100x9.png 100w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao-275x25.png 275w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/PosCompactacao-20x2.png 20w\" sizes=\"auto, (max-width: 522px) 100vw, 522px\" \/><\/a><\/p>\n<p>De <strong>100 GB<\/strong> baixou para apenas <strong>19 GB<\/strong>. <strong>81 GB<\/strong> de ganho de espa\u00e7o em disco. Redu\u00e7\u00e3o de <strong>81%<\/strong> de espa\u00e7o utilizando a compacta\u00e7\u00e3o.<\/p>\n<p>A compacta\u00e7\u00e3o gera um aumento de consumo de CPU, mas al\u00e9m do ganho de espa\u00e7o em disco ($$), otimiza a utiliza\u00e7\u00e3o da mem\u00f3ria, pois como a tabela possui menos p\u00e1ginas, ela ocupa menos espa\u00e7o em mem\u00f3ria e mais tabelas conseguem permanecer no Data Cache do SQL. O Saldo final \u00e9 um ambiente com uma performance melhor.<\/p>\n<p><strong><span style=\"color: #ff0000;\">[Atualizado dia 17\/11\/2016]<\/span><\/strong> No <b>Service Pack 1 (SP1) do SQL Server 2016<\/b> uma s\u00e9rie de funcionalidades que antes eram exclusivas da <b>edi\u00e7\u00e3o Enterprise<\/b> agora est\u00e3o dispon\u00edveis nas <b>edi\u00e7\u00f5es Standard e Express<\/b>. E uma dessas funcionalidades \u00e9 a <b>Compress\u00e3o de Dados<\/b>. Esse era o motivo que voc\u00ea estava esperando para migrar o seu SQL Server do <b>Protheus\/RM<\/b> para a nova vers\u00e3o do <b>SQL Server 2016<\/b>. Como expliquei nesse post, a compress\u00e3o de dados no Protheus \u00e9 LINDA e agora est\u00e1 acess\u00edvel para n\u00f3s meros mortais que n\u00e3o temos condi\u00e7\u00f5es de comprar a edi\u00e7\u00e3o Enterprise.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-6825 aligncenter\" src=\"https:\/\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1.jpg\" width=\"480\" height=\"276\" srcset=\"https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1.jpg 480w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1-300x173.jpg 300w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1-410x236.jpg 410w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1-100x58.jpg 100w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1-275x158.jpg 275w, https:\/\/fabriciolima.net\/blog\/wp-content\/uploads\/2013\/12\/SQL_Server_2016_SP1-20x12.jpg 20w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/p>\n<p><strong>Dica Extra &#8211; N\u00e3o desabilite o auto create statistics<\/strong><\/p>\n<p>A indica\u00e7\u00e3o da Totvs \u00e9 para voc\u00ea desabilitar a op\u00e7\u00e3o auto create e update statistics e criar uma rotina para atualizar as estat\u00edsticas.<\/p>\n<p>A dica de criar uma rotina para atualizar as estat\u00edsticas \u00e9 excelente e tamb\u00e9m fa\u00e7o isso, contudo, n\u00e3o desabilito as op\u00e7\u00f5es de estat\u00edsticas do SQL Server, pois penso que ele pode criar novas estat\u00edsticas e atualizar estat\u00edsticas de tabelas menores para otimizar a performance. As tabelas maiores que podiam causar uma perda de performance, teriam as estat\u00edsticas atualizadas somente na rotina da noite.<\/p>\n<p>Segue post deste blog sobre esse assunto: <a href=\"https:\/\/www.fabriciolima.net\/blog\/2011\/06\/29\/rotina-para-atualizar-as-estatisticas-do-seu-banco-de-dados\/\" target=\"_blank\" rel=\"noopener noreferrer\">Rotina para Atualizar as Estat\u00edsticas do seu Banco de Dados<\/a><\/p>\n<p><strong>ARTIGO sobre Protheus (Totvs)\u00a0<\/strong><\/p>\n<p>Fiz uma busca no google e encontrei apenas o artigo abaixo do meu amigo Marcel\u00a0Inowe\u00a0 (<a href=\"http:\/\/4sqlserver.wordpress.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Blog<\/a>|<a href=\"https:\/\/twitter.com\/inowe_br\" target=\"_blank\" rel=\"noopener noreferrer\">Twitter<\/a>) falando sobre o assunto e nele tem uma dica que ainda n\u00e3o implantei em produ\u00e7\u00e3o que \u00e9 o <strong>particionamento de tabelas<\/strong>. Mais uma a\u00e7\u00e3o que posso realizar para melhorar o desempenho do meu ambiente SQL Server com Protheus. <strong>Seria o sexto motivo para contratar um DBA ou uma Consultoria SQL SERVER<\/strong>.<\/p>\n<p>Artigo: <a href=\"http:\/\/4sqlserver.wordpress.com\/2012\/09\/12\/dicas-sobre-o-banco-de-dados-do-protheustotvs\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/4sqlserver.wordpress.com\/2012\/09\/12\/dicas-sobre-o-banco-de-dados-do-protheustotvs\/<\/a><\/p>\n<p>Finalizando esse post, para quem est\u00e1 com problema de performance OU n\u00e3o quer que um problema de performance aconte\u00e7a em seu ambiente Protheus com SQL Server, voc\u00ea tem tr\u00eas op\u00e7\u00f5es:<\/p>\n<ul>\n<li>Caso voc\u00ea j\u00e1 tenha um DBA na sua empresa, ele pode trabalhar nessas customiza\u00e7\u00f5es caso ainda n\u00e3o tenha feito.<\/li>\n<li>Caso sua empresa seja pequena e n\u00e3o tenha um DBA FULL Time, pode contratar meus servi\u00e7os de <a href=\"https:\/\/www.fabriciolima.net\/blog\/consultoria-remota\/\" target=\"_blank\" rel=\"noopener noreferrer\">Consultoria SQL Server<\/a> ou o servi\u00e7o de consultoria de outra empresa para implementar essas melhorias.<\/li>\n<li>Comprar um Hardware de maior desempenho, que na maioria das vezes \u00e9 a solu\u00e7\u00e3o indicada pela Totvs.<\/li>\n<\/ul>\n<p>Antes de comprar um servidor novo para resolver um problema de lentid\u00e3o no seu ambiente, contrate um especialista SQL Server e pe\u00e7a para ele fazer um Tuning no seu banco de dados. A economia de n\u00e3o comprar um novo Hardware vai pagar a consultoria e ainda sobrar\u00e1 $$!<\/p>\n<p>Caso sua empresa n\u00e3o tenha um DBA FULL Time e voc\u00ea al\u00e9m de ser respons\u00e1vel pela aplica\u00e7\u00e3o do protheus, tamb\u00e9m \u00e9 respons\u00e1vel pelo banco de dados, esse treinamento abaixo vai te ajudar muito:<\/p>\n<p>Tarefas do Dia a Dia de um DBA:\u00a0<a href=\"https:\/\/www.fabriciolima.net\/blog\/cursos-online\/treinamento-tarefas-do-dia-a-dia-de-um-dba-online\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.fabriciolima.net\/blog\/cursos-online\/treinamento-tarefas-do-dia-a-dia-de-um-dba-online\/<\/a><\/p>\n<p>Se n\u00e3o possui ningu\u00e9m interno para aprender a trabalhar com banco, posso ajudar com minha <a href=\"https:\/\/www.fabriciolima.net\/blog\/consultoria-remota\/melhorias-de-performance\/\" target=\"_blank\" rel=\"noopener noreferrer\">Consultoria de Tuning<\/a>.<\/p>\n<p><strong><span style=\"color: #ff0000;\">[Atualizado dia 29\/05\/2017]<\/span> <\/strong><b>J\u00e1 realizei consultoria em mais de 22 empresas com banco de dados Totvs Protheus ou RM e posso dar refer\u00eancias para contato.<\/b><\/p>\n<p><strong><span style=\"color: #ff0000;\">[Atualizado dia 29\/05\/2017]<\/span> <\/strong>Segue abaixo um caso real de migra\u00e7\u00e3o do SQL Server 2008 para o SQL Server 2016:<br \/>\n<a href=\"https:\/\/www.fabriciolima.net\/blog\/2017\/05\/23\/migrando-um-sql-server-2008-totvs-protheus-para-o-sql-server-2016-standard\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.fabriciolima.net\/blog\/2017\/05\/23\/migrando-um-sql-server-2008-totvs-protheus-para-o-sql-server-2016-standard\/<\/a><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\"><strong>[Atualizado no dia 07\/10\/2020] <\/strong><\/span>Publiquei um curso com 11 horas de dura\u00e7\u00e3o com toda minha experi\u00eancia de anos no assunto e de dezenas de clientes Protheus atendidos:<\/p>\n<p>Curso:\u00a0<a class=\"external-link wpel-icon-left\" href=\"https:\/\/cursos.powertuning.com.br\/course?courseid=melhorando-a-performance-de-consultas-no-totvs-protheus\" target=\"_blank\" rel=\"external noopener noreferrer nofollow\" data-wpel-link=\"external\">Melhorando a Performance de Consultas no Totvs Protheus<\/a><\/p>\n<p>Gravei uma aula gr\u00e1tis com 60 minutos de dura\u00e7\u00e3o sobre o que voc\u00ea deve aprender para melhorar a performance no Protheus:<\/p>\n<div class=\"fluid-width-video-wrapper\"><a class=\"external-link wpel-icon-left\" href=\"https:\/\/www.youtube.com\/watch?v=BKmUa3aZn6s\" target=\"_blank\" rel=\"noopener noreferrer nofollow external\" data-wpel-link=\"external\">https:\/\/www.youtube.com\/watch?v=BKmUa3aZn6s<\/a><\/div>\n<div><\/div>\n<div><\/div>\n<div><span style=\"color: #ff0000;\"><strong>[Atualizado no dia 19\/06\/2024]<\/strong><\/span><\/div>\n<div><\/div>\n<div>Agora o DBA que \u00e9 respons\u00e1vel por um SQL Server com Protheus ainda pode contar com o Power Alerts, uma ferramenta completa de monitoramento que nos ajuda a identificar se o problema de lentid\u00e3o no ambiente \u00e9 no Banco de Dados, na Infra ou no ERP.<\/div>\n<div><\/div>\n<div>Receba alertas para identificar problemas antes que eles fiquem mais graves.<\/div>\n<div><\/div>\n<div>Conhe\u00e7a mais detalhes do Power Alerts: <a href=\"http:\/\/www.poweralerts.com.br\" target=\"_blank\" rel=\"noopener\">www.poweralerts.com.br<\/a><\/div>\n<div><\/div>\n<div><strong><span style=\"color: #ff0000;\">[Atualizado no dia 07\/01\/2025]<\/span><\/strong> Acabei de escrever um novo post atualizado no Blog da Power Tuning com 10 motivos para quem tem um Protheus (Totvs) contratar o Power Alerts.<\/div>\n<ul>\n<li><a href=\"https:\/\/powertuning.com.br\/10-motivos-para-quem-usa-o-protheus-totvs-implementar-o-power-alerts\/\" target=\"_blank\" rel=\"noopener\">https:\/\/powertuning.com.br\/10-motivos-para-quem-usa-o-protheus-totvs-implementar-o-power-alerts\/<\/a><\/li>\n<\/ul>\n<div><\/div>\n<p><b>Gostou dessa Dica?<\/b><\/p>\n<p>Curta, comente, compartilhe\u2026<\/p>\n<p>Assine meu canal no <a href=\"https:\/\/www.youtube.com\/channel\/UCeBRAO_LLrUdSrOXIywjzRA\" target=\"_blank\" rel=\"noopener noreferrer\">Youtube<\/a> e curta minha p\u00e1gina no <a class=\"external-link wpel-icon-left\" href=\"https:\/\/www.facebook.com\/FabricioLimaSolucoesemBancodeDados\/\" target=\"_blank\" rel=\"nofollow external noopener noreferrer\" data-wpel-link=\"external\">Facebook<\/a> para receber Dicas de Leituras, V\u00eddeos e Eventos sobre SQL Server.<\/p>\n<p>At\u00e9 a pr\u00f3xima.<\/p>\n<p>Fabr\u00edcio Lima<\/p>\n<p>MCITP \u2013 Database Administrator<\/p>\n<p>Consultor e Instrutor SQL Server<\/p>\n<p>Trabalha com SQL Server desde 2006<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ol\u00e1 Pessoal, Trabalho com administra\u00e7\u00e3o de banco de dados SQL Server Protheus desde 2009 em um ambiente que considero de grande porte: Base de Dados de 300 GB completamente compactada \u00e0 n\u00edvel de p\u00e1gina, caso contr\u00e1rio j\u00e1 estaria passando de 1 TB de dados. (update em 28\/09\/2015 &#8211; 500 GB e 1.5 TB) 3.000 usu\u00e1rios [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[3,5,942,991,33,280],"tags":[15,1031,1032,1027,1028,1101,1099,1100,1097,1098,1096,1048,1044,1103,942,1102,1058,1037,1056,1054,23,1029,1030,1088,1089,1025,1026,1049,1045,110,1034,1033,1016,1040,1019,1035,1042,1023,1024,1046,1021,1020,1039,1014,1053,1022,1018,1059,1047,1041,1036,1052,1060,1038,1051,33,1057,1017,1015,1055,1050,1043],"class_list":["post-2575","post","type-post","status-publish","format-standard","hentry","category-administracao-de-bd","category-carreira","category-consultoria-sql-server","category-dba-remoto","category-sql-server","category-virtual-pass-br","tag-banco-de-dados","tag-banco-protheus","tag-banco-totvs","tag-compactacao-de-dados","tag-compression","tag-consultor-crm","tag-consultor-datasul","tag-consultor-microsiga","tag-consultor-protheus","tag-consultor-rm","tag-consultor-totvs","tag-consultoria-microsiga","tag-consultoria-protheus","tag-consultoria-rm","tag-consultoria-sql-server","tag-consultoria-totvs","tag-crm","tag-datasul","tag-datasul-erp","tag-datasul-totvs","tag-dba","tag-dba-protheus","tag-dba-totvs","tag-dica-banco-de-dados-protheus","tag-dicas-banco-de-dados-protheus","tag-erp","tag-erp-com-sql-server","tag-erp-microsiga","tag-erp-protheus","tag-indice","tag-lentidao-banco-de-dados","tag-lentidao-protheus","tag-microsiga","tag-microsiga-protheus","tag-microsiga-sql-server","tag-performance-protheus","tag-protheus","tag-protheus-10","tag-protheus-11","tag-protheus-microsiga","tag-protheus-microsoft-sql-server","tag-protheus-sql-server","tag-protheus-totvs","tag-prothues","tag-rm-sistemas","tag-rm-sql-server","tag-siga","tag-sistema-crm","tag-sistema-microsiga","tag-sistema-protheus","tag-sistema-rm","tag-sistema-rm-totvs","tag-sistema-wms","tag-sistemas-de-gestao","tag-sistemas-erp","tag-sql-server","tag-suporte-totvs","tag-top-connect","tag-totvs","tag-totvs-datasul","tag-totvs-microsiga","tag-totvs-protheus"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts\/2575","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/comments?post=2575"}],"version-history":[{"count":6,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts\/2575\/revisions"}],"predecessor-version":[{"id":20367,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts\/2575\/revisions\/20367"}],"wp:attachment":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/media?parent=2575"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/categories?post=2575"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/tags?post=2575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}