Instalação Oracle11gR2 Red Hat Enterprise Linux 5.6
Autor: MarcusWilliam | Publicado: 2011-07-21T16:02:00-03:00



1 . Introdução








Para mim o aprendizado de como se instala o Oracle em um ambiente Linux foi extremamente difícil. No inicio não eu tinha a noção de que para esta atividade se faz necessários conhecimentos consolidados de ambiente Linux. E depois de muitas investidas, consegui compreender cada passo apresentado nos vários manuais disponíveis na “nuvem”.





Este post apresenta a minha versão sobre a compreensão das etapas da instalação de Oracle em Linux. As idéias estão dispostas de acordo como imagino que seria a melhor de serem passadas a mim no início desta empreitada. Imagino que o material a seguir está cabível para quem está dando&nbsp;os primeiros passos no Linux, e distribuídas na seguinte disposição:





Planejamento / Providências




Ações do usuário root




Ações do usuário oracle





Os passos neste material vislumbram a instalação de&nbsp;Oracle Entreprise Edition 11g Release 2 (Oracle11gR2)&nbsp;em um sistema operacional&nbsp;Red Hat Entreprise Linux 5&nbsp;(LinuxRHEL5)



Alguns conceitos de administração Linux estão apresentados de forma superficial. Uma pesquisa mais aprofundada nos sites cabíveis se faz necessária.



A documentação oficial sobre a instalação do Oracle11gR2 em ambiente Linux pode ser encontrada em &nbsp;Database Installation Guide for Linux










&nbsp;



2 . Planejamento / Providências





Como em qualquer atividade, seja de TI ou não, é interessante que seja feito um planejamento a fim de apontar todas as providências necessárias para a realização das várias atividades.&nbsp;









2.1 . Definições






No processo de instalação serão solicitadas as seguintes definições sobre :


2.1.1 - Nome do banco de dados&nbsp;- O nome do banco é case-sensitive e deverá ter no máximo ter 8 caracteres;



2.2.2 - Pasta do Software Oracle -&nbsp;em que pasta o software estará posicionado após a instalação. É fortemente indicado a utilização do padrão OFA (Optimal Flexible Architecture) que é uma sugestão da Oracle de como e onde posicionar os vários elementos do banco de dados.





2.2 . Requisitos de hardware








A documentação oficial Oracle11gR2 (Cheking the Hardware Requerements) sobre o assunto aponta os mínimos requisitos a seguir:



1GB de memoria ;
1GB para /temp ;
3GB para swap
3.95GB para os binários (software Oracle) dependendo do tipo de instalação escolhida ;
1.7GB para o banco de dados pré-configurado.



Portanto a adequação aos requisitos mínimos do hardware que receberá a instalação é uma providência necessária para o sucesso na instalação e principalmente para a boa usabilidade do banco de dados que será criado.









2.3 . Pacotes RPM





Assim como o Oracle11gR2, o&nbsp;LunixRHEL5 têm várias opções de instalação o que o tornam mais completo ou não em termos de funcionalidades disponíveis por conta da opção de instalação escolhida.



O Oracle11gR2 requer algumas funcionalidade de software que em muitos casos não estão disponíveis do sistema operacional comprometendo assim a instalação desejada.



Usaremos os pacotes RPM (www.rpm.org) para instalar as funcionalidades ainda ausentes do LunixRHEL5 e nescessárias à instalação do Oracle11gR2. Desta forma deveremos providenciar todos os pacotes RPM indicados na documentação oficial (Packages Requirements) como pacotes necessários.



Tomando com base as a documentação oficial, observamos que os pacotes RPM necessários são :

 


binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2
make-3.81
numactl-devel-0.9.8.i386
sysstat-7.0.2

unixODBC-2.2.11
unixODBC-devel-2.2.11








Como fonte de obtenção de pacotes RPM devemos indicar a própria mídia utilizada para instalar o LunixRHEL5. Na pasta /Server existem mais de 2000 arquivos de pacotes RPM.



Não devemos de esquecer de citar o portal&nbsp;http://rpm.pbone.net/.&nbsp;Portal especializado em pesquisa de pacotes RPM independente da distribuição de Lunix. Este portal já me salvou de alguns momentos difíceis.



E efetivação da instalação dos pacotes RPM será abordada a seguir.









2.4 . Download Arquivo de instalação










Para baixar o software de instalação, é necessário uma conta OTN, que dá acesso a documentação oficial, aos downloads e newsletters importantes do mundo Oracle. Essa conta é um item imprescindível para um profissional Oracle e pode ser criada em&nbsp;http://goo.gl/qpuj7.



Acessando http://goo.gl/nY6GF, primeiramente deverá ser efetuado o&nbsp;aceite do&nbsp;License Aggrement, em seguida, os dois arquivos referentes à versão Linux x86 deverão ser baixados. Como o próprio site indica reserve ao menos 2GB de espaço em disco para receber estes arquivos.







3 . Ações com o usuário root&nbsp;









Várias atividades deverão ser executadas com o usuário root.









3.1 . Instalação pacotes nescesários (rpm)





A documentação indica o nome e a versão do que o pacote deverá estar. Deveremos assegurar que todos os pacotes listados no item 2.2 estão instalados seguindo versão indicada. Assim, deveremos providenciar a instalação dos pacotes ausentes, se houverem ou a atualização dos pacotes desatualizados se houverem.



&nbsp;&nbsp;&nbsp; O comando a seguir efetua de só vez a verificação da versão dos vários pacotes elencado no item &nbsp; 2.3.&nbsp;





# rpm -q binutils compat-libstdc++-33-3.2.3-61 elfutils-libelf\



&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;elfutils-libelf-devel elfutils-libelf-devel-static &nbsp; \
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;gcc gcc-c++ glibc glibc-common glibc-devel &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; \
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;glibc-headers kernel-headers ksh libaio libaio-devel \
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;libgcc libgomp libstdc++ libstdc++-devel make &nbsp; &nbsp; &nbsp; &nbsp;\
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;numactl-devel sysstat unixODBC unixODBC-devel &nbsp;









O resultado deste comando indicará se deveremos instalar ou atualizar algum pacote, sendo que , para instalar um pacote ausente deveremos utilizar o comando&nbsp;rpm -ivh &lt;rpmFIle&gt;,&nbsp;em quanto que, para atualizar um pacote já instalado deveremos utilizar o comando&nbsp;rpm -Uvh &lt;rpmFIle&gt;.&nbsp;No processo de instalação de um pacote pode apresentar a necessidade da instalação de algum pacote não listado com necessário no item 2.2, este deverá ser instalado da mesma forma.


Nos meus estudos de instalação adicionei o comando acima em um arquivo executável shell, onde o resultado da execução no arquivo facilmente informa a versão atual dos pacotes e se estes estão instalados.









3.2 . Parâmetros do Kernel





Através do editor de texto mais cómodo, adicionar as seguintes linhas no arquivo /etc/sysctl.conf&nbsp;
&nbsp;




fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586





e em seguida, para persistir as novas configurações recém adicionadas, proferir o comando :





#/sbin/sysctl -p





Orientações oficiais em&nbsp;Configuring Kernel Parameters.









3.3 . Usuários e Grupos necessários





São necessários a criação de alguns usuários e grupos de usuários:










Item



Finalidade



Grupo oinstall

controlar e catalogar todas instalações de produtos oracle.


Grupo dba

será associado aos usuários do S.O. que deverão ter privilégios de administrador nos bancos de dados


Usuário oracle

será o dono dos arquivos do software Oracle10gR2






&nbsp;&nbsp;&nbsp; Os comandos a seguir efetuam as criações




# /sbin/groupadd oinstall &nbsp;



# /sbin/groupadd dba &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;



# /sbin/useradd -m -g oinstall -G dba oracle &nbsp;



# /sbin/passwd oracle




&nbsp; &nbsp;&nbsp;



&nbsp; &nbsp; Orientação oficiais em&nbsp;Creating Required Operating System Groups and Users








3.4 . Local de instalação software Oracle10gR2






Podemos ou não seguir a sugestão da Oracle de posicionamento dos elementos (padrão OFA) como citado no item 2.1.2. No nosso caso, seguindo o padrão, o software será criado na pasta /u01/app/oracle.




# mkdir -p /u01/app/oracle



# chown -R oracle:oinstall /u01/app/oracle



# chmod -R 775 /u01/app/oracle&nbsp;&nbsp;




3.5 . Variáveis de ambiente usuário Oracle(/home/oracle/.bash_profile)



Sempre que o usuário criado no item 3.4 acessar o S.O. para fins de manutenção ou acesso ao banco de dados, algumas “setagens” de ambiente deverão ser executadas. O arquivo /home/oracle/.bash_profile é automaticamente executado quanto o usuário oracle acessa o sistema, portanto tais “setagens” serão definidas neste arquivo


Através do editor de texto mais cômodo, adicionar as seguintes linhas no arquivo /home/oracle/.bash_profile







export ORACLE_BASE= ??? &nbsp;##valor definido no item 3.4



export ORACLE_SID= ??? &nbsp;&nbsp;##valor definido no item 2.1.1



export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1



export PATH=$PATH:$ORACLE_HOME/bin



export LD_LIBRARY_PATH=$ORACLE_HOME/lib




3.6 . Incremento nos limites de sistema operacional


Afim de incrementar os limites de recursos do sistema operacional destinados ao usuário oracle recém criado deveremos efetuar o seguinte:



Através do editor de texto mais cômodo, adicionar as seguintes linhas no arquivo /etc/security/limits.conf
&nbsp;&nbsp;




oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    stack   10240





Orientações oficiais em Cheking Resource Limits










4 . Ações com o usuário oracle



4.1 . Descompactar arquivo de instalação



Os arquivos de instalação obtidos no item 2.4 estão “zipados”. Deveremos proceder a descompactação, posicionando os arquivos em uma área de disco com mais de 2.3GB, afim de que não tenhamos problemas de espaço em disco durante a descompactação. Na pasta onde foram posicionados os arquivos deverão ser emitidos os comandos
&nbsp;


$ unzip linux_11gR2_database_1of2.zip &nbsp;

$ unzip linux_11gR2_database_2of2.zip




&nbsp;



será criada uma pasta&nbsp;database&nbsp;com&nbsp;&nbsp;2.3GB.



4.2 . Chamar Oracle Universal Installer (OUI)


A partir do ambiente gráfico que foi acessado pelo usuário criado no item 3.3


1. chamar um terminal
2.&nbsp;acessar a pasta criada no item&nbsp;item 4.1
3. executar o comando $ ./runInstaler e se prepara para perder 3.6GB de espaço de disco


Em seguida o programa Oracle Universal Installer (OUI) iniciará a execução.





Como última atividade antes do encerramento, deveremos executar com usuário root e em uma outra terminal os seguintes scripts






#/u01/app/oracle/oraInventoty/orainstRoot.sh
#/u01/app/oracle/product/11.2.0/db_1/root.sh






5 . Finais





Eu fortemente indico, na instalação do software, a não criação do banco de dados padrão “Create Starter DataBase (additional 720MB)”. Esta opção deverá estar desmarcada. O banco deverá ser criado pelo Database Configuration Assistant (DBCA). E isso é assunto para outro post.


Valeu !!!
Marcus William
http://about.me/marcuswlima&nbsp;