09/09/14

centos 6.5 (64bit) - installazione oracle 10r2 (64bit)

Step by step su come installare su una distro a 64 bit, Oracle RDBS a 64bit: ver. 10 g.
Come prima cosa scaricare la versione 10.2.0.1 e la patch alla 10.2.0.5 dai metalink di Oracle.


Attivita' preliminari
Controllare se sono correttamente installati i seguenti pacchetti (rpm) fondamentali per l'installazione dell'RDBMS:
- libXp 
- libXtst
- libXt
- binutils 
- compat-db 
- compat-libstdc
- glibc 
- glibc-devel
- glibc-headers
- gcc 
- gcc-c
- libstdc
- cpp
- make 
- libaio
- libaio
- libaio-devel 
- glibc-devel 
- glibclibgcc 
- compat-libstdc
- compat-libf2c
- compat-gcc
- compat-libgcc

inoltre assicurarsi che sia correttamente installata la versione a 32bit della seguente libreria glibc-devel.
In perticolare:
- glibc-devel.i686


Per le librerie mancanti usare il comando:

#yum install nome.pacchetto


Creazione usente oracle e gruppi: oinstall / dba
# groupadd oinstall
# groupadd dba
# useradd -d /home/oracle -g oinstall -G dba -s /bin/bash oracle
# passwd oracle

la home dell'utente e' /home/oracle mentre come vedremo piu' avanti, il motore e i datafile li mettero' su posizioni diverse in modo da separare il tutto.

Modifica file /etc/security/limits.conf inserendo i seguenti parametri:
oracle    soft  nproc  2047
oracle    hard  nproc  16384
oracle    soft  no file  1024
oracle    hard  nofile  65536
Per applicare i seguenti limiti in fase di riavvio (e login) modificare il file /etc/pam.d/login aggiungendo la seguente linea:
session required /lib64/security/pam_limits.so

Modifica del file /etc/sysctl.conf (i seguenti valori vanno modificati se e solo se sono inferiori a quelli impostati sulla macchina o vanno aggiunti se mancanti): 
fs.file-max = 65535
# maximum size in bytes of a single shared memory segment 
# that a Linux process can allocate in its virtual address space.
# with 64GB of RAM, we set the max segment size at 60GB, thus the 
# SGA cannot be larger than 60GB for one database instance
kernel.shmmax = 64424509440

# total amount of shared memory pages that can be used system wide.
# Hence, SHMALL should always be at least ceil(shmmax/PAGE_SIZE). 
# with 60GB of RAM and a page size at 4KB
kernel.shmall = 15728640

# system wide maximum number of shared memory segments
kernel.shmmni = 4096

# control the number of semaphores on the system
kernel.sem = 2048 262144 2048 128

# usuable port range
net.ipv4.ip_local_port_range = 9000 65500

# default OS receive buffer size in bytes 
net.core.rmem_default = 262144

# max OS receive buffer size in bytes 
net.core.rmem_max = 4194304

# default OS transmit buffer size in bytes 
net.core.wmem_default = 262144

# max OS transmit buffer size in bytes 
net.core.wmem_max = 1048576

IMPORTANTE
Prima di installare Oracle, assicurarsi che sul file hosts (/etc/host) sia presente il nome della macchina in modo da non avere problemi con il “listener” in fase di avvio. In particolare eseguire da root il seguente comando:

#hostname
riportare il nome completo dell'hostname sul file hosts cosi' come compare a video e assegnarlo all'indirizzo fisico della macchina stessa.
Nel mio caso era: ("matrix.azienda.local")
#vi /etc/hosts
10.1.1.215     matrix.azienda.local
127.0.0.1       localhost.domain.com      localhost

Inoltre disabilitare il firewall di Linux (SELINUX) da file /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted
# SETLOCALDEFS= Check local definition changes
SETLOCALDEFS=0


Cambiare la versione della sistro mettendo redhat-4 sul file /etc/redhad-release al posto di cento6.5 (come utente root). Fare una copia del file originale e in modo da poterlo ripristinare al termine dell'installazione di Oracle:

#cp /etc/redhat-release /etc/redhat-release.orig
#vi  /etc/redhat-release
"Centos release (6.5) final" che va sostituito con "redhat-4"


Riavviare la macchina (come root): 
#reboot now

Installazione di Oracle

Connettersi come utente oracle precedentemente creato:
#su - oracle

quindi unzippare il file:
# gunzip 10201_database_linux_x86_64.cpio.gz
# cat 10201_database_linux_x86_64.cpio |cpio -idmv

assicurarsi che il runInstaller ha i diritti di esecuzione cosi' come il file .oui che si trova dentro la cartella "install"; 
# cd database
#chmod 777 runInstaller
# cd install .oui
#chmod 777 

quindi:
#cd ..
# ./runInstall -ignoreSysPrereqs

Durante l'installazione di Oracle decidere la ORACLE_HOME, dove risiede il "motore" oracle il servizio; consiglio di creare l'istanza in un secondo momento e non durante l'installazione del motore oracle.

Al termine dell'installazione impostare le variabili di ambiente sul file dell'utente oracle .bash_profile

#vi .bash_profile

export ORACLE_BASE=/opt/db-oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=xxxxxxxx


Prima di creare l'istanza Oracle, si deve installare la patch scaricata dal sito metalink di Oracle. Nel mio caso la 10.2.0.5.
Scompattata viene creato il folder "Disk1" dove troviamo il file runInstaller.
Ripetere i passi precedenti.


Come detto inizialmente il motore l'ho installato in /opt diverso dalla home dell'utente oracle. Mentre i dati, nel caso di filesystem dedicati ai dati, consiglio in fase di creazione dell'istanza tramite il software dbca di mettere i datafile sul filesystem dedicato.


Terminata l'installazione di Oracle, per creare l'istanza come utente oracle:
#dbca
Quindi al termine eseguire sempre come utente oracle:
#netca
per la configurazione del listener e del tnsnames.

21/06/12

fedora 17 - collegamento ad una stampante condivisa su piattaforma windows

Per installare su Fedora una stampante condivisa su windows bisogna installare alcuni pacchetti per visualizzare il corretto protocollo durante la fase di installazione sia usando direttamente cups (http://localhost:631) che il tool di configurazione proprio di fedora.

A differenza delle stampanti di rete, una stampate condivisa tramite un pc (windows) ha bisogno del pacchetto samba per essere raggiunto.

Per controllare se i pacchetti necessari sono stati installati eseguire il seguente comando (da root):
# rpm -aq | grep -i samba

il cui risultato dovrebbe essere:

[root@matrix ~]# rpm -aq | grep -i samba
samba-client-3.6.5-86.fc17.1.i686
samba-common-3.6.5-86.fc17.1.i686
[root@matrix ~]#


Se cosi' non e': installare i pacchetti mancanti tramite yum.


Fatto questo, entrando nel tool di configurazione di una stampante troviamo il protocollo samba utile per potersi connettere ad una stampante su windows.


Impostare l'IP da raggiungere (se necessario il workgroup di appartenza della macchina windows), quindi userID e password (lato windows) per potersi connettere alla macchina windows dove c'e' la stampante condivisa con un nome.


E' importante mettere il nome di condivisione, che il piu' delle volte non coincide con il nome della stampante (lo si vede sulle proprieta' della stampate, tab condivisione) e l'utente e la password di connessione.

17/05/12

fedora 16 - rimuovere i riferimenti di java su Fedora da OpenJDK a sun-jdk

se per qualche motivo il motore java installato di default sulla vostra distro non dovesse soddisfare le vostre esigenze, con dei semplici comandi, si possono spostare i riferimenti java ad esempio su jdk rilasciato dalla sun-oracle.

Bisogna intanto scaricare la versione dal sito della oracle, sezione download. Quindi (come root):

su -c 'alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/default/jre/lib/i386/libnpjp2.so 20000'

cat <> /etc/profile.d/sunjava.sh
export JAVA_HOME=/usr/java/default
export PATH=\$JAVA_HOME/bin:\$PATH
EOF

02/03/12

fedora 16 - cambiare l'immagine di login

installando la fc16 di default sia l'immagine di login che quella del desktop rappresenta un sottomarino!
per cambiare quella del desktop usare "cambia impostazioni del desktop" oppure andare su dconf-editor e modificare in
/usr/share/background/gnome/nome.immagine

mentre per sostituire quella di login (il sottomarino), che di defualt si chiama verne.png bisogna andare a sostituire qualche file nel folder /usr/share/backgrounds/verne/default.
in particolare per non fare troppi casini, si puo' pensare di rinominare l'attuale immagine usata "verne.png" e chiamare l'immagine che si desidera avere in fase di login come "verne.png".

23/02/12

fedora 16 - installazione TOra per Oracle

scaricare i seguenti pacchetti:
- oracle instant client, dal sito della Oracle (ultima versione);
- TOra usando il seguente comando
        # sudo rpm -ivh "http://amit-agarwal.co.in/mystuff/tora-2.1.3-1.fc16.i686.rpm"
oppure tramite il sito ufficiale o andando direttamente sul sito della sourceforge. In tal caso bisogna compilare il sorgente.

Terminata la fase di installazione dei pacchetti sopra elencati, bisogna fare in modo che TOra punti alle corrette librerie di Oracle.
Posizionarsi sulla directory "lib" dove e' stato installato il client oracle ossia: 
# cd /usr/lib/oracle/11.2/client/lib 

e creare il seguente link
# sudo ln -s libclntsh.so.11.1 libclntsh.so

quindi settare le nel file di configurazione dell'utente .bash_profile le seguenti due variabili:

ORACLE_HOME=/usr/lib/oracle/11.2/client
export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH


Quindi eseguire un bel
# source .bash_profile

per ricompilare le variabili di ambiente dell'utente e se tutto ha funzionato alla perfezione viene fuori dal comando:
# tora



A questo punto per fare in modo che TOra possa connettersi con un db oracle bisogna craere nella $ORACLE_HOME la cartella "admin" e crearci dentro un file "tnsnames.ora"

#cd $ORACLE_HOME
#mkdir admin
#vim tnsnames.ora


30/11/11

fedora - yum.conf - set proxy aziendale

# The proxy server - proxy server:port number
proxy=http://mycache.mydomain.com:3128
# The account details for yum connections
proxy_username=yum-user
proxy_password=qwerty