Oracle Raw File System
Creating database through dbca that uses ASM storage option. Precreation task To include devices in a diskgroup, you can specify either wholedrive device names or. With the UTLFILE package, PLSQL programs can read and write operating system text files. UTLFILE provides a restricted version of operating system stream file IO. Tuning and Optimizing RHEL for Oracle 9i and 1. Databases Red Hat Enterprise Linux, 4, 3, 2. Tuning and Optimizing Red Hat Enterprise Linux for Oracle 9i and 1. Databases. www. puschitz. This article is a step by step guide for tuning and optimizing Red Hat Enterprise Linux on x. Oracle 9i 3. 2bit6. Oracle 1. 0g 3. 2bit6. RAC databases. This guide covers Red Hat Enterprise Linux Advanced Server 3 and 4 and the older version 2. For instructions on installing Oracle 9i and 1. Oracle on Linux. Other Linux articles can be found at. This article covers the following topics. Introduction Hardware Architectures and Linux Kernels. B19306_01/server.102/b14230/img/cfs_setup.gif' alt='Oracle Raw File System' title='Oracle Raw File System' />General. Architecture and the hugemem Kernel. ArchitectureKernel UpgradesKernel Boot Parameters. General. IO SchedulerMemory Usage and Page Cache. Checking Memory Usage. Tuning Page CacheSwap Space. General. Swap Size Recommendations. Checking Swap Space Size and UsageSetting Shared Memory. Setting SHMMAX Parameter. Setting SHMMNI Parameter. Setting SHMALL Parameter. Removing Shared MemorySetting Semaphores. The SEMMSL Parameter. The SEMMNI Parameter. The SEMMNS Parameter. The SEMOPM Parameter. Setting Semaphore Parameters. Example for Semaphore SettingsSetting File HandlesAdjusting Network Settings. Changing Network Adapter Settings. Changing Network Kernel Settings. Flow Control for e. NICsSetting Shell Limits for the Oracle User. Limiting Maximum Number of Open File Descriptors for the Oracle User. Limiting Maximum Number of Processes for the Oracle UserEnabling Asynchronous IO Support. Relinking Oracle. R2 to Enable Asynchronous IO Support. Relinking Oracle 1. Enable Asynchronous IO Support. Enabling Asynchronous IO in Oracle 9i and 1. Tuning Asynchronous IO for Oracle 9i and 1. Checking Asynchronous IO UsageConfiguring IO for Raw Partitions. General. Basics of Raw Devices. Using Raw Devices for Oracle Databases. Using Block Devices for Oracle 1. Release 2 in RHEL 4Large Memory Optimization Big Pages, Huge Pages. Big Pages in RHEL 2. Huge Pages in RHEL 34. Usage of Big Pages and Huge Pages in Oracle 9i and 1. Sizing Big Pages and Huge Pages. Checking Shared Memory Before Starting Oracle Databases. Configuring Big Pages in RHEL 2. Configuring Huge Pages in RHEL 3. Configuring Huge Pages in RHEL 4. Huge Pages and Shared Memory Filesystem in RHEL 34Growing the Oracle SGA to 2. GB in x. 86 RHEL 2. Without VLM. General. Linux Memory Layout. Increasing Space for the SGA in RHEL 2. Lowering the Mapped Base Address for Shared Libraries in RHEL 2. Lowering the SGA Attach Address for Shared Memory Segments in Oracle 9i. Allowing the Oracle User to Change the Mapped Base Address for Shared LibrariesGrowing the Oracle SGA to 2. GB in x. 86 RHEL 34 Without VLM. Keygen Encore 5.0 2. General. Mapped Base Address for Shared Libraries in RHEL 3 and RHEL 4. Oracle 1. 0g SGA Sizes in RHEL 3 and RHEL 4. Lowering the SGA Attach Address in Oracle 1. Using Very Large Memory VLM. General. Configuring Very Large Memory VLMMeasuring IO Performance on Linux for Oracle Databases. General. Using OrionAppendixReferences. This article discusses Red Hat Enterprise Linux optimizations for x. Oracle 9i R2 3. 2bit6. Oracle 1. 0g R1R2 3. RAC databases. This guide covers Red Hat Enterprise Linux Advanced Server 2. Various workarounds covered in this article are due to the 3. However, many steps described in this document also apply to x. Sections that do not. 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. Note this document comes without warranty of any kind. But every effort has been made to provide the information as. I welcome emails from any readers with comments, suggestions, and corrections at webmasteratpuschitz. When it comes to large databases the hybrid x. GB of memory without workarounds. With 3. 2 bit platforms there are several issues that. Using Very Large Memory VLM. If you are not sure whether you are on a 3. Running uname a can be misleading since 3. Linux kernels can run on x. But if. uname a displays x. Linux kernel on a x. The RHEL 34 smp kernel can be used on systems with up to 1. GB of RAM. The hugemem kernel is required in order to use all the memory. GB of RAM up to 6. GB. However, I recommend the hugemem kernel even on systems that. GB of RAM or more due to the potential issue of low memory starvation see next section. GB of RAM. The stability you get with. With x. 86 architecture the first 1. MB 8. 96. MB of physical memory is known as low memory ZONENORMAL. Many kernel resources must live in the low memory zone. In fact, many kernel operations can only take place in this zone. This means that the low memory area is the most performance critical zone. For example, if you run many resources intensive applicationsprograms andor use large physical memory, then. Low memory starvation happens when Low. Free in procmeminfo becomes very low accompanied. To free up memory in the low memory zone, the kernel bounces buffers aggressively between low memory. If the kernel is unable to free up enough memory in the low memory zone, then the kernel can. Paging activity can be monitored using the vmstat command or using the sar command option B. RPM. Since Linux tries to utilize the whole low memory zone, a low Low. Free in. procmeminfo does not necessarily mean that the system is out of low memory. However, when the system shows increased paging activity when Low. The Isk Pro Guide. Free. gets below 5. MB, then the hugemem kernel should be installed. The stability you gain from using the hugemem kernel makes up for any performance impact. GB 4. GB kerneluser memory split in this kernel a classic 3. GB address space into 3 GB virtual memory space for user processes and a 1 GB space for the kernel. To see some allocations in the low memory zone, refer to procmeminfo and slabtop1. Note that Huge Pages would free up memory in the low memory zone since. Large Memory Optimization Big Pages, Huge Pages. If you install the RHEL 34 hugemem kernel ensure that. In RHEL 2. 1, the smp kernel is capable of handling up to 4. GB of RAM. The kernel enterprise kernel should. GB of RAM up to 1. GB. This is the architecture that should be used whenever possible. If you can go with a x. Furthermore, ensure that all the required applications are supported on x. Make sure to install the latest kernel where all proprietary drivers, if applicable, are certifiedsupported. Note that proprietary drivers are often installed under libmoduleslt kernel version kerneldriversaddon. For example, the EMC Power. Path drivers can be found in the following directory when running the 2. ELhugemem kernel. ELhugememkerneldriversaddonemcpower. Aug 2. 0 1. 3 5. Aug 2. Aug 2. 0 1. 3 5. Aug 2. Aug 2. 0 1. 3 5. Aug 2. Aug 2. 0 1. 3 5. Aug 2. Aug 2. 0 1. 3 5. Aug 2. Therefore, when you upgrade the kernel you must ensure that all proprietary modules can be found in the right directory. To check which kernels are installed, run the following command. To check which kernel is currently running, execute the following command. For example, to install the 2. ELhugemem kernel, download the kernel hugemem RPM and execute. EL. i. 68. 6. rpm. Never upgrade the kernel using the RPM option U. The previous kernel should always be available if the newer kernel does. To make sure the right kernel is booted, check the etcgrub. GRUB and change the default attribute if necessary. Here is an example. DBFS File System Client. This chapter describes how to implement, access, and administer the DBFS File System. Installing DBFSThis section discusses the steps required for the installation of DBFS. This section contains the following topics DBFS Prerequisites. The dbfsclient can be used as a direct RDBMS client using the DBFS command Interface only on Linux, Linux. X6. 4, Solaris, Solaris. AIX, HPUX and Windows platforms. The dbfsclient host must have the Oracle client libraries installed. The dbfsclient program can be used to mount DBFS file systems on Linux and Linux X6. Oracle Database Release 1. Solaris 1. 1 SRU7 starting with Oracle Database 1. See Oracle Database Release 1. Solaris 1. 1 SRU7 for more information on Solaris compatibility. For Linux, the following are also required The dbfsclient host must have the kernel devel package installed to configure and build FUSE. The dbfsclient host must have the FUSE Linux package installed. A group named fuse must be created and the user name that is running the dbfsclient must be a member of the fuse group. For Solaris 1. 1 SRU7, see Oracle Database Release 1. Solaris 1. 1 SRU7 for differences and additional requirements. Installing FUSE Linux OnlyDownload the kernel devel package from your Linux distributor that matches your Linux release. Download FUSE 2. 7. Install kernel devel package. For example. rpm i kernel devel 2. Determine the kernel directory. The kernel directory is usually usrsrckernelsuname r uname pInstall FUSE. DBFS Installation Home. The DBFS installation home contains the SQL. Creating a File System. At minimum, database users must have the following privileges to create a file system GRANT CONNECT, CREATE SESSION, RESOURCE, CREATE TABLE, and CREATE PROCEDURE, and also DBFSROLE. Create a file system by running dbfscreatefilesystem. DBFSROLE privileges. ORACLEHOMErdbmsadmindbfscreatefilesystem. The following example creates a file system called stagingarea in the tablespace dbfstbspc. The tablespace should have been created previously. ORACLEHOMErdbmsadmindbfscreatefilesystem. DBFS filesystem. This script gives users more control over storage options such as compression, encryption, and deduplication, which are used for the filesystem. Note. beginning with Oracle Database release 1. DBFS creates file systems as non partitioned, by default. Dropping a File System. Drop the file system by running dbfsdropfilesystem. ORACLEHOMErdbmsadmindbfsdropfilesystem. DBFS Mounting Interface. This section discusses how to mount the DBFS file system. It applies to Linux and Solaris, with Solaris 1. SRU7 differences as described in Oracle Database Release 1. Solaris 1. 1 SRU7. This section contains the following topics Mounting the DBFS Store. Run the dbfsclient program to mount the DBFS store. Ensure that LDLIBRARYPATH has the correct path to the Oracle client libraries before calling this program. The dbfsclient program does not return until the file system is unmounted. For the most secure method of specifying the password, seeUsing Oracle Wallet with DBFS Client. The dbfsclient command has the following syntax. DBFS content store filesystems. Oracle Database server, such as hrdbhost 1. Database File System is mounted. Note that all file systems owned by the database user are seen at the mount point. Linux page cache, and provides improved performance for large files. Programs in the file system cannot be executed with this option. Oracle recommends this option when DBFS is used as an ETL staging area. DBFS client in the background. Wallet must be configured to get its credentials. DBFS client to the surviving database instance with no data loss. Expect some performance cost on writes, especially for small files. This option requires setting the userallowother parameter in the etcfuse. This option requires setting the userallowother parameter in the etcfuse. Trace levels are DEBUGINFOWARNINGERRORCRITICAL this the default settingtracefilefilenamesyslog specifies the trace log file. Prior to mounting a file system, you must create an Oracle Wallet and assign credentials for the appropriate DBFS database user see Using Oracle Wallet with DBFS Client. Example 6 1 Mounting a File System. Login as root user. Add a new library path. Change directory to lib, and create the following symbolic links to the libclntsh. ORACLEHOMEliblibclntsh. ORACLEHOMEliblibnnz. Locate libfuse. so, and create a symbolic link this library. Run ldconfig to create the links and cache for the new symbolic links. Create a symbolic link to dbfsclient in sbin as mount. ORACLEHOMEbindbfsclient sbinmount. Login as admin user. Oracle recommends that you do not perform the next step as root user. Mount the DBFS store. Optional To test if the previous step was successful, list the dbfs directory. Example 6 2 Mounting a File System with Password at Command Prompt. To mount a file system using dbfsclient by entering the password on the command prompt. ETLUserDBConnect. String mntdbfs. Example 6 3 Mounting a File System with Password Read from a File. The following example mounts a file system and frees the terminal. It reads the password from a file. ETLUserDBConnect. String mntdbfs lt passwordfile. Feb 9 1. 7 2. 8 stagingarea. Unmounting a File System in Linux. Run fusermount to unmount file systems. Restrictions on Mounted File Systems. DBFS supports most file system operations with the exception of ioctl, locking, asynchronous IO through libaio, ODIRECT file opens, hard links, pipes, and other special file modes. Memory mapped files are supported except in shared writable mode. For performance reasons, DBFS does not update the file access time every time file data or its attributes are read. You cannot run programs from a DBFS mounted file system if the directio option is specified. You cannot export DBFS file systems using NFS or Samba. Mounting DBFS Through fstab Utility in Linux. File systems are commonly configured using the fstab utility in Linux. To mount DBFS through etcfstab, You must use Oracle Wallet for authentication. Run the following operations as root user. To mount DBFS through fstab in Linux Login as root user. Change the user and group of dbfsclient to be user root and group fuse. ORACLEHOMEbindbfsclient. Set the setuid bit on dbfsclient, and restrict execute privileges to the user and group only. Create a symbolic link to dbfsclient in sbin as mount. ORACLEHOMEbindbfsclient sbinmount. Create a new Linux group called fuse. Add the Linux user that is running the DBFS Client to the fuse group. Add the following line to etcfstab. DBConnect. String mntdbfs fuse rw,user,noauto 0 0. The Linux user can mount the DBFS file system using the standard Linux mount command. For example. mount mntdbfs. Note that FUSE does not currently support automount. Oracle Database Release 1. Solaris 1. 1 SRU7. Beginning with Oracle Database Release 1. Solaris 1. 1 SRU7, you can install libfuse and run dbfsclient in mount mode on Solaris. This section describes what you must do differently from Linux procedures that are described in the sections Installing DBFS and DBFS Mounting Interface. Installing FUSE on Solaris 1. SRU7 and Later. To use dbfsclient as a mount client in Solaris 1. SRU7 and later, ensure that the libfuse package is installed by running pkginfolibfuse at the prompt. If no rows or errors are returned, then perform these steps to install libfuse. Run the install command as root.