flisol 2014 - banco de dados firebird rodando em centos - faceca

31
Márcio Henrique 1 Banco de dados Firebird rodando em CentOS http://flisol.info/FLISOL2014/Brasil/Varginha

Upload: marcio-henrique-da-silva

Post on 04-Jul-2015

1.403 views

Category:

Technology


3 download

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Livros de Firebird

16

Page 16: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca

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

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

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

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

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

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

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

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

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

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

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

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

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

Acessando banco de dados via ibwebadmin

30

Page 30: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca

Consultando dados via ibwebadmin

31

Page 31: FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca

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