Oracle Oracle Database 11g Release 2 is not certified to run on Database 11g Release 2 er ikke sertifisert til å kjøre på Fedora Fedora 13 (Goddard) but I wanted to use it to debug a problem with a particular application which used this database. 13 (Goddard), men jeg ønsket å bruke det til å feilsøke et problem med et bestemt program som brukes til denne databasen. I checked on the Internet for details about how to install this version of the Oracle database on Fedora 13 but did not come across comprehensive instructions. Jeg sjekket på internett for detaljer om hvordan du installerer denne versjonen av Oracle database på Fedora 13, men har ikke kommet over omfattende instruksjoner. I therefore decided to write this post as a guide for others who may also wish to install this database on Fedora 13. Jeg derfor besluttet å skrive dette innlegget som en veiledning for andre som kanskje også å installere denne databasen på Fedora 13.
First of all you need to add a number of kernel parameters to /etc/sysctl.conf if they do not already exist in this file or have values less then what is shown here. Først av alt må du legge til en rekke kjerneparametere til / etc / sysctl.conf hvis de ikke allerede finnes i denne filen, eller har verdier mindre enn det som vises her. These are minimum required values by the way; they can be higher. Dette er minimumskravet verdier ved måten, de kan være høyere.
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni 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
Compared to Sammenlignet med Sybase ASE Sybase ASE which only requires kernel.shmmax , an Oracle database requires significantly more kernel parameter tweeking. som krever bare kernel.shmmax, en Oracle-database, krever det betydelig mer kernel parameter tweeking.
The current value of a kernel parameter can be displayed using the following command: Den nåværende verdien av en kjerne parameteren kan vises ved hjelp av følgende kommando:
# /sbin/sysctl -a | grep
If you do not want to reboot your system, just execute the following command to update the kernel with the new parameters: Hvis du ikke ønsker å starte systemet, bare kjør følgende kommando for å oppdatere kjernen med den nye parametere:
# /sbin/sysctl -p
You need to install a number of software packages on your system if the packages are not already installed. Du må installere en rekke programvare pakker på ditt system hvis pakkene ikke allerede er installert. If you have installed the Development Tools package group, the majority of the necessary packages will already be installed. Hvis du har installert Development Tools pakken gruppen, de fleste av de nødvendige pakkene er allerede installert. Install the Development Tools package group and the following packages if not already installed: Installer Development Tools pakken gruppe og følgende pakker hvis den ikke allerede er installert:
- binutils binutils
- libaio, libaio-devel libaio, libaio-devel
- ksh ksh
- sysstat sysstat
- unixODBC, unixODBC-devel unixODBC, unixODBC-devel
- compat-libstdc++-33 compat-libstdc + + -33
Next, you need to modify PAM (Plugable Authentication Module) to increase session limits for the oracle user which we will create later on. Deretter må du endre PAM (Plugable Authentication Module) for å øke økt grenser for oracle brukeren som vi vil lage senere. Add the following line to /etc/pam.d/login if it does not already exist: Legg til følgende linje i / etc / pam.d / login hvis den ikke finnes allerede:
session required pam_limits.so
and add the following lines to /etc/security/limits.conf : og legge til følgende linjer i / etc / security / limits.conf:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
Note that this file may not currently exist on your system. Merk at denne filen ikke finnes på dette tidspunktet på systemet. You may have to create it. Du kan ha for å lage den.
Now create a number of new users and groups as follows: Nå opprette en rekke nye brukere og grupper som følger:
groupadd oinstall groupadd dba groupadd oper groupadd asmadmin useradd -g oinstall -G dba,oper,asmadmin oracle
and set a password for the new oracle user. og angi et passord for den nye oracle brukeren.
You must disable Secure Linux (SELINUX) while installing the database. Du må deaktivere Secure Linux (SELinux) stund installere databasen. Edit /etc/selinux/config as follows: Rediger / etc / SELinux / config som følger:
SELINUX=disabled
and execute setenforce off . og gjennomføre setenforce av.
Edit the /etc/redhat-release file replacing the current release information – Fedora release 13 (Goodwin) – with the following: Rediger / etc / redhat-release fil erstatte dagens utgave informasjon - Fedora løslate 13 (Goodwin) - med følgende:
redhat release 5
You must create the directories in which the Oracle database software will be installed. Du må opprette kataloger der Oracle database-programvaren vil bli installert. In our example, the directory is /app/oracle and the SID is dbhome_1 . I vårt eksempel katalogen er / app / orakel og SID er dbhome_1.
mkdir -p /app/oracle/product/11.2.0/dbhome_1 chown -R oracle:oinstall /app chmod -R 775 /app
The remaining steps require that you are logged in as oracle . De øvrige trinnene krever at du er logget inn som oracle. As user oracle , download Oracle Database 11g R2 from Som bruker orakel, laste ned Oracle Database 11g R2 fra Oracle Oracle and place the two files you downloaded into the same subdirectory. og plasser de to filene du lastet ned i samme underkatalog. I placed them in ~oracle/tmp but you are free to choose any subdirectory. Jeg plasserte dem i ~ oracle / tmp men du står fritt til å velge hvilken underkatalog. Then unzip both files. Så pakk begge filer.
# unzip linux.x64_11gR2_database_1of2.zip # unzip linux.x64_11gR2_database_2of2.zip # ls -d */ database/ #
A single subdirectory called database is created. En enkelt underkatalog kalt databasen opprettes. This subdirectory contains the unzipped files. Dette underkatalog inneholder de utpakkede filene.
Assuming that the user oracle is using the bash shell, add the following lines to the oracle user's .bash_profile file, changing ORACLE_HOSTNAME , ORACLE_HOME , etc. as required to suit your particular requirements: Forutsatt at brukeren oracle bruker skall, legg til følgende linjer til orakelet brukerens. Bash_profile fil, endre ORACLE_HOSTNAME, ORACLE_HOME, osv. som kreves for å dekke dine spesielle behov:
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=ultra.xfpmurphy.com; export ORACLE_HOSTNAME
ORACLE_UNQNAME=dbhome_1; export ORACLE_UNQNAME
ORACLE_BASE=/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=dbhome_1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
If you are using a different shell, you will need to set up these enviromental variables and limits using the appropriate shell syntax and shell initialization file. Hvis du bruker et annet skall, må du sette opp disse miljøvariablene og begrensninger ved hjelp av riktig skallet syntaks og shell initialisering fil. You may also need to set the NLS_LANG environmental variable to match your country, language and desired character set, eg germany_germany.we8iso8859p1 . Du må også sette NLS_LANG miljømessige variabelen til ditt land, språk og ønsket tegnsett, f.eks germany_germany.we8iso8859p1.
Oracle databases are installed using the Oracle Universal Installer (OUI) which is GUI-based and uses the X Window system. Oracle databaser er installert ved hjelp av Oracle Universal Installer (Oui) som er GUI-basert og bruker X Window-systemet. There is no equivalent command line installer. Det finnes ikke tilsvarende kommandolinje installert. You may need to set the your DISPLAY environmental variable and use the xhost utility to configure server access. Du må kanskje angi den annonserte miljø-variabelen og bruk xhost verktøyet til å konfigurere serveren tilgang. Start OUI by issuing the runInstaller command in the ~oracle/tmp/database directory. Start Oui ved utstedelse av runInstaller kommandoen i ~ oracle / tmp / database-katalogen.
If OUI cannot determine your IP address because it is not in /etc/hosts then you will get the following error: Hvis Oui ikke kan fastslå IP-adressen din fordi den ikke er i / etc / hosts vil du få følgende feilmelding:
[INS-06101] IP address of localhost could not be determined
If you see an error message similar to one of the following: “Failed to connect to server”, “Connection refused by server” or “Can't open display”, then you have a problem with X Windows, either with permissions or the DISPLAY variable. Hvis du ser en feilmelding som ligner på en av følgende: "Kunne ikke koble til serveren", "Forbindelse nektet av tjeneren" eller "Kan ikke åpne vise", da har du et problem med X Windows, enten med tillatelser eller DISPLAY variabelen. I am going to assume you know how to fix such problems. Jeg skal anta at du vet hvordan de skal løse slike problemer.
After answering a few basic questions, you should see the following Typical Install Configuration screen: Etter å svare på noen grunnleggende spørsmål, skal du se følgende Typiske Installer-konfigurasjon:

Check the settings carefully before proceeding further. Sjekk innstillingene nøye før du fortsetter videre.
Next OUI checks that the installed software development and runtime packages are correct: Neste Oui sjekker at installert programvare utvikling og runtime pakkene er riktige:

Fedora 13 will fail all these checks. Fedora 13 vil ikke alle disse kontrollene. Just tick the check box Ignore All on the top right hand to ignore these errors. Bare kryss av i boksen Ignorer alle øverst til høyre for å se bort fra disse feilene. So long as you have the latest version of each of these packages installed, all will be fine. Så lenge du har siste versjon av hver av disse pakkene er installert, vil alle bli bra. Note that you do not need to install pdksh (Public Domain Korn Shell) if you have ksh installed. Merk at du ikke trenger å installere pdksh (Public Domain Korn Shell) hvis du har ksh installert.
During the installation, OUI will popup a dialog window advising you that an error has occurred with ins_emagent.mk . Under installasjonen, vil Oui populær en dialogvindauget rådgivning du at en feil har oppstått med ins_emagent.mk. See below: Se nedenfor:

This error is due to a change in the GCC linker in Fedora 13. Denne feilen skyldes en endring i GCC linker i Fedora 13. The announcement is Utlysningen er here her . . The fix is to edit $ORACLE_HOME/sysman/lib/ins_emagent.mk , search for the line $(MK_EMAGENT_NMECTL) and replace the line with $(MK_EMAGENT_NMECTL) -lnnz11 as shown above. Reparasjonen er å redigere $ ORACLE_HOME / sysman / lib / ins_emagent.mk, søke etter linjen $ (MK_EMAGENT_NMECTL) og erstatte linje med $ (MK_EMAGENT_NMECTL)-lnnz11 som vist ovenfor.
After saving the changed file, select the Retry option, and the install should successfully continue. Etter å ha lagret de endrede filen, velger Igjen alternativet, og det installere bør vellykket fortsette. Eventually you should see the Database Configuration Assistant screen as shown below: Til slutt bør du se databasekonfigurasjon hjelperen skjermbildet som vist nedenfor:

Do not ignore the Password Management button; press it and change the passwords for SYS and SYSTEM . Ikke overse passordadministrasjon knappen, trykk på den og endre passord for SYS og SYSTEM.
You are now ready to do a basic smoketest of the installed database software. Du er nå klar til å gjøre en grunnleggende smoketest av den installerte programvaren databasen.
$ id uid=502(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),504(asmadmin) $ cd $ORACLE_HOME $ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 06-AUG-2010 20:47:56 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production System parameter file is /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora Log messages written to /app/oracle/diag/tnslsnr/ultra/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ultra.xxxxxxxxxx.com)(PORT=1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 06-AUG-2010 20:47:58 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora Listener Log File /app/oracle/diag/tnslsnr/ultra/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ultra.xxxxxxxxxx.com)(PORT=1521))) The listener supports no services The command completed successfully $ $ emctl start dbconsole Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved. https://ultra.xxxxxxxxxxx.com:1158/em/console/aboutApplication Starting Oracle Enterprise Manager 11g Database Control ...... started. ------------------------------------------------------------------ Logs are generated in directory /app/oracle/product/11.2.0/dbhome_1/ultra.xxxxxxxxxx.com_orcl/sysman/log $ $ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Fri Aug 6 20:50:12 2010 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area 839282688 bytes Fixed Size 2217992 bytes Variable Size 524290040 bytes Database Buffers 306184192 bytes Redo Buffers 6590464 bytes Database mounted. Database opened. SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options $
If you have got this far with your installation of Oracle 11g, all is well. Hvis du har fått dette langt med installasjonen av Oracle 11g, alt er vel. The core Oracle 11g database software is installed and working. Kjernen Oracle 11g database-programvare er installert og fungerer. You may have some tweaking to do for your particular requirements but that is outside the scope of this post. Du har kanskje litt tweaking å gjøre for din behov, men som ligger utenfor omfanget av dette innlegget. Note the listener supports no services message; we will address this shortly. Legg merke til lytteren støtter ingen tjenester beskjed, vi vil løse dette snart.
First, as root , we need to fix up a couple of files. Først som root, trenger vi å fikse opp et par filer. Edit the /etc/oratab file setting the restart flag for each instance to Y : Rediger / etc / oratab filen innstilling omstarten flagget for hver forekomst til Y:
DB11G:/u01/app/oracle/product/11.2.0/dbhome_1:Y
Edit the /etc/redhat-release file to restore the original release information: Rediger / etc / redhat-release-fil for å gjenopprette den opprinnelige utgivelsen informasjon:
Fedora release 13 (Goodwin)
At this stage you should be able to invoke the Oracle sqldeveloper GUI by invoking $ORACLE_HOMEsqldeveloper/sqldeveloper/bin/sqldeveloper . På dette stadiet bør du være i stand til å påkalle Oracle sqldeveloper GUI ved å påberope $ ORACLE_HOMEsqldeveloper / sqldeveloper / bin / sqldeveloper. Once you have configured a valid connection, you should see a screen similar to this: Når du har konfigurert en gyldig forbindelse, bør du se et skjermbilde som ligner på dette:

If you configure listener.ora you can also access the Oracle Enterprise Console via the Web as shown here: Hvis du konfigurerer listener.ora kan du også få tilgang til Oracle Enterprise konsollen via nettet som vist her:

Here is what is in my listener.ora : Her er hva som er i listener.ora min:
$ cat $ORACLE_HOME/admin/listener.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ultra.xfpmurphy.com)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = DBHOME)
(ORACLE_HOME = /app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = orcl)
)
)
ADR_BASE_FPM = /app/oracle
$
You will obviously have to use different values for HOST and possibly SID_NAME , ORACLE_HOME and GLOBAL_DBNAME . Du vil selvsagt nødt til å bruke forskjellige verdier for HOST og muligens SID_NAME, ORACLE_HOME og GLOBAL_DBNAME.
To automatically start and shop the Oracle database during system startup and shutdown you need to place an appropriate script in the /etc/rc.d/init.d directory and symbolically link it to the appropriate rc directories. For å starte automatisk og butikk i Oracle-databasen under oppstart og avslutning må du plassere en passende skript i / etc / rc.d / init.d katalogen og symbolsk koble den til den aktuelle rc katalogene. Here is a script to start or stop the Oracle database using dbinit : Her er et skript for å starte eller stoppe Oracle database dbinit:
#!/bin/bash
#
# init file for starting and stopping Oracle 11g database using dbstart/dbstop
#
# chkconfig: 35 80 30
# description: Oracle database startup and shutdown script
#
. /etc/rc.d/init.d/functions
ORACLE_BASE=/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=dbhome_1
case "$1" in
start)
echo -n $"Starting Oracle DB:"
su - oracle -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle DB:"
su - oracle -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac
and here is an alternative script to start and stop the Oracle database using Oracle Enterprise Manager Database Control: Og her er et alternativ skriften å starte og stoppe Oracle database Oracle Enterprise Manager Database Control:
#!/bin/bash
#
# init file for starting and stopping Oracle 11g database using emctl
#
# chkconfig: 35 80 30
# description: Oracle database startup and shutdown script using Enterprise manager console
#
. /etc/rc.d/init.d/functions
ORACLE_BASE=/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=dbhome_1
case "$1" in
start)
echo -n $"Starting Oracle Enterprise Manager Database Console:"
su - oracle -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle Enterprise Manager Database Console:"
su - oracle -c "$ORACLE_HOME/bin/emctl stop dbconsole"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac
I assume that you know how to install a new init script so I am not going to describe the process here. Jeg antar at du vet hvordan du installerer en ny init skript så jeg ikke jeg kommer til å beskrive prosessen her.
Please let me know if I left out anything important that you feel would of been of help to you in installing Oracle 11g on Fedora 13 and I will add it to this post. Gi meg beskjed hvis jeg utelatt noe viktig som du tror vil av blitt til hjelp for deg å installere Oracle 11g på Fedora 13, og jeg vil legge det til dette innlegget.























Hi Finnbarr Hei Finnbarr
Very helpful description. Veldig nyttig beskrivelse. Thanks a lot. Takk mye. Sole problem I had, was the SID, which was not consistent in your description. Sole problemet jeg hadde, var SID, som ikke var konsistent i beskrivelsen din. Would be helpful to use orcl only. Ville være nyttig å bruke orcl bare.
And a another small problem I had was Og en annen lite problem jeg hadde var
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXRTPROC1521))) Feil lytter på: (BESKRIVELSE = (ADRESSE = (PROTOKOLL = IPC) (KEY = EXRTPROC1521)))
TNS-12555: TNS:permission denied TNS-12555: TNS: Permission denied
TNS-12560: TNS:protocol adapter error TNS-12560: TNS: protokoll adapter error
TNS-00525: Insufficient privilege for operation TNS-00525: Utilstrekkelig privilegium for drift
Linux Error: 1: Operation not permitted Linux Feil: 1: Operation ikke tillatt
Could solve this using this post: http://forums.oracle.com/forums/thread.jspa?threadID=931431, by replacing the KEY to EXRTPROC0 Kunne løse dette ved hjelp av dette innlegget: http://forums.oracle.com/forums/thread.jspa?threadID=931431, ved å bytte ut nøkkelen til EXRTPROC0
Final wish: Maybe, you can also describe how to install a new init script. Siste ønske: Kanskje kan du også beskrive hvordan du installerer en ny init script. Then, your tutorial is complete in all terms :-) Deretter din opplæringen er ferdig i alle betingelser :-)
Encountered another issue: Det oppstod et annet problem:
Error in invoking target 'client_sharedlib' of makefile '/usr/local/applications/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. Feil i påkalle mål «client_sharedlib 'av Makefile' / usr/local/applications/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk '. See '/usr/local/applications/oraInventory/logs/installActions2010-08-30_06-30-14PM.log' for details. Se "/ usr/local/applications/oraInventory/logs/installActions2010-08-30_06-30-14PM.log" for detaljer.
The file contains this reference to “client_sharedlib”: Filen inneholder denne referansen til "client_sharedlib":
client_sharedlib: client_sharedlib:
$(GENCLNTSH) $ (GENCLNTSH)
$(REMOVE_COMPATIBILITY_LINKS) $ (REMOVE_COMPATIBILITY_LINKS)
$(CREATE_COMPATIBILITY_LINKS) $ (CREATE_COMPATIBILITY_LINKS)
$(GENOCCISH) $ (GENOCCISH)
$(GENAGTSH) $(LIBAGTSH) 1.0 $ (GENAGTSH) $ (LIBAGTSH) 1.0
Any thoughts? Noen tanker?
Check that all the requisite packages are installed. Kontroller at alle nødvendige pakker er installert.
Make sure that you have downloaded the correct version of Oracle for the platform you are on – x64 for x64 platform, etc. Kontroller at du har lastet ned riktig versjon av Oracle for plattformen du er på - x64 for x64-plattformen, etc.
Check that ORACLE_HOME and ORACLE_SID are correctly specified. Sjekk at ORACLE_HOME og ORACLE_SID er korrekt spesifisert.