来自:
http://www.linuxidc.com/Linux/2011-01/31210p3.htm
1.硬件配置说明:
Fedora 14 的 swap分区至少要有2048MB,否则在Oracle安装过程中会有警告。
2.软件需求
1)需要安装或升级的依赖软件包。
make-3.81-14.fc10.i386
gcc-4.3.2-7.i386
glibc-2.9-3.i686
glibc-devel-2.9-3.i386
compat-db45-4.5.20-5.fc10.i386
compat-gcc-34-3.4.6-9.i386
compat-gcc-34-c++-3.4.6-9.i386
compat-libstdc++-33-3.2.3-64.i386
gnome-libs-1.4.2-10.fc10.i386
libaio-devel-0.3.107-4.fc10.i386
libaio-0.3.107-4.fc10.i386
libXp-1.0.0-11.fc9.i386
2)提示:
可以通过 rpm -q XXX 来查询主机上是否有指定的RPM包
或者直接使用yum命令来安装或升级软件包,如果软件包已经是最新版本,则安装或升级过程会略过,安装命令的一种形式是如下: #yum -yv install 软件包名称
------------------------------------------------------- 安装过程
1.获取Oracle 10g R2安装包(10201_database_linux32.zip )。
下载地址在这里。
2.创建DBA用户组和Oracle用户
以管理员身份登录后运行如下命令:
# groupadd dba
# useradd –d “/home/oracle” –m –g dba oracle
# passwd oracle
重复输入两次为oracle设定的密码,oracle用户就创建好了。
3.配置内核参数
使用vi编辑/etc/sysctl.conf 文件,添加如下参数配置:
#configuration for Oracle 10g
kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。
kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。
kernel.sem = 250 32000 100 128 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
fs.file-max = 65536 # 系统中所允许的文件句柄最大数目。
net.ipv4.ip_local_port_range = 1024 65000 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值
注:内核参数的修改不是必须的,视情况而定。修改该配置文件后,重启计算机或使用“/sbin/sysctl –p” 命令来使配置生效。
4.Oracle可用资源配置
使用vi编辑/etc/security/limits.conf文件,添加如下配置:
#configuration for oracle 10g R2 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
5.为第4步添加的资源限制配置相应的PAM模块
使用vi编辑/etc/pam.d/login文件,确保该文件中含有如下配置:
# configuration for oracle 10g R2 session required /lib/security/pam_limits.so
6.确保SELINUX为禁用状态
使用vi编辑/etc/selinux/config文件,确保:
SELINUX=disabled
7.修改系统版本标识
使用vi编辑/etc/RedHat-release文件,替换Fedora release 12 (Constantine)为redhat-4
8.创建Oracle相关目录
# mkdir –p /home/oracle/u01/app/oracle
# mkdir –p /home/oracle/u01/app/oradata
# mkdir –p /home/oracle/u01/app/oradata
# mkdir –p /home/oracle/u02/app/oraInventory
# chown –R oracle:dba /home/oracle/u01/app/oracle
# chown –R oracle:dba /home/oracle/u01/app/oradata /home/oracle/u02/app/oradata /home/oracle/u02/app/oraInventory
# chmod –R 775 /home/oracle/u01/app/oracle
# chmod –R 775 /home/oracle/u01/app/oradata /home/oracle/u02/app/oradata /home/oracle/u02/app/oraInventory
9.配置Oracle环境变量
以Oracle用户登录系统,用vi编辑~/.bash_profile文件,添加如下配置:
ORACLE_HOME=~/u01/app/oracle ORACLE_SID=orcl LD_LIBRARY_PATH=$ORACLE_HOME/lib TNS_ADMIN=$ORACLE_HOME/network PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH TNS_ADMIN
10.安装
以Oracle用户登录。
(1).解压缩安装文件:unzip 10201_database_linux32.zip (2).确保软件需求中的相关依赖包都已经安装或升级到最新的版本,可以使用命令如:yum -yv install gcc (3).因为我的操作系统是中文版的,所以要通过LANG=en来设置安装语言为英文,否则图形化安装向导中文都会是乱码。 (4).登录到系统管理员运行命令:xhost + ,否则会产生如下错误:
[oracle@rebsto database]$ No protocol specified
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(Unknown Source)
at java.awt.Window.init(Unknown Source)
at java.awt.Window.<init>(Unknown Source)
at java.awt.Frame.<init>(Unknown Source)
at oracle.ewt.popup.PopupFrame.<init>(Unknown Source)
at oracle.ewt.lwAWT.BufferedFrame.<init>(Unknown Source)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.<init>(OiocOneClickInstaller.java:378)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.main(OiocOneClickInstaller.java:2091)
(5).Oracle安装文件解压后为database文件,进入到database目录下,运行./runInstaller
(6).按照安装向导的提示配置相应的参数并运行相关的脚本,即能成功安装。
(7).安装好后以系统管理员身份登录,运行命令:xhost -。
(8).打开/etc/RedHat-release文件将版本号改回Fedora release 12 (Constantine)
11.验证安装:
The following J2EE Applications have been deployed and are accessible at the URLs listed below.
iSQL*Plus URL: http://www.linuxidc.com:5560/isqlplus
iSQL*Plus DBA URL: http://www.linuxidc.com:5560/isqlplus/dba
Enterprise Manager 10g Database Control URL: http://www.linuxidc.com:1158/em
安装后一些错误:
在sqlplus / as sysdba后startup,出现两行错误,原因是没把pfile下的initxxx.ora拷到 $ORACLE_HOME/dbs下:
SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/db/product/10.2.0/Db_1/dbs/inittestdoyoo.ora'
解决办法:
cp $ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora.6132009125454 /db/product/10.2.0/Db_1/dbs/inittestdoyoo.ora
ORA-27101, 要保证ORACLE_HOME 和ORACLE_SID是正确的,并且,ORACLE_HOME不能在尾部有斜杠“/”
ORA-12514,解决方法:
配置文件:
$Oracle/network/admin/sqlnet.ora
$Oracle/network/admin/tnsnames.ora
配置内容:
$Oracle/network/admin/sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
配置客户端连接的方式。www.linuxidc.com
$Oracle/network/admin/tnsnames.ora
newdb =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xxx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = devdb1.xxxxx.com)
)
)
出现ORA-12514 错误时应该
newdb =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xxx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SID = medn)
(SERVER = DEDICATED)
)
)
. 打开<OracleHome>/network/admin/listener.ora文件,找到:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)
添加:
(SID_DESC =
(GLOBAL_DBNAME = ORACLE)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = ORACLE)
)
最后变成:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORACLE)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = ORACLE)
)
)
保存文件,重启服务中的TNSListener,OK!