{"id":445,"date":"2022-08-12T20:09:54","date_gmt":"2022-08-12T23:09:54","guid":{"rendered":"https:\/\/hackerzone.com.br\/blog\/?p=445"},"modified":"2022-08-12T22:41:25","modified_gmt":"2022-08-13T01:41:25","slug":"como-turbinar-o-banco-de-dados-mysql-xampp","status":"publish","type":"post","link":"http:\/\/hackerzone.com.br\/blog\/como-turbinar-o-banco-de-dados-mysql-xampp\/","title":{"rendered":"Como turbinar o banco de dados MySQL &#8211; XAMPP"},"content":{"rendered":"<p>O processo de turbinar o banco de dados \u00e9 de extrema import\u00e2ncia para manter estabilidade em empresas\/corpora\u00e7\u00f5es que lidam com muitos dados, ou at\u00e9 mesmo sites\/sistemas com grande requisi\u00e7\u00e3o de dados.<\/p>\n<p>Por vezes o investimento em hardware n\u00e3o resolve todos os problemas, as configura\u00e7\u00f5es precisam estar de acordo para alcan\u00e7ar o m\u00e1ximo do hardware.<\/p>\n<p>Para turbinar seu mysql voc\u00ea precisa melhorar as queries no banco, fazendo as altera\u00e7\u00f5es corretas nas vari\u00e1veis sort, join, key, innodb, pool, commit, max_connection, concurrency, entre outras vari\u00e1veis dispon\u00edveis voc\u00ea provavelmente ir\u00e1 resolver seus problemas de performance.<\/p>\n<p>Principalmente quando voc\u00ea esta lidando com o xampp que vem por padr\u00e3o com configura\u00e7\u00f5es muito baixas.<\/p>\n<p>O mysql possui vari\u00e1veis de ambiente que voc\u00ea pode realizar consultas para verificar suas configura\u00e7\u00f5es, dentre elas &#8220;<strong>variables<\/strong>&#8220;.<\/p>\n<p>Para visualizar digite:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nSHOW VARIABLES;\r\n<\/pre>\n<p>Para ver estat\u00edsticas e indicadores de status para um servidor em execu\u00e7\u00e3o:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nSHOW STATUS;\r\n<\/pre>\n<p>O Mysql pode ser executado com pouqu\u00edssima mem\u00f3ria, pois seus algoritimos s\u00e3o muito escal\u00e1veis. No entando para obter resultados melhores voc\u00ea precisa aumentar a mem\u00f3ria utilizada.<\/p>\n<p>Existem duas vari\u00e1veis que s\u00e3o de extrema import\u00e2ncia, s\u00e3o elas: &#8220;<strong>key_buffer_size<\/strong>&#8221; e &#8220;<strong>table_open_cache<\/strong>&#8220;. Essas duas vari\u00e1veis s\u00e3o muito importantes e para alterar qualquer outra voc\u00ea precisa ter confian\u00e7a de que realizou as configura\u00e7\u00f5es corretas.<\/p>\n<p>Veja exemplos para diferentes configura\u00e7\u00f5es:<\/p>\n<p>Pelo menos de 1 a 2GB de mem\u00f3ria e vari\u00e1veis tabelas pode obter o m\u00e1ximo de desempenho seguindo o exemplo:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nshell&gt; mysqld_safe --key_buffer_size=384M --table_open_cache=4000 --sort_buffer_size=4M --read_buffer_size=1M &amp;\r\n<\/pre>\n<p>Com apenas 256MB de mem\u00f3ria e apenas algumas mesas:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nshell&gt; mysqld_safe --key_buffer_size=64M --sort_buffer_size=1M\r\n<\/pre>\n<p>Se tiver muitas conex\u00f5es simult\u00e2neas, pode ocorrer problemas de trocas, o mysqld tem melhor desempenho se voc\u00ea tem mem\u00f3ria suficiente para todas as conex\u00f5es.<\/p>\n<p>Com pouca mem\u00f3ria e muitas conex\u00f5es utilize:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nshell&gt; mysqld_safe --key_buffer_size=512K --sort_buffer_size=100K --read_buffer_size=100K &amp;\r\n<\/pre>\n<p>Para acelerar a leitura de registros seguintes opera\u00e7\u00f5es de classifica\u00e7\u00e3o com GROUP BY e ORDER BY altere a vari\u00e1vel &#8220;<strong>read_rnd_buffer_size<\/strong>&#8221;<\/p>\n<h3>Configurando MySQL para uso do WordPress<\/h3>\n<p>Geralmente utilizamos para os bancos do WordPress o InnoDB e para uma configura\u00e7\u00e3o segura voc\u00ea precisa estudar o uso de ram do sistema operacional, al\u00e9m disso monitorar o uso da mem\u00f3ria do pr\u00f3prio MySQL e para tal voc\u00ea pode utilizar o MySQL Enterprise Monitor.<\/p>\n<p>Basicamente na instala\u00e7\u00e3o voc\u00ea precisa configurar uma vari\u00e1vel principal sendo ela a &#8220;<strong>innodb_buffer_pool_size<\/strong>&#8221;<\/p>\n<p>O buffer pool do InnoDB \u00e9 o espa\u00e7o de mem\u00f3ria que cont\u00e9m muitas estruturas de dados na mem\u00f3ria do InnoDB, buffers, caches, \u00edndices e at\u00e9 mesmo dados de linha.<\/p>\n<p>O &#8220;<strong>innodb_buffer_pool_size<\/strong>&#8221; \u00e9 o par\u00e2metro de configura\u00e7\u00e3o do MySQL que especifica a quantidade de mem\u00f3ria alocada para o pool de buffer InnoDB pelo MySQL. Esta \u00e9 uma das configura\u00e7\u00f5es mais importantes na configura\u00e7\u00e3o de hospedagem do MySQL e deve ser configurada com base na RAM do sistema dispon\u00edvel.<\/p>\n<p>Geralmente &#8220;a galera&#8221; configura com 70% \u2013 80% da RAM do sistema, por\u00e9m se voc\u00ea possue mem\u00f3ria RAM de sobra como 256GB 80% seria apenas 204.8GB, sendo que provavelmente voc\u00ea poder\u00e1 definir como 240GB.<\/p>\n<p><strong>Para sistemas com pouca mem\u00f3ria RAM. Ex com <= 1GB<\/strong><br \/>\nDeixa na configura\u00e7\u00e3o padr\u00e3o ou com o m\u00e1ximo de 128MB<\/p>\n<p><strong>Para sistemas com RAM de tamanho m\u00e9dio 1GB &#8211; 32GB<\/strong><br \/>\n1 &#8211; Retire o valor que o sistema operacional necessita.<br \/>\n2 &#8211; Retire o valor que as outras aplica\u00e7\u00f5es do sistema necessitam.<br \/>\n3 &#8211; Retire o valor que o pr\u00f3prio MySQL requer.<\/p>\n<p><strong>O valor que restar pode definir para o buffer do InnoDB<\/strong><\/p>\n<p><strong>Ex: Sistema com 8GB de RAM:<\/strong><br \/>\n1) 1GB<br \/>\n2) 600MB<br \/>\n3) 256MB<br \/>\nSendo assim poderia definir meu InnoDB Buffer com valor de 6.1GB (Sim estou passando um exemplo completamente rid\u00edculo, \u00e9 apenas para exemplificar.)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>O processo de turbinar o banco de dados \u00e9 de extrema import\u00e2ncia para manter estabilidade em empresas\/corpora\u00e7\u00f5es que lidam com muitos dados, ou at\u00e9 mesmo sites\/sistemas com grande requisi\u00e7\u00e3o de dados. Por vezes o investimento em hardware n\u00e3o resolve todos os problemas, as configura\u00e7\u00f5es precisam estar de acordo para alcan\u00e7ar o m\u00e1ximo do hardware. Para [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":447,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[210,152,127],"tags":[17,213,211,212,90],"class_list":["post-445","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mysql","category-sql","category-xampp","tag-mysql","tag-mysql-wordpress","tag-mysql-xampp","tag-turbinar-mysql","tag-xampp","cat-210-id","cat-152-id","cat-127-id","has_thumb"],"_links":{"self":[{"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/posts\/445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/comments?post=445"}],"version-history":[{"count":3,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/posts\/445\/revisions"}],"predecessor-version":[{"id":450,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/posts\/445\/revisions\/450"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/media\/447"}],"wp:attachment":[{"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/media?parent=445"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/categories?post=445"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/hackerzone.com.br\/blog\/wp-json\/wp\/v2\/tags?post=445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}