<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Diário de Códigos &#187; MySQL</title>
	<atom:link href="http://diariodecodigos.info/category/banco-de-dados/mysql-banco-de-dados/feed/" rel="self" type="application/rss+xml" />
	<link>http://diariodecodigos.info</link>
	<description>Codigos Fonte, Artigos e Dicas</description>
	<lastBuildDate>Wed, 11 Apr 2012 18:56:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Dica Rápida: MySQL</title>
		<link>http://diariodecodigos.info/2010/09/dica-rapida-mysql/</link>
		<comments>http://diariodecodigos.info/2010/09/dica-rapida-mysql/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 01:37:40 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Banco de Dados]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=1103</guid>
		<description><![CDATA[Dica rápida: estava criando um shell script onde eu fazia um select e tinha que excluir o cabeçalho (header) da resposta, a solução é simples, no comando do cliente utilize o parâmetro &#8211;skip-column-names. Abraços]]></description>
			<content:encoded><![CDATA[<p>Dica rápida: estava criando um shell script onde eu fazia um select e tinha que excluir o cabeçalho (header) da resposta, a solução é simples, no comando do cliente utilize o parâmetro <strong>&#8211;skip-column-names</strong>.</p>
<p><span id="more-1103"></span></p>
<p>Abraços</p>
<ul id="teste"></ul>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/09/dica-rapida-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica: Backup do MySQL + FTP</title>
		<link>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/</link>
		<comments>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 12:51:59 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[MySql]]></category>
		<category><![CDATA[shell script]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=827</guid>
		<description><![CDATA[Esta dica é um script que eu utilizo muito nos meus servidores MySQL, normalmente para fazer um backup diário.]]></description>
			<content:encoded><![CDATA[<p><a href="http://diariodecodigos.info/wp-content/uploads/2010/02/MySQL.jpg"><img class="alignleft size-full wp-image-828" title="MySQL" src="http://diariodecodigos.info/wp-content/uploads/2010/02/MySQL.jpg" alt="" width="117" height="71" /></a>Esta dica é um script que eu utilizo muito nos meus servidores MySQL, normalmente para fazer um backup diário.</p>
<p>Não basta apenas fazer o backup, se o HD der defeito perderemos ele, então muito normalmente eu envio o backup para outro lugar, nesse script após o backup, o mesmo é enviado via FTP para outro servidor, ou máquina, seja lá para onde, garantindo que você tenha sempre uma cópia fora.</p>
<p>O MySQL não tem scheduler, então eu agendo essa tarefa no CRON (Agendador de Tarefas do Linux).<span id="more-827"></span></p>
<pre class="brush: bash;">
#!/bin/sh

caminhoLocal=&quot;/home/alexandre/www/backup-d/filesSQL/&quot;
cd $caminhoLocal

dataAgora=`date +%Y-%m-%d-%H.%M`
hostname=&quot;servidor2&quot;
username=&quot;alexandre&quot;
password=&quot;654321&quot;

# CRIA O ARQUVIO BACKUP DO MYSQL
mysqldump -u root -p654321 -x --add-drop-table -B banco1 | gzip &gt; backup-&quot;$dataAgora&quot;-banco1-MySQL.sql.gz

# BUSCA O NOME DO ARQUIVO BACKUP E ARMAZENA NA VARIÁVEL
# PARA ENVIAR VIA FTP
arquivo=`ls backup* | sort | sed '$!d'`

lftp &lt;&lt;FTP
open $hostname
user $username $password&gt;/dev/null
cd www/backup-SQL-nevada
put $arquivo
bye
FTP
</pre>
<p><span style="color: #0000ff;"><strong>Linha 3</strong></span> &#8211; &gt;É criado a variável &#8220;<em>caminhoLocal</em>&#8221; com o caminho ao diretório onde os backups serão armazenados</p>
<p><span style="color: #0000ff;"><strong>Linha 4</strong></span> -&gt; O script entra dentro do diretório armazenado na variável &#8220;<em>caminhoLocal</em>&#8221;</p>
<p><span style="color: #0000ff;"><strong>Linha 6</strong></span> -&gt; é criado a variável &#8220;<em>dataAgora</em>&#8221; onde será atribuido a data do dia, observem que o conteúdo da variável está entre crase ` onde indica ao shell script para executar aquele comando e armazenar o output dele na variável.</p>
<p><span style="color: #0000ff;"><strong>Linha 7</strong></span> <span style="color: #0000ff;"><strong>a </strong></span><span style="color: #0000ff;"><strong>Linha 9</strong></span> -&gt; são criados as variáveis que utilizaremos para a conexão do FTP</p>
<p><span style="color: #0000ff;"><strong>Linha 12</strong></span> -&gt; é criado o backup utilizando a ferramento &#8220;<em><strong>mysqldump</strong></em>&#8221; (<a title="MySQL Dump" href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html" target="_blank">Documentação do MySQL Dump</a>) e a saída do backup é compactada utilizando o <strong>gzip</strong> (<a title="Gnu Zip" href="http://www.gzip.org/" target="_blank">Gnu zip</a>) e o arquivo é nomeado, ficando com a seguinte aparência: &#8220;backup-2010-02-01-11.30-banco2-MySQL.sql.gz&#8221;.</p>
<p><span style="color: #0000ff;"><strong>Linha 16</strong></span> -&gt; armazena na variável &#8220;<em>arquivo</em>&#8221; o nome do último arquivo de backup feito.</p>
<p><span style="color: #0000ff;"><strong>Linha 18 a 24</strong></span> -&gt; usa o<strong> lftp</strong> (<a title="LFTP" href="http://lftp.yar.ru/" target="_blank">Sophisticated file transfer program</a>) para enviar o backup via FTP para outro servidor.</p>
<p>Simples assim&#8230;&#8230;&#8230;&#8230;.</p>
<p><a href="http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-autotasks.html" target="_blank">Configurando Tarefas no Cron -&gt; Link para manual da Red Hat </a></p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/02/dica-backup-do-mysql-ftp/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MySql Error 1005: Can’t create table (errno: 150)</title>
		<link>http://diariodecodigos.info/2010/01/mysql-error-1005-can%e2%80%99t-create-table-errno-150/</link>
		<comments>http://diariodecodigos.info/2010/01/mysql-error-1005-can%e2%80%99t-create-table-errno-150/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 16:14:30 +0000</pubDate>
		<dc:creator>Alexandre Santos</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[MySql]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=805</guid>
		<description><![CDATA[Vira e meche entre uma modelagem e outra eu sempre me deparo com o seguinte erro &#8220;Error 1005: Can&#8217;t create table (errno: 150)&#8221; enquanto estou trabalhando com uma Foreign Key. Isso quer dizer que tem algo errado (lógico) do qual esteja impedindo a criação de sua nova Foreign Key, segue abaixo os erros mais comuns:]]></description>
			<content:encoded><![CDATA[<p>Vira e meche entre uma modelagem e outra eu sempre me deparo com o seguinte erro &#8220;<em>Error 1005: Can&#8217;t create table (errno: 150)</em>&#8221; enquanto estou trabalhando com uma <em>Foreign Key</em>.</p>
<p>Isso quer dizer que tem algo errado (lógico) do qual esteja impedindo a criação de sua nova <em>Foreign Key</em>, segue abaixo os erros mais comuns:<span id="more-805"></span></p>
<ul>
<li>Os dois campos relacionados da Foreign Key não tem o mesmo tipo ou tamanho. Por exemplo, se um campo é INT(10) o campo da chave precisa ser INT(10) também, se for colocado INT(11) ou TINYINY já não serve. Você deve verificar esses dados usando a query &#8220;SHOW CREATE TABLE tblname;&#8221;. Também confirme se ambos os campos são &#8216;signed&#8217; ou &#8216;unsigned&#8217;. Conclusão, os campos devem ser EXATAMENTE o mesmo!</li>
<li>O campo do qual você deseja se referenciar em outra tabela não tem um índice (index) ou não é uma chave primária (primary key). Se um dos campos que você deseja criar a relação não for uma &#8220;primary key&#8221;, você deve criar um índice para ela.</li>
<li>O nome da Foreign Key já existe em alguma chave. Confira se o nome de sua Foreign Key é única no seu banco de dados. Simplesmente adicione alguns caracteres aleatórios no fim do nome de sua key para testar essa condição.</li>
<li>Uma ou ambas as tabelas são MyISAM. Para utilizar Foreign Key ambas as tabelas devem usar InnoDB. Normalmente quando ambas as tabelas são MyISAM o MySQL não apresenta nenhuma mensagem de erro, simplesmente não cria a chave.</li>
<li>Você pode ter especificado &#8220;CASCADE ON DELETE SET NULL&#8221;, enquanto o campo é &#8220;NOT NULL&#8221;, esse é o erro mais comum.</li>
<li>Se o seu script está funcionando perfeitamente em um <em>server</em>, mas não em outro, verifique o collate ou charset, eles podem dar problemas caso sejam diferentes.</li>
<li>Você pode ter um valor default (ex. default=0) na sua coluna Foreign Key.</li>
<li>O nome de sua Foreign Key excede o limite de no máximo 64 caracteres.</li>
</ul>
<p>Bem.. eu acredito que a maioria dos erros sejam causados por esses motivos acima, caso você tenha passado por esse problema e a causa tenha sido diferente, colabore.</p>
<p>Boa Sorte!</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2010/01/mysql-error-1005-can%e2%80%99t-create-table-errno-150/feed/</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
		<item>
		<title>Restaurar banco do MySQL em C# (2/2)</title>
		<link>http://diariodecodigos.info/2009/10/restaurar-banco-do-mysql-em-c/</link>
		<comments>http://diariodecodigos.info/2009/10/restaurar-banco-do-mysql-em-c/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 10:59:10 +0000</pubDate>
		<dc:creator>paulodiogo</dc:creator>
				<category><![CDATA[Banco de Dados]]></category>
		<category><![CDATA[C# Dicas]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=640</guid>
		<description><![CDATA[Process.Start(&#34;cmd.exe&#34;, &#34;/c /*CAMINHO DO MYSQL.EXE*/ + &#34; -u/*usuario*/ -p/*senha*/ /*banco*/ &#60; &#34;+/*CAMINHO DO ARQUIVO .SQL*/); Para fazer backup já fiz aqui. Simples assim.]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.4linux.com.br/files/imagecache/pic-02/cursos/images/imagem-412.jpg" alt="MySql" /></p>
<pre class="brush: csharp;">
Process.Start(&quot;cmd.exe&quot;, &quot;/c /*CAMINHO DO MYSQL.EXE*/ +
                          &quot; -u/*usuario*/ -p/*senha*/ /*banco*/ &lt; &quot;+/*CAMINHO DO ARQUIVO .SQL*/);</pre>
<p><span id="more-640"></span></p>
<p>Para fazer backup já fiz <a href="http://diariodecodigos.info/2009/09/fazendo-backup-do-mysql-com-c/">aqui</a>.</p>
<p>Simples assim.</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2009/10/restaurar-banco-do-mysql-em-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fazendo backup do MySql com C# (1/2)</title>
		<link>http://diariodecodigos.info/2009/09/fazendo-backup-do-mysql-com-c/</link>
		<comments>http://diariodecodigos.info/2009/09/fazendo-backup-do-mysql-com-c/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 14:23:18 +0000</pubDate>
		<dc:creator>paulodiogo</dc:creator>
				<category><![CDATA[Banco de Dados]]></category>
		<category><![CDATA[C# Dicas]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://diariodecodigos.info/?p=441</guid>
		<description><![CDATA[Agora vamos ver um método prático e sagaz de se fazer um backup em código do banco de dados. try { Process.Start(&#34;CAMINHO DO MYSQL NA SUA MAQUINA/bin/mysqldump.exe&#34;, &#34;-u USER --password=SENHA -B BANCO &#62; -r &#34; + arq).WaitForExit(5000); if (File.Exists(arq)) return true; else return false; } catch { throw new Exception(&#34;Backup não pode ser realizado nessa]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" src="../wp-content/uploads/2009/08/C.gif" alt="" /></p>
<p>Agora vamos ver um método prático e sagaz de se fazer um backup em código do banco de dados.</p>
<p><span id="more-441"></span></p>
<pre class="brush: csharp;">
try
 {
 Process.Start(&quot;CAMINHO DO MYSQL NA SUA MAQUINA/bin/mysqldump.exe&quot;,
 &quot;-u USER --password=SENHA -B BANCO  &gt; -r &quot; + arq).WaitForExit(5000);
 if (File.Exists(arq))
 return true;
 else
 return false;
 }
 catch
 {
 throw new Exception(&quot;Backup não pode ser realizado nessa maquina.&quot;);
 }
</pre>
<p>Util pra mim&#8230; não sei pra vocês&#8230;</p>
<p>Simples Assim.</p>
]]></content:encoded>
			<wfw:commentRss>http://diariodecodigos.info/2009/09/fazendo-backup-do-mysql-com-c/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

