Traduções: ?English - Português
Trabalho em progresso
Oracle
Oracle é um banco de dados "não livre". Você pode encontrar um antigo repositório fornecido pela Oracle com pacotes do Oracle XE. Neste artigo você encontrará inforamlções relacionadas à instalação do Oracle em sistemas Debian.
Apenas para fins de registro, aqui está a entrada que você pode adicionar ao seu arquivo /etc/apt/sources.list ou apenas criar um arquivo dentro de /etc/apt/sources.lists.d com os seguintes conteúdos:
# Repositório Debian do Oracle XE deb http://oss.oracle.com/debian unstable main non-free
Oracle 11g Express Edition no Wheezy
A versão 11g é disponibilizada no site da Oracle apenas para a arquitetura de 64 bits em um pacote rpm compactado. Baixe o arquivo de instalação do site do Oracle 11g Express Edition em algum diretório (no /opt por exemplo).
Para verificar a arquitetura de sua máquina utilize o seguinte comando:
uname -i
ou
uname -a
Detalharemos a instalação para sistemas de 64 bits x86_64.
Requisitos
Para a instalação do Oracle 11g XE, será necessário ter pelo menos 2GB de ?swap. Caso sua máquina não possua este tamanho, é possível a ampliar o tamanho do swap sem ter que reinstalar o sistema operacional.
Será necessária também a instalação dos pacotes libaio1, a qual é utilizada pelo Oracle, o comando bc, flex e alien, que será utilizado para converter o pacote rpm do Oracle para deb.
# apt-get install alien bc flex libaio1
Alteração da área de memória compartilhada
Versões mais antigas do Debian (e derivados) montavam a área de memória compartilhada no diretório /dev/shm. Este diretório é exatamente o diretório que o Oracle procura para utilizar.
No entanto, as versões mais recentes do Debian montam esta área no diretório /run/shm.
Verifique onde seu sistema está montando esta área:
$ df -k -h Sist. Arq. Tam Usad Dispon. Uso% Montado em rootfs 680G 86G 560G 14% / udev 10M 0 10M 0% /dev tmpfs 392M 768K 391M 1% /run /dev/disk/by-uuid/b31a6b62-98ad-4ec1-8240-cdb55ff1369e 680G 86G 560G 14% / tmpfs 5,0M 0 5,0M 0% /run/lock tmpfs 2,4G 428K 2,4G 1% /run/shm
Para incluir o diretório /dev/shm no ponto de montagem da área de memória compartilhada, proceda da seguinte maneira:
$ sudo su - # vim /etc/init.d/oracle-shm
O conteúdo deste arquivo deve ser:
# /etc/init.d/oracle-shm # # case "$1" in start) echo "Starting script /etc/init.d/oracle-shm" # Run only once at system startup if [ -e /dev/shm/.oracle-shm ]; then echo "/dev/shm is already mounted, nothing to do" else rm -f /dev/shm mkdir /dev/shm mount --move /run/shm /dev/shm mount -B /dev/shm /run/shm touch /dev/shm/.oracle-shm fi ;; stop) echo "Stopping script /etc/init.d/oracle-shm" echo "Nothing to do" ;; *) echo "Usage: /etc/init.d/oracle-shm {start|stop}" exit 1 ;; esac # ### BEGIN INIT INFO # Provides: oracle-shm # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Bind /run/shm to /dev/shm at system startup. # Description: Fix to allow Oracle 11g use AMM. ### END INIT INFO
Deve-se agora alterar as permissões do arquivo e fazer com que o sistema operacional execulte-o no boot:
# chmod 755 /etc/init.d/oracle-shm # update-rc.d oracle-shm defaults 01 99
Deve-se em seguida reiniciar o sistema, depois verificar o resultado:
$ df -k -h Sist. Arq. Tam Usad Dispon. Uso% Montado em rootfs 680G 86G 560G 14% / udev 10M 0 10M 0% /dev tmpfs 392M 768K 391M 1% /run /dev/disk/by-uuid/b31a6b62-98ad-4ec1-8240-cdb55ff1369e 680G 86G 560G 14% / tmpfs 5,0M 0 5,0M 0% /run/lock tmpfs 2,4G 428K 2,4G 1% /run/shm tmpfs 2,4G 428K 2,4G 1% /run/shm
Reorganização do ambiente
Como foi dito anteriormente, o Oracle 11g XE para Linux é distribuído através de um pacote RPM, o qual é o tipo de pacote utilizado por padrão nas distribuições derivadas do Red Hat.
Desta forma, apesar de tanto o Red Hat quanto o Debian serem Linux, há algumas variações de padrões de localização de arquivos.
chkconfig
?chkconfig é uma ferramenta de linha de comando para manter a hierarquia de diretórios de /etc/rc[0-6].d, aliviando os administradores de sistema da tarefa de manipular diretamente as várias ligações simbólicas naqueles diretórios.
Primeiro, deve-se verificar se o comando já existe no diretório /sbin. Caso não exista, crie-o:
# cd /sbin # vim chkconfig
e adicione o seguinte conteúdo:
file=/etc/init.d/oracle-xe if [[ ! `tail -n1 $file | grep INIT` ]]; then echo >> $file echo '### BEGIN INIT INFO' >> $file echo '# Provides: OracleXE' >> $file echo '# Required-Start: $remote_fs $syslog' >> $file echo '# Required-Stop: $remote_fs $syslog' >> $file echo '# Default-Start: 2 3 4 5' >> $file echo '# Default-Stop: 0 1 6' >> $file echo '# Short-Description: Oracle 11g Express Edition' >> $file echo '### END INIT INFO' >> $file fi update-rc.d oracle-xe defaults 80 01
Atribua as devidas permissões ao arquivo:
# chmod 755 chkconfig
Awk
O Red Hat armazena o ?awk no diretório /bin e o Debian armazena-o no diretório /usr/bin.
Desta forma, basta criar uma ligação simbólica:
# ln -s /usr/bin/awk /bin/awk
Convertendo de rpm para deb
É possível converter o pacote de instalação de ?rpm para deb, através da ferramenta ?alien. Para isso, deve-se entrar no diretório onde foi baixado o arquivo zip do Oracle 11g XE:
# cd /opt # unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip # cd Disk1 # alien --scripts oracle-xe-11.2.0-1.0.x86_64.rpm oracle-xe_11.2.0-2_amd64.deb generated
Instalando o Oracle
Após a conversão do pacote do Oracle de rpm para deb, é possível realizar a instalação utilizando o dpkg:
# dpkg -i oracle-xe_11.2.0-2_amd64.deb
Após a instalação, faça a configuração do banco:
# /etc/init.d/oracle-xe configure
Neste processo o script perguntará a respeito das portas do Oracle Application Express, Listener, solicitará uma senha e se ele deverá ser inicializado no boot.
Oracle 10g e 11g
Pré-requisitos
Uma das coisas difíceis se você é um aventureiro em Oracle (ou se há um longo tempo desde a última vez que você mexeu com ele), é a de saber como funciona o sistema em termos de partições e espaço do sistema de arquivos.
Ambos o Oracle 10g e 11g precisam de algumas coisas especiais:
Pelo menos 1.5GiB de espaço para os arquivos zip contendo o banco de dados, o instalador e a documentação (eu os coloquei em /srv/oracle)
Pelo menos 1.5GiB espaço para os binários e os recursos instalados, que devem aparecer em /opt
Algum espaço livre para os bancos de dados, eles costumam ir em /u01, /u02 e assim sequencialmente. A documentação do Oracle diz que você pode escolher qualquer letra que você desejar e um número de largura fixa, poderia ser /z0001.
- Quanto ao espaço de troca (swap), por algum motivo bizarro o Oracle 10g pediu 12GiB e Oracle 11g pediu 15GiB. Eu fiz uma instalação com menos, mas nossa equipe decidiu reinstalá-lo com a quantidade solicitada.
Apesar de haver um instalador gráfico você não precisa instalar o X Window System no servidor. Você pode usar o ?X11Forwarding ou usar o Oracle Silent Install. Em primeiro lugar, eu estou documentando a instalação gráfica via SSH (usando o X11 forwarding).