
<?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>Luciano Bezerra</title>
	<atom:link href="http://www.lucianobezerra.eti.br/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.lucianobezerra.eti.br</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 16 Jul 2010 19:48:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Dica rápida postgresql, backup de apenas uma tabela do banco de dados</title>
		<link>http://www.lucianobezerra.eti.br/?p=19</link>
		<comments>http://www.lucianobezerra.eti.br/?p=19#comments</comments>
		<pubDate>Fri, 07 May 2010 23:51:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Postgresql]]></category>
		<category><![CDATA[backup postgresql]]></category>
		<category><![CDATA[pg_dump]]></category>
		<category><![CDATA[pg_restore]]></category>

		<guid isPermaLink="false">http://www.lucianobezerra.eti.br/?p=19</guid>
		<description><![CDATA[Tive a necessidade (recorrente, por sinal) de fazer backup e restore de apenas algumas tabelas do banco de dados. Por haver se tornado de certa forma repetitiva, fiz um pequeno script para diminuir a repeti&#231;&#227;o da digita&#231;&#227;o dos comandos de backup e restore dessas tabelas. Para realizar o backup de uma determinada tabela, utilizamos: pg_dump [...]]]></description>
			<content:encoded><![CDATA[<p>Tive a necessidade (recorrente, por sinal) de fazer backup e restore de apenas algumas tabelas do banco de dados. Por haver se tornado de certa forma repetitiva, fiz um pequeno script para diminuir a repeti&ccedil;&atilde;o da digita&ccedil;&atilde;o dos comandos de backup e restore dessas tabelas.</p>
<p>Para realizar o backup de uma determinada tabela, utilizamos:</p>
<pre class="ruby" name="code">pg_dump -t nome_da_tabela nome_do_banco &gt; destino_do_backup.sql</pre>
<p>Para realizar o restore, basta digitar:</p>
<pre class="ruby" name="code">pg_restore -t nome_da_tabela -d nome_do_banco &lt; origem_do_backup.sql</pre>
<p>Segue abaixo um exemplo de um script para semi-automatizar a realiza&ccedil;&atilde;o do Backup de uma tabela do banco:</p>
<pre class="ruby" name="code">#/bin/sh
if [ &quot;$1&quot; = &quot;&quot; ]; then
&nbsp;&nbsp; clear
&nbsp;&nbsp; echo &quot;Informe a TABELA para copiar.&quot;
&nbsp;&nbsp; exit 0
&nbsp;else
&nbsp;&nbsp; tabela=&quot;$1&quot;
&nbsp;fi

if [ &quot;$2&quot; = &quot;&quot; ]; then
&nbsp;&nbsp; clear
&nbsp;&nbsp; echo &quot;Informe o BANCO DE DADOS desejado.&quot;
&nbsp;&nbsp; exit 0
else
&nbsp;&nbsp; banco=&quot;$2&quot;
fi

if [ &quot;$3&quot; = &quot;&quot; ]; then
&nbsp;&nbsp; clear
&nbsp;&nbsp; echo &quot;Informe um nome para o Backup.&quot;
&nbsp;&nbsp; exit 0
else
&nbsp;&nbsp; destino=&quot;$3&quot;
fi

su postgres -c &quot;pg_dump -t $tabela $banco &gt; $destino&quot;
</pre>
<p>Salvei com o nome de backup.sh. Para executar o script, comande pelo console:</p>
<pre class="ruby" name="code">sh backup.sh clientes bd_loja bck_loja.sql</pre>
<p>Onde:<br />
	clientes &eacute; o nome da minha tabela<br />
	bd_loja &eacute; o meu banco de dados<br />
	e bck_loja.sql &eacute; o arquivo que ser&aacute; gerado com os dados</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lucianobezerra.eti.br/?feed=rss2&amp;p=19</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ambiente de Desenvolvimento RubyOnRails + Postgresql 8.x</title>
		<link>http://www.lucianobezerra.eti.br/?p=6</link>
		<comments>http://www.lucianobezerra.eti.br/?p=6#comments</comments>
		<pubDate>Sat, 24 Apr 2010 18:09:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.lucianobezerra.eti.br/?p=6</guid>
		<description><![CDATA[Precisei v&#225;rias vezes refazer o ambiente de desenvolvimento para RubyOnRails no Ubuntu, principalmente por ser novato nas duas coisas (ruby e linux), e apanhei bastante. Depois de muita &#34;p&#234;ia&#34;, reun&#237; dicas coletadas de v&#225;rios blogs e de documenta&#231;&#227;o das pr&#243;prias ferramentas e resolvi disponibiliza-las aqui, para diminuir as dores de cabe&#231;a daqueles que est&#227;o iniciando [...]]]></description>
			<content:encoded><![CDATA[<p>Precisei v&aacute;rias vezes refazer o ambiente de desenvolvimento para RubyOnRails no Ubuntu, principalmente por ser novato nas duas coisas (ruby e linux), e apanhei bastante. Depois de muita &quot;p&ecirc;ia&quot;, reun&iacute; dicas coletadas de v&aacute;rios blogs e de documenta&ccedil;&atilde;o das pr&oacute;prias ferramentas e resolvi disponibiliza-las aqui, para diminuir as dores de cabe&ccedil;a daqueles que est&atilde;o iniciando no mundo Ubuntu + RubyOnRails (serve para outras plataformas tamb&eacute;m, com pequenos ajustes):</p>
<p>	Esse &quot;howto&quot; destina-se a quem vai utilizar o Rails com Postgresql, se for utilizar outro gerenciador de banco de dados, pule a etapa 3 e pesquise sobre a melhor forma de instalar o seu gerenciador preferido.</p>
<p>	1) Atualizar reposit&oacute;rios do Ubuntu (importante):<br />
	$ sudo apt-get update</p>
<p>	2) Instalar Bibliotecas B&aacute;sicas (necess&aacute;rio):<br />
	$ sudo apt-get -y install build-essential zlib1g zlib1g-dev libxml2 libxml2-dev libxslt-dev git-core git-doc gitk git-gui libpq-dev make rake libncurses5-dev libreadline</p>
<p>	3) Instalar o Postgresql (inclu&iacute;do o gerenciador gr&aacute;fico pgadmin):<br />
	$ sudo apt-get install postgresql-8.3 postgresql-client-8.3 postgresql-client-common postgresql-common postgresql-server-dev-8.3 pgadmin3 pgadmin3-data</p>
<p>	Instala&ccedil;&atilde;o do Ruby (vers&atilde;o 1.8.7)<br />
	$ wget -c ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p174.tar.gz<br />
	$ tar zxvf ruby-1.8.7-p174.tar.gz<br />
	$ cd ruby-1.8.7-p174 /ruby-1.8.7-p174<br />
	$ ./configure &amp;&amp; make &amp;&amp; sudo make install (N&atilde;o apague o diret&oacute;rio de instala&ccedil;&atilde;o do ruby, vamos precisar dele ainda)</p>
<p>	Instala&ccedil;&atilde;o da lib zlib<br />
	$ wget -c http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-VERS&Atilde;O.tar.gz (troque VERS&Atilde;O pela vers&atilde;o mais atual)<br />
	$ tar zxvf ruby-zlib-versao.tar.gz<br />
	$ cd ruby-zlib-vers&atilde;o /ruby-zlib-vers&atilde;o<br />
	$ ruby extconf.rb &amp;&amp; make &amp;&amp; sudo make install<br />
	$ cd ..<br />
	$ rm -rf ruby-zlib-vers&atilde;o</p>
<p>	Se der problema de openssl:<br />
	$ cd ruby-1.8.7-p174/ext/openssl /ruby-1.8.7-p174<br />
	$ ruby extconf.rb &amp;&amp; make &amp;&amp; sudo make install</p>
<p>	Instala&ccedil;&atilde;o das Gems<br />
	$ wget -c http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz<br />
	$ tar zxvf rubygems-1.3.5.tgz<br />
	$ cd rubygems-1.3.5 /rubygems-1.3.5<br />
	$ ruby setup.rb /rubygems-1.3.5<br />
	$ cd ..<br />
	$ rm -rf rubygems-1.3.5</p>
<p>	Adicionar source do Git<br />
	$ gem sources -c (-c limpa o cache das gems)<br />
	$ gem sources -a http://gems.github.com (-a adiciona novo source)</p>
<p>	Instalar Rails<br />
	$ sudo gem install rake rails</p>
<p>	Instalar Adapter para o Postgres<br />
	$ sudo gem install postgres</p>
<p>	Instalar Servidor Mongrel<br />
	$ sudo gem install mongrel</p>
<p>	Alguns Plugins &Uacute;teis pro Gedit (vai habilitar v&aacute;rios temas e v&aacute;rias ferramentas para trabalhar com rails, teclas de atalho, etc)<br />
	$ apt-get install gedit-plugins<br />
	$ git clone git://github.com/lexrupy/gmate.git<br />
	$ cd gmate &amp;&amp; sh install.sh<br />
	$ rm -rf gmate</p>
<p>	Basicamente &eacute; isso. Qualquer erro posta nos coment&aacute;rios que vou ajustando o &quot;howto&quot;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lucianobezerra.eti.br/?feed=rss2&amp;p=6</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Webrat – Selecionar Registro, dica rápida</title>
		<link>http://www.lucianobezerra.eti.br/?p=4</link>
		<comments>http://www.lucianobezerra.eti.br/?p=4#comments</comments>
		<pubDate>Sat, 24 Apr 2010 18:02:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Webrat, Selenium]]></category>

		<guid isPermaLink="false">http://www.lucianobezerra.eti.br/?p=4</guid>
		<description><![CDATA[Utilizando Factories, fabriquei v&#225;rios para montar quatro&#160; cen&#225;rios do cucumber: Listar, Adicionar, Alterar e Excluir (nosso bom e velho CRUD). A confus&#227;o come&#231;ou quando decidi selecionar o registro que seria excluido no Cen&#225;rio 4, pois o webrat sempre exclui o primeiro registro. Com a valiosa ajuda de Cassio Marques e Maur&#237;cio Linhares, consegui resolver e [...]]]></description>
			<content:encoded><![CDATA[<p>Utilizando Factories, fabriquei v&aacute;rios para montar quatro&nbsp; cen&aacute;rios do cucumber: Listar, Adicionar, Alterar e Excluir (nosso bom e velho CRUD).</p>
<p>A confus&atilde;o come&ccedil;ou quando decidi selecionar o registro que seria excluido no Cen&aacute;rio 4, pois o webrat sempre exclui o primeiro registro. Com a valiosa ajuda de Cassio Marques e Maur&iacute;cio Linhares, consegui resolver e posto aqui. Sempre tem algu&eacute;m precisando de uma ajuda.</p>
<pre class="ruby" name="code">Funcionalidade:
	&nbsp; Contexto:
	&nbsp;&nbsp;&nbsp; Dado que existem o(s) seguinte(s) registro(s) de competencias:
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | mes | ano&nbsp; |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 01&nbsp; | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 02&nbsp; | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 03&nbsp; | 2010 |

	&nbsp; Cen&aacute;rio: Listar Compet&ecirc;ncias
	&nbsp;&nbsp;&nbsp; Quando eu estiver em Listagem de Compet&ecirc;ncias
	&nbsp;&nbsp;&nbsp; Ent&atilde;o preciso ver o(s) seguinte(s) registro(s):
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | M&ecirc;s&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Ano&nbsp; |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Janeiro&nbsp;&nbsp; | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Fevereiro | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Mar&ccedil;o&nbsp;&nbsp;&nbsp;&nbsp; | 2010 |

	&nbsp; Cen&aacute;rio: Alterar uma Compet&ecirc;ncia
	&nbsp;&nbsp;&nbsp; Dado que estou em Listagem de Compet&ecirc;ncias
	&nbsp;&nbsp;&nbsp; E sigo para &quot;Alterar&quot; no mes &quot;2&quot;
	&nbsp;&nbsp;&nbsp; E defino mes como &quot;5&quot;
	&nbsp;&nbsp;&nbsp; E defino ano como &quot;2010&quot;
	&nbsp;&nbsp;&nbsp; Quando pe&ccedil;o para Salvar
	&nbsp;&nbsp;&nbsp; Ent&atilde;o preciso ver &quot;Compet&ecirc;ncia Alterada com Sucesso.&quot;
	&nbsp;&nbsp;&nbsp; E preciso ver o(s) seguinte(s) registro(s):
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | M&ecirc;s&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Ano&nbsp; |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Janeiro&nbsp;&nbsp; | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Maio&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 2010 |
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Mar&ccedil;o&nbsp;&nbsp;&nbsp;&nbsp; | 2010 |
</pre>
<p>Step:</p>
<pre class="ruby" name="code">Dado /^sigo para &quot;Alterar&quot; no mes &quot;([^\&quot;]*)&quot;$/ do |mes|
&nbsp; record = Competencia.find_by_mes mes
&nbsp; click_link &quot;edit_competencia_#{record.id}&quot;
end
</pre>
<p>Pequeno Ajuste na Index para montar o Link, pois o webrat n&atilde;o &quot;pega&quot; pelo Texto do Link:</p>
<pre class="ruby" name="code">%td
&nbsp; =link_to &quot;Alterar&quot;, edit_gestor_competencia_path(cmpt), :id =&gt; dom_id(cmpt, :edit)
</pre>
<p>A nota&ccedil;&atilde;o que utilizei aqui foi haml, &eacute; s&oacute; trocar para erb ou html.</p>
<p>	Pronto. Funcionando:</p>
<p>	Abra&ccedil;os,</p>
<p>	At&eacute; a pr&oacute;xima</p>
<p>
	Agradecimentos tamb&eacute;m ao Bruno Grasseli que enviou uma dica muito pr&oacute;xima (quase id&ecirc;ntica) dessa.</p>
<p>	&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lucianobezerra.eti.br/?feed=rss2&amp;p=4</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
