flisol 2014 - banco de dados firebird rodando em centos - faceca
DESCRIPTION
Palestra “Banco de dados Firebird rodando em CentOS” no evento Flisol 2014 realizado na Faculdade Cenecista de Varginha (www.faceca.br). Revisado!TRANSCRIPT
![Page 1: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/1.jpg)
Márcio Henrique
1
Banco de dados Firebird rodando em CentOS
http://flisol.info/FLISOL2014/Brasil/Varginha
![Page 2: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/2.jpg)
Porque usar Firebird ?
� Open Source� Maduro – 12 anos de sucesso!� Comunidade ativa no Brasil e no mundo� Recuperação Rápida� Multiplataforma: Window, Linux, FreeBSD, HP-
UX e MacOS� Fácil administração – Dispensa DBA� Instalação silenciosa e de fácil manutenção
2
![Page 3: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/3.jpg)
Porque “rodar” Firebird no Linux?
� Não precisa de licenças para servidor� Suporta grande número de conexões� Permite automatizar bem as rotinas de backup via shell
script� Funciona muito bem na versão Classic Server/Super
Classic para múltiplos processadores� É seguro e confiável� Possui diversas ferramentas para linha de comando� Funciona muito bem.
3
![Page 4: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/4.jpg)
Comunidades Firebird no mundo
� Alemanha� Austrália� Brasil
� Espanha� Estados Unidos
4
� França� Itália� Rússia� Turquia� Outras...
![Page 5: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/5.jpg)
Quem usa Firebird no Brasil
� Diversos órgão de governo (Programas como DAPI, SAPI e outros)
� Embrapa � Lojas Edmil S/A� Leucotron - PABX� AVG Antivírus� Baptistetti – ERP� VVS Sistemas – Aplicação comercial
5
![Page 6: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/6.jpg)
Versões do Firebird
� Descontinuadas: 1.0, 1.5, 2.0� Mantidas: 2.1.5 e 2.5.2� Próxima: 3.0 - MultiprocessadorCompilações: Classic, Superclassic & Superserver
Drivers: OBDC, .NET Provider, Python Driver, JDBC e outros (Sphinx).
6
![Page 7: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/7.jpg)
Um pouco do Linux CentOS
� CentOS fornece praticamente toda a estrutura do RHEL (Red Hat Enterprise Linux) sem o modelo comercial, sendo uma recompilação livre dos pacotes divulgados pela Red Hat (Jackson Laskoski, 2011).
� Segundo alguns importantes usuários de Linux o CentOS é distribuição baseado em Redhat mais utilizada no mundo para servidores.
7
![Page 8: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/8.jpg)
Um pouco mais sobre o Linux CentOS
� Tem um bom sistema de empacotamento, controle de dependência de pacotes, compatibilidade binária entre pacotes com o RHEL (Alexandre Makoto, 2014)
� Alguns fãs de diversas distribuições criticam a demora da equipe core do CentOS para liberar novas versões. Mas recentemente esta questão tem sido pouco comentada.
8
![Page 9: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/9.jpg)
Informações básicas sobre Firebird
� Usuário que roda o Firebird: firebird (Precisa ter acesso à pasta onde ficarão os arquivos de dados)
� Usuário administrador do banco: SYSDBA
� Senha padrão: masterkey
� Porta padrão: 3050
9
![Page 10: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/10.jpg)
Modo Super Server do Firebird
� Apenas um processo com múltiplas conexões.
� Cache compartilhado� Não recomendado para
ambiente multiprocessado
� Recomendado para aplicações menores
10
![Page 11: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/11.jpg)
Modo Superclassic do Firebird
� Utiliza cache dedicado mas apenas um processo para todas as conexões.
� Utiliza xinetd no Linux.� O nome do processo é
fb_smp_server
� Aproveita todos os processadores� Recomendado para 64 bits� Para alterar o modo entre Classic
Server e Super Classic execute:./changeMultiConnectMode.sh
12
![Page 12: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/12.jpg)
Resumo do modos de execução do Firebird
� SuperServer– Bases de dados pequenas ou pouco acessadas– Servidores pequenos– Ambientes onde o cache compartilhado é mais vantajoso que a escalabilidade do SuperClassic
� ClassicServer– Ambientes onde a estabilidade é a maior preocupação– Servidores multi-processados– Grandes bases de dados com centenas de usuários
� SuperClassic– Servidores multi-processados– Grandes bases de dados com centenas de usuários– Ambientes onde o cache dedicado é mais vantajoso que o cache compartilhado do
SuperServer– Ambientes onde o ClassicServer já não consegue escalar
13Fonte:http://www.sinatica.com/
![Page 13: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/13.jpg)
Firebird consome muito recurso?
14
Experimente rodar Firebird no Raspberry pi
Processador ARM1176JZF-S de 700 MHz, GPU VideoCore IV,8 e 512 MB de memória RAM em sua última revisão.Cartão de memória SD.Linux Debian “wheezy”
Acesse www.raspberrypi.org
![Page 14: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/14.jpg)
Firebird consome muito recurso?
15
Experimente rodar Firebird no Cubietruck
Dual-core A20 - ARM Mali400 MP2, 1 vertex shader, 2 fragment shaders, OpenGL ES 2.0SATA HDD, 8GB NAND Flash, MicroSD slotUSB, HDMI, VGA, IR, serial, Ethernet 10/100/1G, SATA, WiFi, Bluetooth e interface de 54 pin SOC
Acesse www.cubietruck.com/
![Page 15: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/15.jpg)
Livros de Firebird
16
![Page 16: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/16.jpg)
17
Evento
FDD é um evento anual do
Firebird que ocorre em
Piracicaba - SP nas férias de Julho. Fique
atento!
![Page 17: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/17.jpg)
Criando uma VM no Virtualbox para Instalar o CentOS
Instalar o VirtualBox (Para quem não tem Linux):� Baixar em: https://www.virtualbox.org/wiki/DownloadsURL:
http://download.virtualbox.org/virtualbox/4.3.10/VirtualBox-4.3.10-93012-Win.exe
� Criar uma VM com CentOS 6.5� Baixar CentOS em: http://centos.ufes.br/6.5/isos/x86_64/� URL: http://centos.ufes.br/6.5/isos/x86_64/CentOS-6.5-x86_64-minimal.iso� Criar uma nova VM – Redhat e configurar rede para acesso à Internet:
ifconfig eth0 up
vi /etc/sysconfig/network-scritps/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
18
![Page 18: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/18.jpg)
Instalando Firebird Super Server no CentOS (YUM)
yum install firebird firebird-superserver
chmod 775 /opt/firebird
chown firebird:firebird /opt/firebird� Se acusar falta da biblioteca execute:
yum install compat-libstdc++-33� O Firebird geralmente será instalado em /opt/firebird
19
![Page 19: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/19.jpg)
Como iniciar/parar o Firebird sem xinitd
� /sbin/service firebird-superserver start� /sbin/service firebird-superserver stop
20
![Page 20: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/20.jpg)
Como iniciar/parar o Firebird com xinitd
� Service xinitd start� Service xinitd stop
21
![Page 21: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/21.jpg)
Como instalar o Firebird no CentOS (RPM)
wget http://sourceforge.net/projects/firebird/files/firebird-linux-amd64/2.5.2- Release/FirebirdCS-2.5.2.26540-0.amd64.rpm/download
yum install libncurses.so.5
yum install libstdc++.so.6
rpm -ivh FirebirdCS-2.5.2.26540-0.amd64.rpm
yum install xinetd.x86_64
mcedit /etc/xinetd.conf e alterar: instances = unlimited
per_source = unlimited
22
![Page 22: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/22.jpg)
Como instalar o Firebird no CentOS (Compilando)
wget http://internode.dl.sourceforge.net/project/firebird/firebird/2.5.1-Release/Firebird-2.5.1.26351-0.tar.bz2
tar xjvf Firebird-2.5.1.26351-0.tar.bz2
cd Firebird-2.5.1.26351-0
yum install xinetd.x86_64
./configure
make
make install
23
![Page 23: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/23.jpg)
Utilizando a VM da apresentação
Para baixar a VM pronta com firebird configurado, ferramenta IbWebAdmin instalada e banco de dados de exemplo utilize a seguinte URL: https://mega.co.nz/#F!mENQVBbC!OamX8t0ZgKDI9CGTpPCmFA
MD5: 97ab2db8b9e638137e3cfeaab7708c17
24
![Page 24: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/24.jpg)
Ativando a VM baixada no Virtualbox
→Descompacte o arquivo “centos65fb25.zip” (centOS65.ged)
Para ativar a VM execute o VirtualBox e siga os passos abaixo:
→Clique em “Máquina” “Novo”
Em nome digite: “CentOS 6.5”, Tipo: “Linux”, Versão: “RedHat 64”
Memória: Escolha no mínimo 512MB. Recomenda-se 1GB.
Em “Disco rígido” escolha: “Utilizar um disco virtual existente”
Escolha o arquivo centOS65.ged e clique no botão “Criar”
Execute a VM. A senha no root é larissa
Configure a interface de Rede em modo Bridge para ter acesso ao servidor através de outros hosts da sua rede. Exemplo:
ifconfig eth0 10.0.0.4 netmask 255.255.255.025
![Page 25: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/25.jpg)
Conectando-se no banco de dados via isql
Para conectar:
/usr/bin/isql localhost/3050:/fbdata/cep.fdb -u SYSDBA -p S0fia -page 8192
Para obter informações sobre o banco:
show database;
Para listar as tabelas:
show tables;
Para sair (desconectar):
quit;
26
![Page 26: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/26.jpg)
Recursos disponíveis na VM:
Scripts disponíveis em /script:
openfb → Faz conexão com um banco de dados. Exemplo: openfb /fbdata/vendas.fdb
sweep → Manutenção no banco de dados. Recomendado para bancos de dados em produção. Exemplo: sweep /fbdata/vendas.fdb
trocasenhafb → Permite trocar a senha do usuários SYSDBA. Exemplo: É importante utilizar este Script para que os demais funcionem corretamente. Exemplo: trocasenha F0fia NewS3nha
→acessofb Altera os direitos de acesso aos arquivos de dados da pasta /fbdata. Após adicionar outro banco de dados em /fbdata execute:acessofb
→→→→bkprstfb25 Realiza backup e restore de um banco de dados utilizando a ferramenta nativa gbak. Exemplo: bkprstfb25 vendas.fdb27
![Page 27: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/27.jpg)
Recursos disponíveis na VM:
htop → Para exibir os processo em execução e uso de meória e processamento.
Ftp server → Para permitir o envio de banco de dados para a pasta /fbdata.
O servidor FTP será ativado por padrão.
Usuário do ftp: juniorA senha precisa ser definida. Utilize o comando passwd para definir.
Exemplo: passwd junior
Informe a senha tecle ENTER, repita a senha e tecle ENTER.
Somente o usuário junior pode logar no FTP e terá acesso à pasta /fbdata
Após enviar um arquivo para o FTP é preciso executar o script acessofb.
28
![Page 28: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/28.jpg)
ibWebAdmin – Ferramenta de Gerenciamento
IBWebAdmin é uma ferramenta free desenvolvida em PHP que acessa o servidor Firebird/Interbase através do driver Interbase.
É de fácil instalação, acesso via Browser e fácil de utilizar.
Para acessar o ibWebadmin digite no Browser o endereço IP da VM seguido de /ibwebadmin. Exemplo:
http://10.0.0.4/ibwebadmin
29
![Page 29: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/29.jpg)
Acessando banco de dados via ibwebadmin
30
![Page 30: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/30.jpg)
Consultando dados via ibwebadmin
31
![Page 31: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca](https://reader036.vdocuments.net/reader036/viewer/2022081720/5597e5471a28ab090f8b4883/html5/thumbnails/31.jpg)
Márcio Henrique
Contato:� [email protected]� Twitter: @marciohsilva� Skype: [email protected]
Sites interessantes:
� www.firebirdsql.org� www.firebase.com.br� http://www.centosbr.org/
32