How to Install and Configure Oracle on Linux
Now for some cleanup and file modifications. The initSID.ora, where SID is the system identifier for the instance, file is located in the $ORACLE_HOME/dbs directory. This file is read by Oracle when the instance is started. It is used to set parameters for the instance, such as the amount of memory reserved for the database. There are too many parameters to go over in this article. Refer to the Oracle database administrator's guide for an explanation of the parameters and their recommended settings. You will probably be fine with the default values. However, if you have a large amount of memory on your machine, you may want to uncomment either the medium or large settings of the parameters in the initSID.ora file.
The oratab file is located in the /etc directory. This file is read by the dbstart file which we will use to automatically start the instance when the machine is rebooted. There are comments in the oratab file which explain the three fields and what they contain. Change the last field to Y for instances in which you want to start when the machine is rebooted. The file should look something like Listing 1.
The listener.ora file is located in the $ORACLE_HOME/network/admin directory. This file is used by Net8 to determine how network connections are made to the instance(s) on your machine. Update the listener.ora file with the sid to which the Net8 listener should listen. Replace oracle_sid with the sid name. The file should look something like Listing 2.
The tnsnames file is located in the $ORACLE_HOME/network/admin directory. This file is used by Net8 to determine the location for remote databases you can connect to. Replace oracle_sid with the sid name. The file should look something like Listing 3.
As root, issue the following commands to set the permissions correctly for the Net8 files:
chown oracle.dba $ORACLE_HOME/bin/tnslsnr chmod 750 $ORACLE_HOME/bin/tnslsnr chown oracle.dba $ORACLE_HOME/network/log chmod 775 $ORACLE_HOME/network/log chown root.dba \ $ORACLE_HOME/network/log/listener.log chmod 664 $ORACLE_HOME/network/log/listener.log
If you receive an error because the listener.log doesn't exist, you will need to enter the last two commands after you stop and start the listener.
Start the instance:
svrmgrl connect internal startup exit
Connect to the database using SQL*Plus:
sqlplus system system_password select count(*) from dba_objects; #(This should # return a count of the number of objects in the # database) exitStart the TNS listener:
lsnrctl startYou should see something like Figure 28.
Connect to the database using SQL*Plus through a network connection. This can be done using only one machine if you don't really have a network installed.
greg refers to the entry in the $ORACLE_HOME/network/admin/tnsnames.ora file
select count(*) from dba_objects; exit
Create the following symbolic links to automatically start and shut down the listener and Oracle instances:
ln -s/etc/rc.d/init.d/dbora /etc/rc.d/rc0.d/K10dbora ln -s/etc/rc.d/init.d/dbora /etc/rc.d/rc2.d/S99dbora ln -s/etc/rc.d/init.d/dbora /etc/rc.d/rc3.d/S99dbora ln -s/etc/rc.d/init.d/dbora /etc/rc.d/rc5.d/S99dbora ln -s/etc/rc.d/init.d/dbora /etc/rc.d/rc6.d/K10dbora
Place the file dbora (Listing 4) in /etc/rc.d/init.d. Place the file lsnrstart (Listing 5) in the $ORACLE_HOME/bin directory. Place the file lsnrstop (Listing 6) in the $ORACLE_HOME/bin directory.
The listener and all Oracle instances designated to automatically start in the /etc/oratab file should shut down and restart when the machine is rebooted.
At this point, the database has been created. You can use SQL*Plus to create tables. If you are unfamiliar with SQL, there are a number of good books available on the subject.
Webinar: 8 Signs You’re Beyond Cron
11am CDT, April 29th
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.Join us!
- Not So Dynamic Updates
- Users, Permissions and Multitenant Sites
- New Products
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- Non-Linux FOSS: MenuMeters
- Tighten Up SSH
- DevOps: Everything You Need to Know
- Nmap—Not Just for Evil!
- Android Candy: Bluetooth Auto Connect