Olá;
Decidi colocar meu blog lá no wordpress, então agora, as novas postagens serão lá, segue o link:
https://ederpaulopereira.wordpress.com/
Até mais;
Éder
Blog do Éder
Tecnologia, banco de dados, linux, redes, servidores, java, android
segunda-feira, 4 de janeiro de 2016
terça-feira, 29 de dezembro de 2015
Android: tipos de gerenciadores de layouts no Android
Quando comecei a desenvolver no android, tive algumas dúvidas relativas á qual gerenciador de layout usar para as activities. Antes disso, devemos entender dois atributos presentes em qualquer gerenciador de layout: android:layout_width e android:layout_height. Estes atributos, definem a largura e altura que o gerenciador de layout vai ocupar dentro da tela do aparelho. Os valores possíveis, podemos especificar em número, ou então, usamos outros 2 valores. São eles: wrap_content ou match_parent. O fill_parent, é a mesma coisa que o match_parent, mas só foi usado até o android 2.1.
O wrap_content, vai ajustar ao conteúdo dentro dele, ou seja, se houver pouco conteúdo, vai ocupar pouco espaço, se houver muito conteúdo, pode usar mais espaço.
Já o match_parent, como o nome sugere, vai usar toda a área restante do 'pai', ou seja, do viewgroup que ele está contido.
Se definirmos um valor fixo, então o tamanho vai se ajustar conforme a densidade da tela do dispositivo. Não é recomendado usar valores fixos, pois isso vai atrapalhar para a adaptação em dispositivos de telas com tamanhos diferentes. Mesmo assim, se é inevitável, não declare o valor diretamente no arquivo xml do layout, e sim, em 'res/values/dimens.xml', e então no xml do layout, apenas chame assim:
android:layout_width='@dimen/valor_definido'
No próximo post, irei falar sobre cada gerenciador de layout disponível atualmente para desenvolver no android.
Aonde eu estou? Aonde eu estava?
Muitos iniciantes no mundo linux, assim como eu era, acabam se perdendo na navegação entre diretórios dentro da linha de comando. Isso é bem incômodo, pois muitas vezes não temos um pc com internet por perto, especialmente quando estamos dentro do datacenter. Ah, servidores dedicados, dificilmente têm um ambiente gráfico rodando, pois isto consome recursos preciosos dos servidores. Bom, para isso, temo o comando 'pwd', o qual imprime no próprio terminal o caminho atual.
Outro fato do dia-a-dia de sysadmins em geral, é que às vezes, estamos navegando freneticamente nos subdiretórios de uma pasta, aí do nada, voltamos para uma pasta totalmente diferente; por azar, temos que voltar exatamente onde estávamos. Ah como é um parto descobrir onde estávamos, então temos o comando 'cd -', que nos leva no último diretório que estávamos antes de dar um cd <diretório atual>.
São pequenos macetes que agilizam nosso dia, fazendo sobrar tempo para outras tarefas mais importantes.
Outro fato do dia-a-dia de sysadmins em geral, é que às vezes, estamos navegando freneticamente nos subdiretórios de uma pasta, aí do nada, voltamos para uma pasta totalmente diferente; por azar, temos que voltar exatamente onde estávamos. Ah como é um parto descobrir onde estávamos, então temos o comando 'cd -', que nos leva no último diretório que estávamos antes de dar um cd <diretório atual>.
São pequenos macetes que agilizam nosso dia, fazendo sobrar tempo para outras tarefas mais importantes.
segunda-feira, 2 de fevereiro de 2015
Backup no Postgresql - usando o pg_dump
Anteriormente, publiquei aqui um tutorial para a instalação do postgresql no Debian 7 wheezy. Agora, vou mostrar uma maneira simples de realizar o backup de suas bases, aliás, todo DBA que se preze, deve saber (e bem) como realizar um backup, e não menos importante, que este backup funcione!
Bom, com o terminal aberto, digite:
su postgres
psql
\l+
Primeiro, logamos como usuário postgres, depois chamamos o psql para entrarmos no console do banco de dados, depois, usamos o \l+ para nos mostrar as nossas bases de dados com os detalhes, como mostrado na figura abaixo:
Iremos fazer o backup da base chamada testes. Agora, podemos sair do psql, digitando \q.
Como já estamos como usuário postgres, então, chamamos o utilitário pg_dump, que é o responsável por realizar o backup do banco de dados. Sua sintaxe é assim:
pg_dump testes -F c >> /tmp/backup.sql
Onde:
pg_dump: é o utilitário de backup;
testes: o nome da base de dados;
F: file, vai criar um arquivo;
c: vai fazer a compactação dele
>> : vai jogar a saida em um arquivo, neste caso, backup.sql dentro da pasta /tmp. Claro, isso é para fins didáticos, o ideal é ter um diretório só para guardar seus backups.
Veja imagem:
Nada mal, de 15Mb para 571Kb. Tenho bases de 50Gb que geram um dump de aproximadamente 5Gb. Agora, vamos testar se nosso backup está funcionando.
Para isso, vamos criar um banco chamado teste1:
psql -U postgres -c 'create database teste1;'
E agora, usamos o pg_restore:
pg_restore -d teste1 /tmp/backup.sql
Vai demorar para fazer o restore, depois, teremos a base restaurada de mesmo tamanho.
Bom, com o terminal aberto, digite:
su postgres
psql
\l+
Primeiro, logamos como usuário postgres, depois chamamos o psql para entrarmos no console do banco de dados, depois, usamos o \l+ para nos mostrar as nossas bases de dados com os detalhes, como mostrado na figura abaixo:
Iremos fazer o backup da base chamada testes. Agora, podemos sair do psql, digitando \q.
Como já estamos como usuário postgres, então, chamamos o utilitário pg_dump, que é o responsável por realizar o backup do banco de dados. Sua sintaxe é assim:
pg_dump testes -F c >> /tmp/backup.sql
Onde:
pg_dump: é o utilitário de backup;
testes: o nome da base de dados;
F: file, vai criar um arquivo;
c: vai fazer a compactação dele
>> : vai jogar a saida em um arquivo, neste caso, backup.sql dentro da pasta /tmp. Claro, isso é para fins didáticos, o ideal é ter um diretório só para guardar seus backups.
Veja imagem:
Nada mal, de 15Mb para 571Kb. Tenho bases de 50Gb que geram um dump de aproximadamente 5Gb. Agora, vamos testar se nosso backup está funcionando.
Para isso, vamos criar um banco chamado teste1:
psql -U postgres -c 'create database teste1;'
E agora, usamos o pg_restore:
pg_restore -d teste1 /tmp/backup.sql
Vai demorar para fazer o restore, depois, teremos a base restaurada de mesmo tamanho.
Como podemos ver, não é tão complicado assim. Agora, basta prestar atenção, e testar os backups, de nada adianta você fazer e não funcioar quando precisar.
at;
Eder
terça-feira, 13 de maio de 2014
Estatísticas com o monitorix
Já publiquei anteriormente uma ótima ferramenta para monitoramento de servidores, que é o nmon. Entretanto, em minhas andanças pela internet, me deparei com o monitorix, um sistema que roda no linux para monitoramento da saúde do servidor, e o mais legal, utiliza gráficos pra isso. Muito ideal para monitorarmos aquele proxy e saber qual o consumo de banda real que está havendo. Vamos à ele:
No Centos, tenha instalado o repositório EPEL ou RPMforge e tudo atualizado. Depois rode:
Feito isso, acesse seu servidor (cuide para que o firewall ou o SELinux não estejam atrapalhando) no seguinte endereço:
http://ip-do-servidor:8080/monitorix
O arquivo de configuração econtra-se no /etc/monitorix/monitorix.conf. Nele temos todos os parâmetros para monitorar, como partições, interfaces de rede, etc. Fácil não?
Até a próxima.
No Centos, tenha instalado o repositório EPEL ou RPMforge e tudo atualizado. Depois rode:
yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI
perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
Depois:
yum install monitorixFeito isso, acesse seu servidor (cuide para que o firewall ou o SELinux não estejam atrapalhando) no seguinte endereço:
http://ip-do-servidor:8080/monitorix
O arquivo de configuração econtra-se no /etc/monitorix/monitorix.conf. Nele temos todos os parâmetros para monitorar, como partições, interfaces de rede, etc. Fácil não?
Até a próxima.
Estatísticas completas com nmon
Recentemente fui apresentado ao nmon. Posso dizer que o linux tem todas as informações que o nmon traz, mas talvez não da forma 'elegante' que só ele traz. Como todo bom administrador de sistemas linux, devemos saber o que ocorre com nossos servidores.
Fiz isso para o Centos 6.4 de 64 bits, vamos ao comando:
rpm -Uhv http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/nmon-14g-1.el6.rf.x86_64.rpm
Vai baixar e instalar o binário pronto.
Agora, só teclar os atalhos, que já vem na tela inicial, 'd' para disco, 'n' para rede, 'c' para cpu, estes são os que mais uso. Claro, conservadores irão me dizer pra usar o dstat, ou vmstat, mas que ficou mais fácil de entender ficou.
Até a próxima.
Fiz isso para o Centos 6.4 de 64 bits, vamos ao comando:
rpm -Uhv http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/nmon-14g-1.el6.rf.x86_64.rpm
Vai baixar e instalar o binário pronto.
Agora, só teclar os atalhos, que já vem na tela inicial, 'd' para disco, 'n' para rede, 'c' para cpu, estes são os que mais uso. Claro, conservadores irão me dizer pra usar o dstat, ou vmstat, mas que ficou mais fácil de entender ficou.
Até a próxima.
Repositório EPEL no Centos 6.4
Normalmente precisamos instalar alguns utilitários no Centos, sendo por exemplo, o htop, uma alternativa ao top do linux, porém com mais algumas informações e facilidades. Entretanto, por padrão não há nos repositórios default este pacote, sendo necessária a adição do EPEL no Centos.
Para isso, rode no terminal o seguinte comando:
Para 64 bits:
rpm -Uhv http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Para 32 bits;
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
Após, limpamos o cache do yum:
yum clean all
Atualizamos novamente:
yum update -y
E instalamos o htop:
yum install htop -y
Até a próxima.
Para isso, rode no terminal o seguinte comando:
Para 64 bits:
rpm -Uhv http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Para 32 bits;
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
Após, limpamos o cache do yum:
yum clean all
Atualizamos novamente:
yum update -y
E instalamos o htop:
yum install htop -y
Até a próxima.
Assinar:
Postagens (Atom)