Oracle 10gR2 + RedHat Enterprise Linux AS4 安装
折腾了2天,终于把遇到的问题都解决了....以下是我的安装总结,自己写的,有点乱,凑合看把
(1)安装linux ,所由服务都不选择,只是选择安装开发工具,不要安装防火墙,不然有的端口没打开会提示连接超时.
(2)打开终端,执行如下命令,检查安装包,没有的都要安装(一般在dis2 和dis3上)
rpm -q make gcc glibc compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel openmotif21 setarch libaio
(3)创建 Oracle 组和用户帐户
例如:
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -m -g oinstall -G dba oracle
# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
设置 oracle 帐户的口令:
passwd oracle
(4)创建目录
例如:
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01/app/oracle
(5)配置 Linux 内核参数(2种方法),修改后不用重启动更新: /sbin/sysctl -p
第一种:打开/etc/sysctl.conf 复制如下内容
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
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
第二种:打开终端
cat >> /etc/sysctl.conf <<EOF
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
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
EOF
(6)为 oracle 用户设置 Shell 限制.Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制,ROOT登录.(第(6)步骤可以跳过.)
cat >> /etc/profile <<EOF
if [ /$USER = "oracle" ]; then
if [ /$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
cat >> /etc/csh.login <<EOF
if ( /$USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif
EOF
(7)oracle 用户的环境变量
以 oracle 身份登录,并通过在 .bash_profile 或 .profile(bash 或 ksh)中添加以下行,将 ORACLE_BASE 添加到登录配置文件(直接gedit /home/oracle/.bash_profile)
增加下列内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID=dssdb
export PATH=$PATH:$ORACLE_HOME/bin
(8)解压缩oracle 10g安装盘,然后新建终端,运行 /runInstaller (注意大小写)
(9)创建实例,起动数据库
(10)让oracle 跟随linux 一起启动.
root 登录,在 /etc/rc.d/init.d 下创建名为dbora,编辑增加以下内容
=================================================
#!/bin/bash
#参考 http://staff.in2.hr/denis/oracle/10g1install_fedora3_en.html#n4_4
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 10g, TNS listener, EMS
#
#
# match these values to your environment:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID=dssdb
export PATH=/home/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_USER=oracle
# see how we are called:
case $1 in
start)
su - "$ORACLE_USER"<<EOO
dbstart
EOS
emctl start dbconsole
EOO
;;
stop)
su - "$ORACLE_USER"<<EOO
dbshut
EOS
emctl stop dbconsole
EOO
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
==========================
打开终端执行:
chown oracle.oinstall /etc/rc.d/init.d/dbora
chmod 755 /etc/rc.d/init.d/dbora
使用chkconfig 设置运行权限
chkconfig dbora reset
检查
chkconfig --list dbora
结果如下:
ora10 0:off 1:off 2:off 3:on 4:off 5:on 6:off
注意:当系统不在 runlevels 3 and 5时,使用
service dbora start 启动服务.
service dbora stop 停止服务.
(11)修改$ORACLE_HOME/bin/dbstart
# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$ORACLE_HOME
如果没有ASM(自动存储),就把那一节内容删除,ASM要在加载实例前,先加载.
(12)重新启动计算机 ,就可以了,启动会比较慢,因为要自动启动em,database,listener,agent
常用手动控制数据库命令
打开em
emctl start dbconsole
关闭em
emctl stop dbconsole
启动listener
lsnrctl start <监听名>(默认是LISTENER,可省略)
关闭
lsnrctl stop
启动emagent
emctl start agent
关闭
emctl stop agent
启动实例
sqlplus /nolog
conn / as sysdba
startup
关闭
shutdown immediate
测试数据库是否通
tnsping
=====================================================
常见问题:
网页界面上的按钮出现“口口”的乱码
解决方案:
1.停止服务,emctl stop dbconsole;
2.把相关目录(RHEL4里面是/etc/java/)下的font.properties用 font.properties.zh_CN.Redhat8.0替换(或 font.properties.zh,只要是中文简体就可以。);
3.删除$ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs中的gif文件;
4.重起服务(最好是重启服务器) emctl start dbconsole;
=====================================================
以下的 J2EE 应用程序已经配置, 并且可用下面列出的 URL 来访问。
iSQL*Plus URL:
http://database:5560/isqlplus
iSQL*Plus DBA URL:
http://database:5560/isqlplus/dba
Enterprise Manager 10g Database Control URL:
http://database:1158/em
/==========================================
常用linux命令
df -h
ps -A
top
free
cat /proc/meminfo
uname
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
hostname
折腾了2天,终于把遇到的问题都解决了....以下是我的安装总结,自己写的,有点乱,凑合看把
(1)安装linux ,所由服务都不选择,只是选择安装开发工具,不要安装防火墙,不然有的端口没打开会提示连接超时.
(2)打开终端,执行如下命令,检查安装包,没有的都要安装(一般在dis2 和dis3上)
rpm -q make gcc glibc compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel openmotif21 setarch libaio
(3)创建 Oracle 组和用户帐户
例如:
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -m -g oinstall -G dba oracle
# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
设置 oracle 帐户的口令:
passwd oracle
(4)创建目录
例如:
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01/app/oracle
(5)配置 Linux 内核参数(2种方法),修改后不用重启动更新: /sbin/sysctl -p
第一种:打开/etc/sysctl.conf 复制如下内容
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
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
第二种:打开终端
cat >> /etc/sysctl.conf <<EOF
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
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
EOF
(6)为 oracle 用户设置 Shell 限制.Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制,ROOT登录.(第(6)步骤可以跳过.)
cat >> /etc/profile <<EOF
if [ /$USER = "oracle" ]; then
if [ /$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
cat >> /etc/csh.login <<EOF
if ( /$USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif
EOF
(7)oracle 用户的环境变量
以 oracle 身份登录,并通过在 .bash_profile 或 .profile(bash 或 ksh)中添加以下行,将 ORACLE_BASE 添加到登录配置文件(直接gedit /home/oracle/.bash_profile)
增加下列内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID=dssdb
export PATH=$PATH:$ORACLE_HOME/bin
(8)解压缩oracle 10g安装盘,然后新建终端,运行 /runInstaller (注意大小写)
(9)创建实例,起动数据库
(10)让oracle 跟随linux 一起启动.
root 登录,在 /etc/rc.d/init.d 下创建名为dbora,编辑增加以下内容
=================================================
#!/bin/bash
#参考 http://staff.in2.hr/denis/oracle/10g1install_fedora3_en.html#n4_4
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 10g, TNS listener, EMS
#
#
# match these values to your environment:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID=dssdb
export PATH=/home/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_USER=oracle
# see how we are called:
case $1 in
start)
su - "$ORACLE_USER"<<EOO
dbstart
EOS
emctl start dbconsole
EOO
;;
stop)
su - "$ORACLE_USER"<<EOO
dbshut
EOS
emctl stop dbconsole
EOO
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
==========================
打开终端执行:
chown oracle.oinstall /etc/rc.d/init.d/dbora
chmod 755 /etc/rc.d/init.d/dbora
使用chkconfig 设置运行权限
chkconfig dbora reset
检查
chkconfig --list dbora
结果如下:
ora10 0:off 1:off 2:off 3:on 4:off 5:on 6:off
注意:当系统不在 runlevels 3 and 5时,使用
service dbora start 启动服务.
service dbora stop 停止服务.
(11)修改$ORACLE_HOME/bin/dbstart
# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$ORACLE_HOME
如果没有ASM(自动存储),就把那一节内容删除,ASM要在加载实例前,先加载.
(12)重新启动计算机 ,就可以了,启动会比较慢,因为要自动启动em,database,listener,agent
常用手动控制数据库命令
打开em
emctl start dbconsole
关闭em
emctl stop dbconsole
启动listener
lsnrctl start <监听名>(默认是LISTENER,可省略)
关闭
lsnrctl stop
启动emagent
emctl start agent
关闭
emctl stop agent
启动实例
sqlplus /nolog
conn / as sysdba
startup
关闭
shutdown immediate
测试数据库是否通
tnsping
=====================================================
常见问题:
网页界面上的按钮出现“口口”的乱码
解决方案:
1.停止服务,emctl stop dbconsole;
2.把相关目录(RHEL4里面是/etc/java/)下的font.properties用 font.properties.zh_CN.Redhat8.0替换(或 font.properties.zh,只要是中文简体就可以。);
3.删除$ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs中的gif文件;
4.重起服务(最好是重启服务器) emctl start dbconsole;
=====================================================
以下的 J2EE 应用程序已经配置, 并且可用下面列出的 URL 来访问。
iSQL*Plus URL:
http://database:5560/isqlplus
iSQL*Plus DBA URL:
http://database:5560/isqlplus/dba
Enterprise Manager 10g Database Control URL:
http://database:1158/em
/==========================================
常用linux命令
df -h
ps -A
top
free
cat /proc/meminfo
uname
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
hostname