忙活了一个周,Oracle10g算是装上了,但在RedHat上配置应用总是有问题,又写了一个简单的web程序试了一下,可以正常运行,可能是项目自身的问题吧,先把Oracle的安装备份一下。
感觉Oracle的安装得讲究天时地利人和,网上的资料挺多,但即便全按照网上的步骤做,也很可能不成功,哎,碰运气吧。现在自己虽然装上了,但总感觉磕磕绊绊。
我使用的是RedHat 5,安装的时候选择了全部的包,除了Java(这个不想用它的Java1.4),目的就是避免问题一。
Java版本:
[root@localhost logs]# java -version
java version "1.5.0_22"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03)
Java HotSpot(TM) Client VM (build 1.5.0_22-b03, mixed mode, sharing)
Tomcat版本:5.5.30
一、建立安装Oracle需要的组、用户和目录
#groupadd oinstall
#groupadd dba
#groupadd oper
#useradd –g oinstall –G dba oracle
#passwd oracle /修改oracle用户的密码/
[root@localhost bin]# passwd oracle
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
#mkdir /oracle
#chown –R oracle:oinstall /oracle
#chmod –R 755 /oracle
PS:安装oracle的目录建议安装在一个单独的分区或磁盘上
使用oracle用户登录ftp主机,将oracle10g安装文件上传,因为使用诸如root用户上传文件时可能会有文件权限的问题,就先使用oracle用户操作。
二、修改内核参数
[root@localhost /]# vi /etc/sysctl.conf
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
使更改文件立即生效,使用命令:
[root@localhost /]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
三、设置oracle用户的Shell limit
[root@localhost /]# vi /etc/security/limits.conf
#add for oracle
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
修改文件,使上面的操作生效:
[root@localhost /]# vi /etc/pam.d/login
加入语句:
#add for oracle10g
session required /lib/security/pam_limits.so
session required pam_limits.so
PS:貌似如果文件中已经有的话可以不做操作,我的里面以前没有,新增
四、配置IP地址
安装RedHat的时候,最后使用静态地址,但安装时IP静态设定的选项太多,就选择DHCP,现在需要修改文件。
[root@localhost /]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:0C:29:3B:CF:16
ONBOOT=yes
IPADDR=192.168.198.134
NETMASK=255.255.255.0
GATEWAY=192.168.198.1
这时,切换用户到oracle操作
五、配置oracle用户的环境变量(使用oracle用户)
防止Oracle安装的页面显示乱码,设置语言环境
[oracle@localhost ~]$ export LC_CTYPE=en_US.UTF-8
打开/home/oracle/.bash_profile文件,加入如下内容:
#add for oracle 10g
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=crdsf
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
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
六、开始安装
使用root用户输入命令:
#xhost +
然后root用户logout,使用oracle 用户登录系统,不能使用su命令切换
前一步中,已经使用Oracle用户将oracle 10g的安装文件传到/home/oracle下(10201_database_linux32.zip),解压缩:
#unzip 10201_database_linux32.zip
完成后,目录中出现一个新文件夹database,
进入database文件夹,执行命令:
#./runInstaller –ignoresysprereqs /忽略系统检查/
安装过程中,需要使用root用户进行两项操作:
[root@localhost oraInventory]# /oracle/oraInventory/orainstRoot.sh
Changing permissions of /oracle/oraInventory to 770.
Changing groupname of /oracle/oraInventory to oinstall.
The execution of the script is complete
图示:
安装完成后,运行netca命令配置监听程序
创建用户:
create user username
identified by passwd
default tablespace users
temporary tablespace TEMP
profile default;
--grant/revoke object privileges
grant select,update,delete,insert on SYS.ALL_ALL_TABLES to username;
--grant/revoke role privileges
grant connect to crdsf;
grant dba to crdsf;
--grant /revoke system privileges
grant unlimited tablespace to crdsf;