<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Blog Técnico MySQL Box</title>
		<link>https://mysqlbox.com.br/blog/</link>
		<description>Recent content on Blog Técnico MySQL Box</description>
		<generator>Hugo</generator>
		<language>pt-BR</language>
		
		
		
		
			<lastBuildDate>Sat, 12 Sep 2026 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://mysqlbox.com.br/blog/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Índices compostos no MySQL: a regra do prefixo mais à esquerda</title>
				<link>https://mysqlbox.com.br/blog/indices-compostos-no-mysql-a-regra-do-prefixo-mais-a-esquerda/</link>
				<pubDate>Sat, 12 Sep 2026 00:00:00 +0000</pubDate>
				<guid>https://mysqlbox.com.br/blog/indices-compostos-no-mysql-a-regra-do-prefixo-mais-a-esquerda/</guid>
				<description>&lt;p&gt;Índice composto é a otimização com melhor custo-benefício do MySQL — e a mais mal entendida. O erro clássico: criar índices separados para cada coluna do &lt;code&gt;WHERE&lt;/code&gt; e não entender por que o MySQL continua fazendo varredura completa. A resposta está em uma regra: &lt;strong&gt;o prefixo mais à esquerda&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;como-um-índice-composto-é-armazenado&#34;&gt;Como um índice composto é armazenado&lt;/h2&gt;&#xA;&lt;p&gt;Um índice de múltiplas colunas é uma lista ordenada pela concatenação das colunas — como uma lista telefônica ordenada por sobrenome, depois nome. O índice:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Como ler o EXPLAIN do MySQL 8 sem medo</title>
				<link>https://mysqlbox.com.br/blog/como-ler-o-explain-do-mysql-8-sem-medo/</link>
				<pubDate>Fri, 04 Sep 2026 00:00:00 +0000</pubDate>
				<guid>https://mysqlbox.com.br/blog/como-ler-o-explain-do-mysql-8-sem-medo/</guid>
				<description>&lt;p&gt;O &lt;code&gt;EXPLAIN&lt;/code&gt; é o raio-X do MySQL: mostra o caminho que o otimizador escolheu para executar a consulta. O problema é que o output assusta — 12 colunas, valores como &lt;code&gt;ref_or_null&lt;/code&gt;, &lt;code&gt;Using filesort&lt;/code&gt;. Este guia traduz cada coluna no que realmente importa.&lt;/p&gt;&#xA;&lt;h2 id=&#34;o-básico-em-30-segundos&#34;&gt;O básico em 30 segundos&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;EXPLAIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;SELECT&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nome&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;pedidos&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;JOIN&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;clientes&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;ON&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;cliente_id&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WHERE&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;pago&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AND&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;p&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;criado_em&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;2026-06-01&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;A saída tem uma linha por tabela na consulta. A ordem das linhas é a ordem de leitura — o MySQL processa de cima para baixo, então a primeira linha é a tabela &amp;ldquo;motora&amp;rdquo; da junção.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Diagnóstico de slow queries no MySQL: o método completo</title>
				<link>https://mysqlbox.com.br/blog/diagnostico-de-slow-queries-no-mysql-o-metodo-completo/</link>
				<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
				<guid>https://mysqlbox.com.br/blog/diagnostico-de-slow-queries-no-mysql-o-metodo-completo/</guid>
				<description>&lt;p&gt;Consultas lentas raramente avisam antes de derrubar a aplicação. Elas se acumulam silenciosamente até que um pico de tráfego transforma um problema latente em incidente. Este artigo documenta o método que usamos em diagnósticos de performance: capturar, medir e priorizar — nessa ordem.&lt;/p&gt;&#xA;&lt;h2 id=&#34;1-ative-o-slow-query-log-corretamente&#34;&gt;1. Ative o slow query log (corretamente)&lt;/h2&gt;&#xA;&lt;p&gt;O primeiro passo é ter dados. Sem histórico de consultas lentas, qualquer otimização é chute. No MySQL 8, a configuração mínima recomendada:&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
