background image

Chapter 8.

19

Setting Semaphores

Semaphores can best be described as counters which are used to provide synchronization between
processes or between threads within a process for shared resources like shared memories. 

System

V

 semaphores support semaphore sets where each one is a counting semaphore. So when an

application requests semaphores, the kernel releases them in sets. The number of semaphores per
set can be defined through the kernel parameter SEMMSL.

To see all semaphore settings, run:

ipcs -ls

8.1. The SEMMSL Parameter

This parameter defines the maximum number of semaphores per semaphore set.

Oracle recommends SEMMSL to be at least 250 for 9i R2 and 10g R1/R2 databases except for 9i
R2 on x86 platforms where the minimum value is lower. Since these recommendations are minimum
settings, it is best to set it always to at least 250 for 9i and 10g databases on x86 and x86-64
platforms.

Note

If a database gets thousands of concurrent connections where the 

ora.init

 parameter

PROCESSES

 is very large, then SEMMSL should be larger as well. Note what 

Metalink

Note:187405.1 and Note:184821.1 have to say regarding SEMMSL: "The SEMMSL
setting should be 10 plus the largest 

PROCESSES

 parameter of any Oracle database on

the system". Even though these notes talk about 9i databases this SEMMSL rule also
applies to 10g databases. I have seen low SEMMSL settings to be an issue for 10g RAC
databases where Oracle recommended to increase SEMMSL and to calculate it according
to the rule mentioned in these notes. An example for setting semaphores for higher

PROCESSES

 settings can be found at 

Section 8.6, “An Example of Semaphore Settings”

.

8.2. The SEMMNI Parameter

This parameter defines the maximum number of semaphore sets for the entire Linux system.

Oracle recommends SEMMNI to be at least 128 for 9i R2 and 10g R1/R2 databases except for 9i
R2 on x86 platforms where the minimum value is lower. Since these recommendations are minimum
settings, it is best to set it always to at least 128 for 9i and 10g databases on x86 and x86-64
platforms.

8.3. The SEMMNS Parameter

This parameter defines the total number of semaphores (not semaphore sets) for the entire Linux
system. A semaphore set can have more than one semaphore, and as the 

semget(2) man

 page

explains, values greater than SEMMSL * SEMMNI makes it irrelevant. The maximum number of
semaphores that can be allocated on a Linux system will be the lesser of: SEMMNS or (SEMMSL *
SEMMNI).

Summary of Contents for CLUSTER SUITE FOR ENTERPRISE LINUX 5.1

Page 1: ...Red Hat Enterprise Linux 5 1 Red Hat Enterprise Linux Oracle Tuning Guide Tuning and optimizing performance tips and guidelines for Oracle 9i and 10g databases on Red Hat Enterprise Linux 5 4 3 and 2 1 ...

Page 2: ...p www opencontent org openpub Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder Distribution of the work or derivative of the work in any standard paper book form for commercial purposes is prohibited unless prior permission is obtained from the copyright holder Red Hat and the Red Hat Shadow Man logo are register...

Page 3: ...MMNS Parameter 19 8 4 The SEMOPM Parameter 20 8 5 Setting Semaphore Parameters 20 8 6 An Example of Semaphore Settings 20 9 Setting File Handles 23 10 Adjusting Network Settings 25 10 1 Changing Network Adapter Settings 25 10 2 Changing Network Kernel Settings 25 10 3 Flow Control for e1000 Network Interface Cards 26 11 Setting Shell Limits for the Oracle User 27 11 1 Limiting Maximum Number of Op...

Page 4: ...ch Address for Shared Memory Segments in Oracle 9i 51 15 6 Allowing the Oracle User to Change the Mapped Base Address for Shared Libraries 52 16 Growing the Oracle SGA to 2 7 3 42 GB in x86 Red Hat Enterprise Linux 3 4 and 5 Without VLM 55 16 1 General 55 16 2 Mapped Base Address for Shared Libraries in Red Hat Enterprise Linux 3 4 and 5 55 16 3 Oracle 10g SGA Sizes in Red Hat Enterprise Linux 3 4...

Page 5: ...t Enterprise Linux 115 30 Preparing Red Hat Enterprise Linux for an Oracle Database Installation 117 30 1 Unpacking and Downloading the Oracle9i Installation Files 117 30 2 Setting Swap Space 117 30 3 Setting Shared Memory 118 30 4 Examining Temporary tmp Space 118 30 5 Sizing Oracle Disk Space 118 31 Verifying Required Packages RPMs 119 31 1 Required Packages for Red Hat Advanced Server 2 1 119 3...

Page 6: ...acle Tuning Guide vi 36 2 Patching Oracle9i R2 to 9 2 0 6 0 on Red Hat Enterprise Linux 4 138 37 Starting and Shutting down the Oracle9i Database 141 38 Oracle Installation Errors 143 39 Reference List 151 A Revision History 153 ...

Page 7: ...Part I Tuning and Optimizing Red Hat Enterprise Linux for Oracle Database 9i and 10g ...

Page 8: ......

Page 9: ... to the 32 bit address limitations of the x86 platform However many steps described in this document also apply to x86 64 platforms Sections that do not specifically say that its only applicable to 32bit or 64bit apply to both platforms If you think that a section is not very clear on that let me know For supported system configurations and limits for Red Hat Enterprise Linux releases see http www...

Page 10: ...4 ...

Page 11: ...is means that the low memory area is the most performance critical zone For example if you run resource intensive applications or have a lot of memory installed and are simultaneously running resource intensive applications memory addresses below 896MB can become constrained This happens because more kernel structures must be allocated to these low memory addresses Low memory starvation happens wh...

Page 12: ...AM The kernel enterprise kernel should be used for systems with more than 4GB of RAM up to 16GB In Red Hat Enterprise Linux 5 a 32 bit kernel is always a hugemem kernel so there is no need to install a special kernel 2 3 The 64 bit Architecture This is the architecture that should be used whenever possible If you can go with a x86_64 platform ensure that all drivers you need are supported on x86_6...

Page 13: ...re when you upgrade the kernel you must ensure that all proprietary modules can be found in the right directory so that the kernel can load them To check which kernels are installed run the following command rpm qa grep kernel To check which kernel is currently running execute the following command uname r For example to install the 2 4 21 32 0 1 ELhugemem kernel download the kernel hugemem RPM an...

Page 14: ...gemem kernel will be booted If the default attribute would be set to 1 then 2 4 21 32 0 1 ELsmp would be booted After you installed the newer kernel reboot the system Once you are sure that you do not need the old kernel anymore you can remove the old kernel by running rpm e OldKernelVersion When you remove a kernel you do not need to update etc grub conf ...

Page 15: ...xecuting the command echo sched_name sys block sdx queue scheduler The Completely Fair Queuing CFQ scheduler is the default algorithm in Red Hat Enterprise Linux 4 which is suitable for a wide variety of applications and provides a good compromise between throughput and latency In comparison to the CFQ algorithm the Deadline scheduler caps maximum latency per request and maintains a good disk thro...

Page 16: ...10 ...

Page 17: ...y programs or applications like Oracle then Linux will free up the buffers and cache to yield memory for the applications If your system runs for a while you will usually see a small number under the field free on the first line 5 2 Tuning the Page Cache Page Cache is a disk cache which holds data of files and executable programs for example pages with actual contents of files or block devices Pag...

Page 18: ...m pagecache 1 15 30 etc sysctl conf With Red Hat Enterprise Linux 4 and 5 the pagecache is dynamically adjusted You can adjust the minimum free pages using the following command echo 1024 proc sys vm min_free_kbytes To make the change permanent add the following line to the file etc sysctl conf echo vm min_free_kbytes 1024 etc sysctl conf The pagecache pages can be reclaimed by adjusting the swapp...

Page 19: ...s swap space it will sometimes not decrease afterward This saves I O if memory is needed and pages do not have to be swapped out again when the pages are already in the swap space However if swap usage gets close to 80 100 your threshold may be lower if you use a large swap space then a closer look should be taken at the system see also Section 6 2 Checking Swap Space Size and Usage Depending on t...

Page 20: ...0 997 264 2241 3945 6 13 0 81 0 1 0 947860 17188 20848 0 0 647 280 2386 3985 9 9 1 80 0 1 0 944932 19304 20848 0 0 705 0 1501 2580 4 9 0 87 The fields si and so show the amount of memory paged in from disk and paged out to disk respectively If the server shows continuous swap activity then more memory should be added or the SGA size should be reduced To check the history of swap activity you can u...

Page 21: ...egment In fact the upper limit for a shared memory segment for an Oracle 10g R1 SGA using the hugemem kernel is roughly 3 42 GB 3 67 billion bytes since virtual address space is also needed for other things like shared libraries This means if you have three 2 GB shared memory segments on a 32 bit system no process can attach to more than one shared memory segment at a time Also note if you set SHM...

Page 22: ...96 for 9i and 10g databases on x86 and x86 64 platforms To determine the system wide maximum number of shared memory segments run cat proc sys kernel shmmni 4096 The default shared memory limit for SHMMNI can be changed in the proc file system without reboot echo 4096 proc sys kernel shmmni Alternatively you can use sysctl 8 to change it sysctl w kernel shmmni 4096 To make a change permanent add t...

Page 23: ...to the file etc sysctl conf This file is used during the boot process echo kernel shmall 2097152 etc sysctl conf 7 4 Removing Shared Memory Sometimes after an instance crash you may have to remove Oracle s shared memory segments manually To see all shared memory segments that are allocated on the system execute ipcs m Shared Memory Segments key shmid owner perms bytes nattch status 0x8f6e2129 9830...

Page 24: ...SID orcl Shared Memory ID KEY No shared memory segments used Semaphores ID KEY No semaphore resources used Oracle Instance not alive for sid orcl Instance is up and running sysresv i IPC Resources for ORACLE_SID orcl Shared Memory ID KEY 2818058 0xdc70f4e4 Semaphores ID KEY 688128 0xb11a5934 Oracle Instance alive for sid orcl SYSRESV 005 Warning Instance maybe alive aborting remove for sid orcl In...

Page 25: ...rding SEMMSL The SEMMSL setting should be 10 plus the largest PROCESSES parameter of any Oracle database on the system Even though these notes talk about 9i databases this SEMMSL rule also applies to 10g databases I have seen low SEMMSL settings to be an issue for 10g RAC databases where Oracle recommended to increase SEMMSL and to calculate it according to the rule mentioned in these notes An exa...

Page 26: ...orms 8 5 Setting Semaphore Parameters To determine the values of the four described semaphore parameters run cat proc sys kernel sem 250 32000 32 128 These values represent SEMMSL SEMMNS SEMOPM and SEMMNI Alternatively you can run ipcs ls All four described semaphore parameters can be changed in the proc file system without reboot echo 250 32000 100 128 proc sys kernel sem Alternatively you can us...

Page 27: ... increase SEMMNS to 641280 5010 128 As shown at Section 8 4 The SEMOPM Parameter a semaphore set can have the maximum number of SEMMSL semaphores per semaphore set and it is recommended to set SEMOPM equal to SEMMSL Since SEMMSL is set to 5010 the SEMOPM parameter should be set to 5010 as well Hence if the ora init parameter PROCESSES is set to 5000 then the semaphore settings should be as follows...

Page 28: ...22 ...

Page 29: ...h the 2 6 kernel the maximum file handles that can be allocated also found in proc sys fs file max The kernel dynamically allocates file handles whenever a file handle is requested by an application but the kernel does not free these file handles when they are released by the application The kernel recycles these file handles instead This means that over time the total number of allocated file han...

Page 30: ...24 ...

Page 31: ...racle 10g network settings should be adjusted for standalone databases as well Oracle recommends the default and maximum send buffer size SO_SNDBUF socket option and receive buffer size SO_RCVBUF socket option to be set to 256 KB The receive buffers are used by TCP and UDP to hold received data until it is read by the application The receive buffer cannot overflow because the peer is not allowed t...

Page 32: ... following port range sysctl w net ipv4 ip_local_port_range 1024 65000 To make the change permanent add the following line to the etc sysctl conf file which is used during the boot process net ipv4 ip_local_port_range 1024 65000 The first number is the first local port allowed for TCP and UDP traffic and the second number is the last port number 10 3 Flow Control for e1000 Network Interface Cards ...

Page 33: ... security feature Privilege Separation 11 1 Limiting Maximum Number of Open File Descriptors for the Oracle User After proc sys fs file max has been changed see Chapter 9 Setting File Handles there is still a per user limit of maximum open file descriptors su oracle ulimit n 1024 To change this limit edit the etc security limits conf file as root and make the following changes or add the following...

Page 34: ...fferent for other shells su oracle ulimit n 4096 The default limit for oracle is now 4096 and the oracle user can increase the number of file handles up to 63536 su oracle ulimit n 4096 ulimit n 63536 ulimit n 63536 To make this change permanent you could add ulimit n 63536 for bashbash to the oracle bash_profile file which is the user start up file for the bash shell on Red Hat Enterprise Linux t...

Page 35: ...oracle soft nproc 2047 oracle hard nproc 16384 To make this change permanent you could add ulimit u 16384 for bash to the oracle bash_profile file which is the user start up file for the bash shell on Red Hat Enterprise Linux to verify your shell execute echo SHELL To do this you could simply copy and paste the following commands for oracle s bash shell su oracle cat oracle bash_profile EOF ulimit...

Page 36: ...30 ...

Page 37: ...ynchronous I O Support Note Oracle 9iR2 on Red Hat Enterprise Linux 3 4 and 5 the 9 2 0 4 patchset or higher needs to be installed together with another patch for asynchronous I O see Metalink Note 279069 1 To relink Oracle9i R2 for asynchronous I O execute the following commands shutdown Oracle SQL shutdown su oracle cd ORACLE_HOME rdbms lib make f ins_rdbms mk async_on make f ins_rdbms mk ioracl...

Page 38: ...s shipped with asynchronous I O support enabled This means that 10g Release 2 does not need to be relinked However there is a bug in Oracle 10 1 0 2 that causes asynchronous I O not to be installed correctly which can result in poor DB performance see Bug 3438751 and Note 270213 1 To relink Oracle 10g R1 for asynchronous I O execute the following commands shutdown Oracle SQL shutdown su oracle cd ...

Page 39: ...lso want to enable Direct I O Support which is available in Red Hat Enterprise Linux 4 or 5 set filesystemio_options to setall In Red Hat Enterprise Linux 3 It is recommended you use direct I O ONLY for ext2 ext3 GFS NFS and OCFS file systems In Red Hat Enterprise Linux 4 and 5 It is strongly recommended to use the setall parameter for ext2 ext3 GFS NFS and OCFS file systems 12 4 Tuning Asynchrono...

Page 40: ...us I O ldd ORACLE_HOME bin oracle grep libaio nm ORACLE_HOME bin oracle grep io_getevent w io_getevents If ORACLE_HOME bin oracle is relinked with asynchronous I O it does not necessarily mean that Oracle is really using it You also have to ensure that Oracle is configured to use asynchronous I O calls see Enabling Asynchronous I O Support To verify whether Oracle is making asynchronous I O calls ...

Page 41: ...used 81285 56K 132176 36K 61 5 Minimum Average Maximum Object 0 01K 0 23K 128 00K OBJS ACTIVE USE OBJ SIZE SLABS OBJ SLAB CACHE SIZE NAME 178684 78396 43 0 12K 5764 31 23056K size 128 127632 36292 28 0 16K 5318 24 21272K dentry_cache 102815 74009 71 0 69K 20563 5 82252K ext3_inode_cache 71775 32434 45 0 05K 957 75 3828K buffer_head 19460 15050 77 0 27K 1390 14 5560K radix_tree_node 13090 13015 99 ...

Page 42: ...36 ...

Page 43: ...o avoid hot spots ASM does also it is own striping and offers mirroring ASM can be setup using the ASM library driver or raw devices Starting with 10g R2 neither is necessarily required Note Since raw I O is now being deprecated by the Linux community and Red Hat Enterprise Linux 4 and 5 Oracle 10g R2 no longer requires raw devices for the database Oracle 10g R2 automatically opens all block devic...

Page 44: ...w1 it will write directly to dev sdz bypassing the OS block buffer cache Warning The following command will overwrite data on dev sdz dd if dev zero of dev sdz count 1 To permanently bind dev raw raw1 to dev sdz add an entry to the etc sysconfig rawdevices file dev raw raw1 dev sdz Now when you run etc init d rawdevices it will read the etc sysconfig rawdevices file and execute the raw command for...

Page 45: ...cute the following command mknod u02 orcl system01 dbf c 162 1 This command creates a new raw device called u02 orcl system01 dbf with minor number 1 which is equivalent to the first raw device dev raw raw1 The major number 162 designates the device as a raw device A major number always identifies the driver associated with the device To grant oracle dba read and write permissions execute chown or...

Page 46: ...d and still requires raw devices or a Cluster File System There is also another bug see bug number 5021707 3 By default reading and writing to block devices are buffered I Os Oracle Database 10g R2 now automatically opens all block devices such as SCSI disks using the O_DIRECT flag thus bypassing the OS cache For example when you create disk groups for ASM and you want to use the SCSI block device...

Page 47: ...t has to perform several physical memory reads to retrieve page table information To speed up this translation process for future references to the same virtual address the CPU saves information for recently accessed virtual addresses in its Translation Lookaside Buffers TLB which is a small but very fast cache in the CPU The use of this cache makes virtual memory access very fast Since TLB misses...

Page 48: ...udent to add an additional 200MB I have seen ASM instances creating between 70 MB and 150 MB shared memory segments And there might be other non Oracle processes that allocate shared memory segments as well It is however not recommended to allocate too many Big or Huge Pages These pre allocated pages can only be used for shared memory This means that unused Big or Huge Pages will not be available ...

Page 49: ...l is configured by adding a parameter to the kernel boot command For example if you use GRUB and you want to set the Big Pages pool to 1000 MB edit the etc grub conf file and add the bigpages parameter as follows default 0 timeout 10 title Red Hat Linux Advanced Server 2 4 9 e 40enterprise root hd0 0 kernel vmlinuz 2 4 9 e 40enterprise ro root dev sda2 bigpages 1000MB initrd initrd 2 4 9 e 40enter...

Page 50: ... while To verify whether the kernel was able to allocate the requested number of Huge Pages execute grep HugePages_Total proc meminfo HugePages_Total 512 The output shows that 512 Huge Pages have been allocated Since the size of Huge Pages on this system is 2048 KB a Huge Page pool of 1GB has been allocated and pinned in physical memory If HugePages_Total is lower than what was requested with huge...

Page 51: ...change permanent add the following line to the file etc sysctl conf This file is used during the boot process The Huge Pages pool is usually guaranteed if requested at boot time echo vm nr_hugepages 512 etc sysctl conf If you allocate a large number of Huge Pages the execution of the above commands can take a while To verify whether the kernel was able to allocate the requested number of Huge Page...

Page 52: ...Limits for Your Oracle User Log in as the oracle user again and verify the new memlock setting by executing ulimit l before starting the database After an Oracle DB startup you can verify the usage of Huge Pages by checking whether the number of free Huge Pages has decreased grep HugePages_Free proc meminfo To free the Huge Pages pool you can execute echo 0 proc sys vm nr_hugepages This command us...

Page 53: ...0 rw r 1 oracle dba 2147483648 Nov 1 16 46 ora_orcl1_1277954 The next command shows how many Huge Pages are currently being used on this system grep Huge proc meminfo HugePages_Total 1536 HugePages_Free 194 Hugepagesize 2048 kB The output shows that 1342 1536 194 Huge Pages are being used This translates into 2814377984 1342 2048 1024 bytes being allocated in the Huge Pages pool This number matche...

Page 54: ...48 ...

Page 55: ...ce Used by and for the kernel itself In older Linux systems the split between brk 2 and mmap 2 was changed by setting the kernel parameter TASK_UNMAPPED_BASE and by recompiling the kernel However on all Red Hat Enterprise Linux systems this parameter can be changed dynamically as will be shown later The mmap allocated memory grow bottom up from 1GB and the stack grows top down from around 3GB The ...

Page 56: ...pped at 0x08048000 08048000 0ab11000 r xp 00000000 08 09 273078 ora product 9 2 0 bin oracle The data section is mapped at 0x0ab11000 0ab11000 0ab99000 rw p 02ac8000 08 09 273078 ora product 9 2 0 bin oracle The uninitialized data segment bss is allocated at 0x0ab99000 0ab99000 0ad39000 rwxp 00000000 00 00 0 The base address for shared libraries is 0x40000000 40000000 40016000 r xp 00000000 08 01 ...

Page 57: ...ssion that spawns Oracle processes instance must be changed for the child processes to inherit the new mapping Login as oracle and run the following command to obtain the process ID of the shell where sqlplus will later be executed echo Login as root in another shell terminal session and change the mapped_base for this process ID to 0x10000000 decimal 268435456 echo 268435456 proc pid mapped_base ...

Page 58: ...dbw0_ ORACLE_SID 13519 grep so proc 13519 maps head 1 10000000 10016000 r xp 00000000 03 02 750738 lib ld 2 2 4 so grep SYS proc 13519 maps head 1 15000000 24000000 rw s 00000000 00 04 262150 SYSV3ecee0b0 deleted The SGA size can now be increased to approximately 2 7 GB If you create the SGA larger than 2 65 GB then test the database very thoroughly to ensure no memory allocation problems arise 15...

Page 59: ...ppedBase bash_profile Now log in as oracle ssh oracle localhost oracle localhost s password Last login Sun Jan 7 13 59 22 2003 from localhost cat proc mapped_base echo 268435456 Note If the mapped base address for shared libraries for the Oracle processes was changed then every Linux shell that spawns Oracle processes for example listener sqlplus etc must have the same mapped base address as well ...

Page 60: ...54 ...

Page 61: ... points to the current running process which in this example is the cat process cat etc redhat release Red Hat Enterprise Linux AS release 3 Taroon Update 6 cat proc self maps 00a23000 00a38000 r xp 00000000 08 09 14930 lib ld 2 3 2 so 00a38000 00a39000 rw p 00015000 08 09 14930 lib ld 2 3 2 so 00b33000 00c66000 r xp 00000000 08 09 69576 lib tls libc 2 3 2 so 00c66000 00c69000 rw p 00132000 08 09 ...

Page 62: ...r xp 00000000 08 08 44751 lib ld 2 2 4 so 40016000 40017000 rw p 00015000 08 08 44751 lib ld 2 2 4 so 40017000 40018000 rw p 00000000 00 00 0 40022000 40155000 r xp 00000000 08 08 47419 lib i686 libc 2 2 4 so 40155000 4015a000 rw p 00132000 08 08 47419 lib i686 libc 2 2 4 so 4015a000 4015f000 rw p 00000000 00 00 0 bffea000 bffee000 rwxp ffffd000 00 00 0 The above mappings show that the Mapped Base...

Page 63: ...estricts the remaining 32 bit address space for Oracle processes This means that less address space will be available for e g PGA memory If the application uses a lot of PGA memory then PGA allocations could fail even if there is sufficient free physical memory Therefore in certain cases it may be prudent not to change the SGA Attach Address to increase the SGA size but to use Chapter 17 Using Ver...

Page 64: ...talink Note 329378 1 su oracle cd ORACLE_HOME rdbms lib f ksms s_orig cp ksms s ksms s_orig genksms s 0Xe000000 ksms s make f ins_rdbms mk ksms o make f ins_rdbms mk ioracle For a detailed description of these commands see Lowering the SGA Attach Address for Shared Memory Segments in Oracle 9i You can verify the new lowered SGA attach address by running the following command objdump t ORACLE_HOME ...

Page 65: ...called Very Large Memory VLM must be enabled VLM moves the database buffer cache part of the SGA from the System V shared memory to the shared memory file system It is still considered one large SGA but it consists now of two different OS shared memory entities It is noteworthy to say that VLM uses 512MB of the non buffer cache SGA to manage VLM This memory area is needed for mapping the indirect ...

Page 66: ...h memory for ramfs Since ramfs is not swappable it is by default only usable by root If you put too much on a ramfs file system you can easily hang the system To mount the ramfs file system and to make it usable for the Oracle account execute umount dev shm mount t ramfs ramfs dev shm chown oracle dba dev shm When Oracle starts it will create a file in the dev shm directory that corresponds to the...

Page 67: ...racle soft memlock 3145728 oracle hard memlock 3145728 Login as Oracle again and check max locked memory limit ulimit l 3145728 If it is not working after a ssh log in then you may have to set the SSH parameter UsePrivilegeSeparation see Chapter 22 Setting Shell Limits for Your Oracle User If memlock is not set or too small you will get error messages similar to this one ORA 27103 internal error L...

Page 68: ...62 ...

Page 69: ...lease 2 10 2 for Linux x86 64 1 Oracle 10g R2 10 2 0 1 0 3 4 and 5 x86 See also Oracle Database Release Notes 10g Release 2 10 2 for Linux x86 2 Oracle 10g R1 10 1 0 3 4 x86 64 See also Oracle Database Installation Guide 10g Release 1 10 1 0 3 for Linux x86 64 3 Oracle 10g R1 10 1 0 3 4 x86 See also Oracle Database Release Notes 10g Release 1 10 1 0 3 0 for Linux x86 4 Oracle 10g R1 10 1 0 3 3 x86...

Page 70: ...ed Hat Enterprise Linux Version Architecture Comments 1 10 1 for UNIX Systems 7 Table 3 Table displaying Certified Red Hat Enterprise Linux For Oracle 10g For Validation and Certification information see Oracle s Certification Matrices 8 8 https metalink oracle com metalink certify certify welcome ...

Page 71: ...the numbers posted on the OTN website where you downloaded the file from cksum ship db lnx32 cpio gz Uncompress the downloaded files gunzip ship db lnx32 cpio gz Unpack ship db lnx32 cpio cpio idmv ship db lnx32 cpio Disk1 stage Components oracle server 10 1 0 3 0 1 Disk1 stage Components oracle server 10 1 0 3 0 Disk1 stage Components oracle server Disk1 stage Components oracle tg 10 1 0 3 0 1 Da...

Page 72: ...66 ...

Page 73: ...mp If you do not have enough space in the tmp file system you can temporarily create a tmp directory in another file system Here is how you can do this su root mkdir AnotherFilesystem tmp chown root root AnotherFilesystem tmp chmod 1777 AnotherFilesystem tmp export TEMP AnotherFilesystem export TMPDIR AnotherFilesystem The TEMP AnotherFilesystem file is used by Oracle The TMPDIR AnotherFilesystem ...

Page 74: ...rsion otherwise the OUI prerequisite check will fail To check if you are running the x86 64 kernel on a x86 64 platform run uname mi x86_64 x86_64 To check the RPMs run rpm q qf NAME VERSION RELEASE ARCH n binutils compat db control center gcc gcc c glibc glibc common gnome libs libstdc libstdc devel make pdksh sysstat xscreensaver libaio It is important to have these x86 64 RPMs installed The abo...

Page 75: ...inux x86 lists the following required package versions or higher make 3 79 1 gcc 3 2 3 34 glibc 2 3 2 95 20 compat db 4 0 14 5 compat gcc 7 3 2 96 128 compat gcc c 7 3 2 96 128 compat libstdc 7 3 2 96 128 compat libstdc devel 7 3 2 96 128 openmotif21 2 1 30 8 setarch 1 3 1 Note libaio 0 3 96 RPM or a newer version is required for the OUI to work successfully To check the RPMs run rpm q make gcc gl...

Page 76: ... above list glibc devel and other RPMs are listed twice This means that you have to install packages for both architectures x86 and x86 64 For Oracle 10g R1 32 bit on Red Hat Enterprise Linux 3 x86 the document Oracle Database Installation Guide 10g Release 1 10 1 for UNIX Systems lists the following required package versions or higher make 3 79 1 gcc 3 2 3 34 glibc 2 3 2 95 20 compat db 4 0 14 5 ...

Page 77: ...L3 2 is just a newer version of openmotif 2 2 2 16 which should work fine and should not cause any problems To check the RPM run rpm q openmotif Also make sure the redhat release package is installed Earlier versions of Red Hat Enterprise Linux may not install it by default when you selected a minimum system installation rpm q redhat release The setarch utility is new in Red Hat Enterprise Linux 3...

Page 78: ... verify semmsl execute cat proc sys kernel sem awk print 1 semmsl 250 To verify semmns execute cat proc sys kernel sem awk print 2 semmns 32000 To verify semopm execute cat proc sys kernel sem awk print 3 semopm 100 To verify semmni execute cat proc sys kernel sem awk print 4 semmni 128 To verify file max execute cat proc sys fs file max file max 65536 To verify ip_local_port_range execute cat pro...

Page 79: ...seg and shmall see Chapter 7 Setting Shared Memory For more information on semmsl semmni semmns and semopm see Chapter 24 Creating Oracle Directories For more information on filemax see Chapter 9 Setting File Handles Starting with 10g R2 some network settings must be adjusted as well which is checked by OUI Oracle recommends the default and maximum send buffer size SO_SNDBUF socket option and rece...

Page 80: ...d Verification 74 To make the change permanent add the following lines to the etc sysctl conf file which is used during the boot process net core rmem_default 262144 net core wmem_default 262144 net core rmem_max 262144 net core wmem_max 262144 ...

Page 81: ... x86_64 rpm gcc c 3 4 4 2 x86_64 rpm libstdc devel 3 4 4 2 x86_64 rpm cpp 3 4 4 2 x86_64 rpm glibc devel 2 3 4 2 13 x86_64 rpm glibc headers 2 3 4 2 13 x86_64 rpm glibc kernheaders 2 4 9 1 98 EL x86_64 rpm rpm Uvh gnome libs 1 4 1 2 90 44 1 x86_64 rpm compat db 4 1 25 9 x86_64 rpm ORBit 0 5 17 14 x86_64 rpm gtk 1 2 10 33 x86_64 rpm imlib 1 9 13 23 x86_64 rpm libpng10 1 0 16 1 x86_64 rpm gdk pixbuf...

Page 82: ...ld not have any problems when these RPMs are missing But if you want to install them you may have to install many additional RPMs in order to satisfy dependencies rpm Uvh gcc 3 4 4 2 x86_64 rpm gcc c 3 4 4 2 x86_64 rpm libstdc devel 3 4 4 2 x86_64 rpm cpp 3 4 4 2 x86_64 rpm glibc devel 2 3 4 2 13 x86_64 rpm glibc headers 2 3 4 2 13 x86_64 rpm glibc kernheaders 2 4 9 1 98 EL x86_64 rpm rpm Uvh cont...

Page 83: ...1 30 4 noarch rpm perl libwww perl 5 79 5 noarch rpm xorg x11 font utils 6 8 2 1 EL 13 20 x86_64 rpm perl HTML Parser 3 35 6 x86_64 rpm xorg x11 xfs 6 8 2 1 EL 13 20 x86_64 rpm perl HTML Tagset 3 03 30 noarch rpm ttmkfdir 3 0 9 14 1 EL x86_64 rpm 20 2 10g R2 on Red Hat Enterprise Linux 4 and 5 x86 On Red Hat Enterprise Linux 4 and 5 x86 you may have to install the following RPMs and dependencies t...

Page 84: ...i386 rpm xorg x11 Mesa libGL 6 8 2 1 EL 13 6 i386 rpm expat 1 95 7 4 i386 rpm fontconfig 2 2 3 7 i386 rpm freetype 2 1 9 1 i386 rpm zlib 1 2 1 2 1 i386 rpm rpm Uvh libgcc 3 4 3 22 1 i386 rpm 20 4 10g R1 on Red Hat Enterprise Linux 4 and 5 x86 On Red Hat Enterprise Linux 4 x86 you may have to install the following RPMs and dependencies to meet the software requirements rpm Uvh gcc 3 4 3 9 EL4 i386 ...

Page 85: ...86_64 On Red Hat Enterprise Linux 3 x86_64 you may have to install the following RPMs and dependencies to meet the software requirements rpm Uvh gcc 3 2 3 52 x86_64 rpm cpp 3 2 3 52 x86_64 rpm glibc devel 2 3 2 95 33 x86_64 rpm glibc headers 2 3 2 95 33 x86_64 rpm glibc kernheaders 2 4 8 34 1 x86_64 rpm rpm Uvh glibc devel 2 3 2 95 33 i386 rpm rpm Uvh compat db 4 0 14 5 1 x86_64 rpm compat gcc 7 3...

Page 86: ...tall the following RPMs and dependencies to meet the software requirements rpm Uvh glibc 2 2 4 32 11 i686 rpm glibc common 2 2 4 32 11 i386 rpm rpm Uvh gcc 2 96 108 1 i386 rpm binutils 2 11 90 0 8 12 i386 rpm cpp 2 96 108 1 i386 rpm glibc devel 2 2 4 32 11 i386 rpm kernel headers 2 4 9 e 3 i386 rpm rpm Uvh openmotif 2 1 30 11 i386 rpm rpm Uvh redhat release as 2 1AS 4 noarch rpm You may have to up...

Page 87: ...he etc redhat release file to make Oracle 10g believe it is running on a supported release Regarding Red Hat Enterprise Linux 4 the installer for 10g 10 1 0 3 does not recognize Red Hat Enterprise Linux 4 as a supported release but 10g R2 OUI does To change the etc redhat release file you can simply copy and paste the following commands su root cp etc redhat release etc redhat release orig cat etc...

Page 88: ...82 ...

Page 89: ...D then add at least 1 GB of free disk space So if you install Oracle 10g Enterprise Edition and additional software from the Oracle Database 10g Companion CD then you need about 2 5 GB of disk for the Oracle software And if you also want to add a pre configured database on the same file system make sure to add another 1 GB of disk space Note If you do not put Oracle 10g on a separate file systems ...

Page 90: ...84 ...

Page 91: ...imits to the following values recommended by Oracle nofile 65536 To verify the above command execute ulimit n nproc 16384 To verify the above command execute ulimit u The nofile option denotes the maximum number of open file descriptors and nproc denotes the maximum number of processes available to a single user To see all shell limits execute ulimit a The following procedures and links show how t...

Page 92: ...86 ...

Page 93: ...of users to be granted SYSDBA system privilege groupadd oinstall group owner of Oracle files useradd c Oracle software owner g oinstall G dba oracle passwd oracle For more information on the oinstall group account see when to use OINSTALL group during install of oracle 1 1 https metalink oracle com oracleinstall oracle8i genericunix html Uoui ...

Page 94: ...88 ...

Page 95: ...ons For Oracle 10g Database the OFA recommended Oracle home path has changed The home path for the first 10g 10 1 0 database installation on a system would be u01 app oracle product 10 1 0 db_1 If you would install a second Oracle 10g Database 10g 10 1 0 on the same system the Oracle home directory should be as follows u01 app oracle product 10 1 0 db_2 If the Oracle 10g software is not owned by t...

Page 96: ...data db_name_2 The mount point u01 should be used for the Oracle software only u02 u03 u04 and so on should be used for the database files The db_name represents the DB_NAME initialization parameter which is typically the same as the SID name for single instance databases ...

Page 97: ...ult path suggested by the OUI You can set and use ORACLE_HOME after you finished running OUI The environment variables ORACLE_HOME and TNS_ADMIN should not be set If you set these environment variables you can unset them by running the following commands unset ORACLE_HOME unset TNS_ADMIN To have these environment variables set automatically each time you log on as oracle you can add these environm...

Page 98: ...92 ...

Page 99: ...le 10gR2 Cluster Ready Services CRS with MPIO There is a bug installing Oracle 10gR2 CRS services using MPIO Multipath I O The bug has been reported to Oracle and the bug number and description states BUG 5005148 CANNOT USE BLOCK DEVICES IN VOTING DISK AND OCR DURING 10G RAC INSTALLATION This has been fixed in Oracle 11g Before attempting to install CRS ensure that all firewalls are disabled servi...

Page 100: ...lete raw links to Multipath Devices on all nodes rm f dev raw Shut down multipath multipath F shuts off Multipath Looking at the multipath log output file you can see which block devices will used for Oracle CRS To be sure you have the correct disk on all nodes look at proc partitons In this installation example each device has a unique size so it is easier to map Now link the block devices to the...

Page 101: ...devices dev raw raw1 8 33 dev raw raw1 bound to major 8 minor 33 dev raw raw2 8 49 dev raw raw2 bound to major 8 minor 49 dev raw raw3 8 65 dev raw raw3 bound to major 8 minor 65 dev raw raw4 8 97 dev raw raw4 bound to major 8 minor 97 dev raw raw5 8 113 dev raw raw5 bound to major 8 minor 113 done Now check that the permissions are set for the Oracle installation ll dev raw total 0 crwxrwxrwx 1 o...

Page 102: ...one node at a time No need for reboots during this process Shutdown the Oracle CRS Process ora crs bin crsctl stop crs Stopping resources Successfully stopped CRS resources Stopping CSSD Shutting down CSS daemon Shutdown request successfully issued Delete the raw devices created for Oracle CRS installation rm f dev raw Turn on Multipath I O MPIO again multipath Create a simple script in etc rc5 d ...

Page 103: ...pe Target State Host ora t08 gsd application ONLINE ONLINE et virt08 ora t08 ons application ONLINE ONLINE et virt08 ora t08 vip application ONLINE ONLINE et virt08 ora t09 gsd application ONLINE ONLINE et virt09 ora t09 ons application ONLINE ONLINE et virt09 ora t09 vip application ONLINE ONLINE et virt09 ora t10 gsd application ONLINE ONLINE et virt10 ora t10 ons application ONLINE ONLINE et vi...

Page 104: ...lcome Screen Basic Installation Check for the default Oracle Home Location Use default u01 app oracle product 10 1 0 db_1 Installation Type Enterprise Edition UNIX DBA Group Use default dba Create Starter Databases Check it which is the default Global Database Name orcl Database password Type in the password for SYS SYSTEM SYSMAN and DBSNMP accounts Advanced Installation Not checked it this exampl...

Page 105: ... Configuration Options Global Database Name for example use orcl SID for example use orcl Click Next Select Database Management Option then select Use Database Control for Database Management Click Next Specify Database File Storage Option Select File System in this example File System Specify Database file location u01 app oracle oradata If you want to comply with OFA you might want to select ano...

Page 106: ...ing generic part of root sh script Now product specific root actions will be performed var opt oracle does not exist Creating it now etc oracle does not exist Creating it now Successfully accumulated necessary OCR keys Creating OCR keys for user root privgrp root Operation successful Oracle Cluster Registry for cluster has been initialized Adding to inittab Checking the status of Oracle init proce...

Page 107: ...ORACLE_HOME bin export LD_LIBRARY_PATH ORACLE_HOME lib After that run the following command to set all environment variables in oracle bash_profile oracle bash_profile This command will add the environment variables to the oracle profile and source in the file for the current shell by executing oracle bash_profile Note Do not add a trailing on the ORACLE_HOME environment variable Otherwise you wil...

Page 108: ...102 ...

Page 109: ...ample you will be connected to the schema owned by SYS with the privilege SYSDBA SYSDBA gives you the following privileges sysoper privileges WITH ADMIN OPTION create database recover database until 27 2 Shutdown of other Oracle 10g Background Processes If you installed a pre configured database using OUI then several Oracle background processes are now running on your server Execute the following...

Page 110: ...emctl stop dbconsole If you selected Grid Control for Database Management which is used for full Grid Control installations then the Oracle Management Agent standalone agent for the Oracle Enterprise Manager Grid Control Grid Control can be stopped with the following command su oracle emctl stop agent Oracle Net Listener To stop the listener run su oracle lsnrctl stop Cluster Synchronization Servi...

Page 111: ...allation option in the OUI su root export ORACLE_HOME u01 app oracle product 10 1 0 db_1 ORACLE_HOME bin localconfig delete The above line stops the Oracle CSS daemon and deletes the configuration rm rf u01 app oracle rm f etc oraInst loc etc oratab rm rf etc oracle rm f etc inittab cssd rm f usr local bin coraenv usr local bin dbhome usr local bin oraenv Make sure you comment out ORACLE_HOME from...

Page 112: ...106 ...

Page 113: ...ersion must be redhat 2 1 UnitedLinux 1 0 or redhat 3 Failed Exiting Oracle Universal Installer log for this session can be found at A solution for how to fix this can be found at Section 20 8 Verifying and Updating the redhat release File Note for All Errors The Retry in the Product specific Prerequisite Checks window does not work So you either set it manually to Passed or you restart OUI Checki...

Page 114: ...ile loading shared libraries libclntsh so 10 1 cannot open shared object file No such file or directory Make sure LD_LIBRARY_PATH is set to ORACLE_HOME lib by executing oracle export LD_LIBRARY_PATH ORACLE_HOME lib X11 connection rejected because of wrong authentication X connection to localhost 10 0 broken explicit kill or server shutdown To rectify this problem try to log in to the remote Oracle...

Page 115: ... Method at java lang ClassLoader loadLibrary0 ClassLoader java 1560 at java lang ClassLoader loadLibrary ClassLoader java 1477 You may receive this error message on Red Hat Enterprise Linux 3 x86 64 Red Hat Enterprise Linux 4 x86 64 and on other systems Even though you most probably have usr X11R6 lib64 libXp so 6 installed on your system this error messages is complaining that it can not find the...

Page 116: ...1 i386 rpm zlib 1 2 1 2 1 2 i386 rpm An Oracle 10g R2 10 2 0 1 0 install on Red Hat Enterprise Linux 4 x86 Update 2 system requires the following RPM rpm Uvh xorg x11 deprecated libs 6 8 2 1 EL 13 20 i386 rpm After you have installed the appropriate RPMs restart the installation by running runInstaller again An error in relinking during the Oracle install You may get this error message or a simila...

Page 117: ... so 5 No such file or directory INFO INFO u01 app oracle oracle product 10 2 0 db_1 bin genorasdksh Failed to link liborasdkbase so 10 2 INFO make liborasdkbase Error 1 On Red Hat Enterprise Linux4 U2 x86 64 with 10g R2 10 2 0 1 0 install the following x86 64 RPM to fix this problem rpm Uvh compat libstdc 33 3 2 3 47 3 x86_64 rpm Note You may already have the i386 compat libstdc 33 RPM installed o...

Page 118: ...of makefile The full error is listed below Error in invoking target all_no_orcl of makefile u01 app oracle oracle product 10 2 0 db_1 rdbms lib ins_rdbms mk See u01 app oracle oraInventory logs installActions2005 11 13_01 25 49AM log for details The log file shows the following error INFO usr bin ld u01 app oracle oracle product 10 2 0 db_1 lib libirc a fast_memcpy o relocation R_X86_64_PC32 again...

Page 119: ...TNS 12547 TNS lost contact TNS 12560 TNS protocol adapter error TNS 00517 Lost contact Linux Error 104 Connection reset by peeras Connecting to DESCRIPTION ADDRESS PROTOCOL TCP HOST centauri PORT 1521 TNS 12547 TNS lost contact TNS 12560 TNS protocol adapter error TNS 00517 Lost contact Linux Error 104 Connection reset by peer Make sure the loopback entry in etc hosts is not missing when you start...

Page 120: ...114 ...

Page 121: ...overs the following Oracle Database and Red Hat Linux versions Oracle Database Version Red Hat Enterprise Linux Version Architecture Oracle9i R2 9 2 0 6 0 4 x86 32 bit Oracle9i R2 9 2 0 4 0 3 x86 32 bit Oracle9i R2 9 2 0 1 0 2 1 x86 32 bit Table 4 Table displaying Certified Red Hat Enterprise Linux For Oracle 10g For Validation and Certification information see Oracle s Certification Matrices 2 2 ...

Page 122: ......

Page 123: ...method first uncompresses then unpacks the installation files gunzip lnx_920_disk1 cpio gz lnx_920_disk2 cpio gz lnx_920_disk3 cpio gz Linux9i_Disk3 cpio gz cpio idmv lnx_920_disk1 cpio cpio idmv lnx_920_disk2 cpio cpio idmv lnx_920_disk3 cpio You should now have 3 directories containing installation files if ls looks like this it worked correctly ls Disk1 Disk2 Disk3 30 2 Setting Swap Space Accor...

Page 124: ...ons 30 4 Examining Temporary tmp Space The Oracle Universal Installer requires up to 400 MB of free space in the tmp directory To find out the space in tmp run df tmp If you do not have enough space in the tmp directory you can temporarily create a tmp directory in another file system Here are the steps for doing it su root mkdir AnotherFilesystem tmp chown root root AnotherFilesystem tmp chmod 17...

Page 125: ...tdc glibc devel kernel headers binutils Most of these packages will be missing on Red Hat Advanced Server 2 1 if the Software Development package was not selected during the OS install If these RPMs are missing execute the command below remember your versions may be newer If they are not newer than those seen below update to a more recent version rpm ivh cpp 2 96 108 1 i386 rpm glibc devel 2 2 4 2...

Page 126: ...ernheaders 2 4 9 1 87 i386 rpm cpp 3 4 3 9 EL4 i386 rpm compat gcc 32 c 3 2 3 47 3 i386 rpm compat libstdc 33 3 2 3 47 3 i386 rpm gcc 3 4 3 9 EL4 i386 rpm cpp 3 4 3 9 EL4 i386 rpm gcc c 3 4 3 9 EL4 i386 rpm libstdc devel 3 4 3 9 EL4 i386 rpm openmotif21 2 1 30 11 RHEL4 2 i386 rpm xorg x11 deprecated libs 6 8 1 23 EL i386 rpm compat libgcc 296 2 96 132 7 2 i386 rpm compat libstdc 296 2 96 132 7 2 i...

Page 127: ...RHN you can run up2date gnome libs gnome libs devel You can use the up2date command for any packages It takes care of dependencies by installing all required packages automatically To install the compat oracle rhel4 and compat libcwait packages you have to download the patch 4198954 from http metalink oracle com Make sure to select the Linux x86 platform To unzip the downloaded p4198954_21_LINUX z...

Page 128: ...122 ...

Page 129: ...le Directories Make sure that the Oracle file systems in this example u01 is large enough see Section 30 5 Sizing Oracle Disk Space for more information su root mkdir p u01 app oracle product 9 2 0 chown R oracle oinstall u01 mkdir var opt oracle chown oracle dba var opt oracle chmod 755 var opt oracle 32 3 Setting Oracle Environment Variables Make sure to set the following Oracle environment vari...

Page 130: ...k admin export NLS_LANG AMERICAN export ORA_NLS33 ORACLE_HOME ocommon nls admin data LD_LIBRARY_PATH ORACLE_HOME lib lib usr lib LD_LIBRARY_PATH LD_LIBRARY_PATH usr local lib export LD_LIBRARY_PATH Set the shell search paths export PATH PATH ORACLE_HOME bin You can add these environment settings to the end of the oracle bash_profile file if you use bash This will ensure that the environment variab...

Page 131: ...called yourdesktop Programs running on remote machines cannot display information to your screen unless you give them the authority to do so Before you execute runInstaller execute xterm or another terminal client of your choice to see if your X setup is really working If you are about to install Oracle on your desktop PC and not on a remote node then you can skip step 1 and 3 Step 1 Allow oracles...

Page 132: ...126 ...

Page 133: ...t Advanced Server 2 1 You may get one or more errors during the Oracle installation If you encounter a problem read Chapter 38 Oracle Installation Errors for more information and solutions The errors can be addressed very easily using the prescribed solutions ...

Page 134: ...128 ...

Page 135: ... 4 0 14 5 i386 rpm compat gcc 7 3 2 96 122 i386 rpm compat gcc c 7 3 2 96 122 i386 rpm compat libstdc 7 3 2 96 122 i386 rpm compat libstdc devel 7 3 2 96 122 i386 rpm openmotif21 2 1 30 8 i386 rpm setarch 1 3 1 i386 rpm tcl 8 3 5 92 i386 rpm Relink gcc so that the older gcc will be used during the Oracle installation see Oracle Note 252217 1 for more information su root mv usr bin gcc usr bin gcc3...

Page 136: ...stall sh line 36 gcc command not found The error means you must install or link gcc correctly This will mean you cannot start any binaries any more for example ls ls error while loading shared libraries etc libcwait so cannot open shared object file No such file or directory rm etc ld so preload rm error while loading shared libraries etc libcwait so cannot open shared object file No such file or ...

Page 137: ...may get the following errors while using the installer Error in invoking target install of makefile u01 app oracle product 9 2 0 network lib ins_oemagent mk The u01 app oracle product 9 2 0 install make log file reads u01 app oracle product 9 2 0 network lib libnmi a snmitcln o text 0xa4e In function Nls_FormatCmd undefined reference to __ctype_b u01 app oracle product 9 2 0 network lib libnmi a s...

Page 138: ...3095277_9204_LINUX zip inflating 9204_lnx32_release cpio inflating README html inflating patchnote css cpio idmv 9204_lnx32_release cpio Disk1 stage locks Disk1 stage Patches oracle apache isqlplus 9 2 0 4 0 1 DataFiles bin 1 1 jar Disk1 stage Patches oracle apache isqlplus 9 2 0 4 0 1 DataFiles lib 1 1 jar To patch the runInstaller execute su oracle echo LD_ASSUME_KERNEL it is important that this...

Page 139: ...his will be fixed by applying the patch 3119415 after the 9 2 0 4 patchset has been applied The patch 3119415 cannot be applied while the patch process for the 9 2 0 4 patchset is running After the 9 2 0 4 patchset has been applied download the patch p3119415_9204_LINUX zip from http metalink oracle com See bug 3119415 for more information Also download the opatch Release 2 2 0 utility from http m...

Page 140: ...RACLE_HOME bin dbsnmp DBSNMP_WDLOGFILE 2 1 To resolve this problem apply the patch p3238244_9204_LINUX zip from http metalink oracle com search for 3238244 to see the bug and patch information Before you apply the patch make sure the instance is down Make sure the opatch script appears in your PATH To verify if opatch is in your PATH run the following commands su oracle which opatch tmp OPatch opa...

Page 141: ...RACLE_HOME network lib make f ins_oemagent mk install Now you should be able to start the agent su oracle agentctl start Note Do not forget to undo the links to usr bin gcc and usr bin g if you do not need them any more You may also want to undo the changes in etc ld so preload file ...

Page 142: ...136 ...

Page 143: ...RNEL 2 4 19 Now execute runInstaller su oracle echo LD_ASSUME_KERNEL 2 4 19 media cdrom runInstaller Welcome Screen Click Next Inventory Location Click OK Unix Group Name Use oinstall and click Next When asked to run tmp orainstRoot sh enter the following into the command line tmp orainstRoot sh Then click Continue File Locations Use default values Available Products Select Oracle9i Database 9 2 0...

Page 144: ... runInstaller that came with the patch 3948480 we just downloaded above su oracle cp p4188455_10103_LINUX zip tmp cd tmp unzip p4188455_10103_LINUX zip Archive p4188455_10103_LINUX zip inflating oraparam ini inflating README txt The tmp oraparam ini file will now be used for launching the runInstaller that came with the patch 3948480 To patch the runInstaller application run su oracle echo LD_ASSU...

Page 145: ...elease 10 1 0 2 patch 2617419 from http metalink oracle com To install opatch run su oracle cp p2617419_10102_GENERIC zip tmp cd tmp unzip p2617419_10102_GENERIC zip cp a tmp OPatch ORACLE_HOME To apply the 4190568 patch run su oracle unzip p4190568_9206_LINUX zip cd 4193454 export PATH PATH ORACLE_HOME OPatch opatch apply If you intend to use Direct I O Support you must also download and apply pa...

Page 146: ...140 ...

Page 147: ...DMIN OPTION create databases recover one or more databases to a point Using the Oracle binaries dbstart and dbstop Tip The dbstart and dbstop commands are in the ORACLE_HOME bin dbstart and ORACLE_HOME bin dbshut directories respectively You can use ORACLE_HOME bin dbstart to start up the database and ORACLE_HOME bin dbshut to shut down the database To get ORACLE_HOME bin dbstart and ORACLE_HOME b...

Page 148: ... Starting and Shutting down the Oracle9i Database 142 cp u01 app oracle admin test pfile inittest ora 642002224936 ORACLE_HOME dbs inittest ora Then make sure that your init file already exists in ORACLE_HOME dbs ...

Page 149: ... reference to _dl_addr GLIBC_PRIVATE lib libdl so 2 undefined reference to _dl_open GLIBC_PRIVATE lib libdl so 2 undefined reference to _dl_close GLIBC_PRIVATE lib libdl so 2 undefined reference to _dl_sym GLIBC_PRIVATE lib libdl so 2 undefined reference to _dl_vsym GLIBC_PRIVATE This error comes up when the following step is executed usr bin make f ins_ctx mk install ORACLE_HOME u01 app oracle pr...

Page 150: ...ry size permanently add the following line to the etc sysctl conf file kernel shmmax 1073741824 For more information on setting shared memory parameters for Oracle see Chapter 7 Setting Shared Memory ORA 03113 end of file on communication channel You may see this error ORA 03113 end of file on communication channel when you run the Database Configuration Assistant and sqlplus It can be caused by s...

Page 151: ...V 11 segmentation violation stackbase 0x453da000 stackpointer 0x453d9d5c Full thread dump AWT EventQueue 0 TID 0x411d1e20 sys_thread_t 0x453d9e0c state R prio 5 current thread java lang Object wait Object java java awt EventQueue getNextEvent EventQueue java 126 or u01 app oracle product 9 2 0 bin dbca line 124 26649 Segmentation fault JRE_DIR bin jre DORACLE_HOME OH DJDBC_PROTOCOL thin mx64m clas...

Page 152: ... binary file You are probably trying to run a 64 bit Oracle version on a 32 bit Linux system Make sure you downloaded the right Oracle version for your Linux system To check if runInstaller is a 32 bit binary or a 64 bit binary run the following command cd mnt cdrom file install linux runInstaller install linux runInstaller ELF 32 bit LSB executable Intel 80386 version 1 SYSV for GNU Linux 2 0 0 d...

Page 153: ...acle product 9 2 0 to ORACLE_HOME u01 app oracle product 9 2 0 and try again to connect to sys Remember the ORACLE_HOME parameter may be slightly different on your machine jre was not found in tmp OraInstall jre bin i586 green_threads jre You are probably running runInstaller on a 586 machine or your AMD CPU is falsely recognized as 586 the case for a AMD K6 III 400 You can check your machine hard...

Page 154: ...or TNS 00511 No listener Linux Error 2 No such file or directory Connecting to DESCRIPTION ADDRESS PROTOCOL TCP HOST xxxx PORT 1521 TNS 12541 TNS no listener TNS 12560 TNS protocol adapter error TNS 00511 No listener Linux Error 111 Connection refused One of the possibilities are that the var tmp oracle directory does not exist If that is the case run the following commands su root mkdir var tmp o...

Page 155: ...CP entry in etc X11 gdm gdm conf for the GNOME Display Manager to read DisallowTCP false After that you need to restart your X server You can do this runnning the init command as root init 3 init 5 Other Errors For other errors issues and problems your best bet is to search the Oracle on Linux Discussion Forum 1 1 http forums oracle com forums forum jspa forumID 135 ...

Page 156: ...150 ...

Page 157: ...4 Optimizing Linux I O 15 To read the Oracle MetaLink links refer to http metalink oracle com and input the numbers Note that registration is required Oracle MetaLink Note 200266 1 Oracle MetaLink Note 225751 1 1 http www puschitz com 2 http www oracle com technology documentation database10g html 3 http www oracle com technology documentation database10gr2 html 4 http www bookpool com sm 00722305...

Page 158: ...194 1 Oracle MetaLink Note 270382 1 Oracle MetaLink Note 280463 1 Oracle MetaLink Note 329378 1 Oracle MetaLink Note 344320 1 Oracle Database Documentation Library 16 Oracle Validated Configurations 17 16 http www oracle com pls db102 portal portal_demo3 selected 1 17 http www oracle com technology tech linux validated configurations index html ...

Page 159: ...evices or ASM for data files then you need to ensure that the datafiles reside on file systems that support asynchronous I O e g OCFS OCFS2 ext2 ext3 To do async I O on file systems the filesystemio_options parameter needs to be set to asynch Eliminated all references to disk_asynch_io true Added For Red Hat Enterprise Linux 3 it is recommended you use direct I O ONLY for ext2 ext3 GFS NFS and OCF...

Page 160: ...154 ...

Reviews: