ORACLE 10g FOR LINUX在FEDORA CORE 6下的安装

2007-2-5 14:15 chenquan_75
ORACLE 10g FOR LINUX在FEDORA CORE 6下的安装要点(1)

ORACLE 10g FOR LINUX在FEDORA CORE 6下的安装要点(修订)

一、系统资源需求
至少1024 MB物理内存
1024-2048 需1.5倍的SWAP空间
2048-8192 需1倍的SWAP空间
8192- 需0.75倍的SWAP空间
至少400 MB /tmp 临时目录空间
oracle软件需要1.5 GB 到 3.5 GB 磁盘空间
默认数据库需要1.2 GB
二、需下载软件包:
Oracle Database 10g Release 2 (10.2.0.1) Software
[url]http://otn.oracle.com/software/products/database/oracle10g/index.html[/url]
(经测试 10.1.0.3版本亦可照此安装)
openmotif21-2.1.30-14.i386.rpm
[url]ftp://fr.rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/openmotif21-2.1.30-14.i386.rpm[/url]
(10.1.0.3版本检测openmotif21-2.1.30-11.i386.rpm,但安装14 rpm包并忽略此警告亦可)
三、修改HOSTS文件
HOSTS文件位于/etc/目录,书写格式如下:
<IP>       <机器全名(机器名.域名)>         <机器名(缩写)>
127.0.0.1    localhost.localdomain              localhost
10.122.53.200    linux-server                  linux-server
在ORACLE监听端口中填入 linux-server(机器全名)。经初步测试,好像填入IP或localhost均不能访问,因时间关系未做严格测试,感兴趣的可自行测试。
四、设置内核参数
编辑/etc/sysctl.conf文件 ,在最后加入oracle 10g 所需内核参数:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
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  文档:
[url]http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html#kernel[/url]
运行/sbin/sysctl –p 命令使上述设置生效
五、为 oracle 用户设置 Shell 限制
编辑/etc/security/limits.conf文件 ,在最后加入
*     soft  nproc 2047
*     hard  nproc 16384
*     soft  nofile 1024
*     hard  nofile 65536
ORACLE 文档中 不用*号,而直接用下面将创建的linux下ORACLE管理帐号:oracle  .经初步测试两种方法均可。
六、编辑安全选项
编辑/etc/pam.d/login文件,在最后加入
session required /lib/security/pam_limits.so
编辑/etc/selinux/config,将SELINUX设置为SELINUX=disabled,禁用SELINUX。
防火墙设置我设置为禁止,时间关系未进一步测试,有兴趣的可自行测试。
七、检测和安装RPM包
# 从 Fedora Core 6  光盘文件
rpm -Uvh setarch-*
rpm -Uvh --force tcl-*
rpm -Uvh --force libXau-devel-* libXp-*
rpm -Uvh compat-db-*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh compat-libf2c-34-*
rpm -Uvh compat-gcc-34-*
rpm -Uvh libaio-*
rpm -Uvh compat-gcc-34-c++-*
rpm -Uvh compat-libstdc++-296*
rpm -Uvh compat-libgcc-296*
# 从上面下载文件中
rpm -Uvh openmotif21-2.1.30-14.i386.rpm
八、添加用户组和用户
groupadd oinstall
groupadd dba
groupadd oper

useradd -g oinstall -G dba oracle
passwd oracle

2007-2-5 14:16 chenquan_75
ORACLE 10g FOR LINUX在FEDORA CORE 6下的安装要点(2)

九、创建Oracle安装文件夹
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01
chmod –R 775 /u01
十、修改LINUX release文件
编辑/etc/redhat-release文件并将(Fedora Core release 6 (Zod))用下面内容替换:
redhat-4
(10.1.0.3 改为 redhat-3)
由于ORACLE 10G仅认证支持REDHAT LINUX企业版本和NOVEL SUSE LINUX ,其他版本安装时将存在不少问题,为规避这一问题而做此修改。
十一、配置环境变量
用oracle用户登陆并将下面内容添加到.bash_profile文件(oracle用户根目录~)中:

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=MyData; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
export LC_ALL=en.US     
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
由于10G对中文支持存在问题,使用export LC_ALL=en.US 将语言设置为英语。
使用下述命令使环境变量生效:
source .bash_profile
十二、修改Oracle安装文件及其所在目录的所有于权限
     将安装装文件copy到个人设定的安装文件夹,然后在终端里面修改文件夹的归属及权限,具体办法如下:
chmod 777 /usr/oracle-install
chown -R oracle.oinstall /usr/oracle-install
十三、X windows设置-----注意这里在xwindows下的终端运行
用root用户登陆,并执行下列命令:
xhost +
用oracle用户登陆,并执行下列命令:
DISPLAY=127.0.0.1:0.0;export DISPLAY
十四、ORACLE DB 和CLIENT 的安装
一般的安装顺序是 DB –-> CLIENT
在DB安装路径下执行下列命令:
./runInstaller –IgnoreSysPreReqs
具体步骤可参照ORACLE网站:
[url]http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html#oracle[/url]
在CLIENT安装路径下执行:
./runInstaller –IgnoreSysPreReqs
注:安装时建议选择advance install模式,FEDORA CORE 未经ORACLE认证,典型配置可能会存在问题。数据库home设置为.bash_profile中的设定。数据库全局名称按要求应设置为ORACLE_SID.机器域名 。数据库字符集和编码方式请按需要进行手工设置。
安装过程中会提示以root用户登陆执行一些脚本 ,执行后再按“ok”按钮继续安装。
十五:安装后配置
以上是基本的安装要点。安装成功后数据库主要配置方法如下:
1、登陆并启动数据库的操作。
$ lsnrctl start
$ sqlplus /nolog
SQL*Plus: Release 9.2.0.0 - Production on Sat Mar 12 22:58:53 2005
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect / as sysdba
Connected.
SQL> shutdown immediate 关闭数据库 (OR "dbshut" command)
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup; 启动数据库
ORACLE instance started.
Total System Global Area 236000356 bytes
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
2、启动企业管理器
$ emctl start dbconsole
启动成功后可从提示的网址中进行访问
如:[url]http://linux-server:5500/em[/url]
3、 dbstart脚本修改
数据库创建完成后,编辑/etc/oratab ,文件设置每个实例的重启标志为“Y”:
vi /etc/oratab

MyData:/u01/app/oracle/product/10.2.0/db_1:Y         注:(NY)

然后执行dbstart启动数据库
如数据库无法启动,报告Can’t find init file …的错误,需要复制一个初始化文件:
cp /u01/app/oracle/admin/MyData/pfile/init.ora.* /u01/app/oracle/product/10.2.0/db_1/dbs/initge01.ora (不改名直接拷贝亦可)
重新执行dbstart即可。
修改/ u01/app/oracle/product/10.2.0/db_1/bin/dbstart,将其中关于监听器部分改为:
ORACLE_HOME_LISTNER=/u01/app/oracle/oracle/product/10.2.0/db_1/
编辑/etc/rc.local 加入下面一行,在起动LINUX时自动起动ORACLE:
/opt/oracel/product/10g/bin/dbstart

2007-2-5 14:17 chenquan_75
ORACLE 10g FOR LINUX在FEDORA CORE 6下的安装要点(3)

4. 编写启动脚本(OPTION)
为了方便管理,可以写一个启动脚本ora10g:
以root身份进入,编写以下脚本:
#!/bin/bash
#
# chkconfig: 2345 91 19
# description: starts the oracle listener and instance
status() {
pid=`ps -ef | grep ora_pmon | grep -v grep | awk '{print $8}'`
if [ "X$pid" = "X" ]
then
echo "oracle10g is not running."
exit 1
else
echo "oracle10g is running."
exit 0
fi
}
case "$1" in
start)
#startup the listener and instance
echo -n "oracle begin to startup: "
su - oracle -c dbstart
su - oracle -c "lsnrctl start"

echo "oracle10g started"
;;
stop)
# stop listener, apache and database
echo -n "oracle begin to shutdown:"
su - oracle -c "lsnrctl stop"
su - oracle -c dbshut

echo "oracle10g shutdowned"
;;
reload|restart)
$0 stop
$0 start
;;
'status')
status
;;
*)
echo "Usage: ora10g [start|stop|reload|restart]"
exit 1
esac
exit 0
存为ora10g后,然后
chmod a+x ora10g
ln -s /opt/oracle/product/10.2.0/bin/ora10g /etc/rc.d/init.d/
即可在以后以root身份运行/etc/rc.d/init.d/ora10g start |stop 来管oracle的启动和停止了。
如果要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:
chkconfig --level 345 ora10g on      

(注:好像我做这步的时候报错,系统不允许做此修改,我采用的是下面的方法)

或者可在/etc/rc.d/rc.local中加入如下:
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart"  
如想自动启动 ORACLE 企业管理器加入如下语句:
su - oracle -c "emctl start dbconsole"

5, 关于数据库删除重新安装的问题:
把ORACLE安装目录删除及/etc/ora*.*删除就行了
#rm –f /etc/ora*.*

6.修改Oracle10g数据库字符集
SQL> connect sys/oracle as sysdba
SQL> startup mount
SQL> alter session set sql_trace=true;
Session altered.
SQL> alter system enable restricted session;
System altered.
SQL> alter system set job_queue_processes=0;
System altered.
SQL> alter system set aq_tm_processes=0;
System altered.
SQL> alter database open;
Database altered.
SQL> set linesize 120;
SQL> alter database character set zhs16gbk;
alter database character set zhs16gbk
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character set
SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE
Database altered.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
SQL> select name,value$ from props$ where name like '%NLS%';
NLS_CHARACTERSET
ZHS16GBK

7. oracle database备份
(1)vi bachupDb.sh
#!/bin/sh
#oracle用户下
#crontab -e 增加 "35 4 * * * /home/oracle/dbbackup/backupDb.sh",保存后自动安装
#或echo "35 4 * * * /home/oracle/dbbackup/backupDb.sh" > backupDb.cron
#crontab backupDb.cron
#############
#@tip 修改为本机数据库home目录
export ORACLE_HOME=/opt/oracle/product/10g
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
# 注意字符集必须和数据库的字符集一致,以避免字符集转化失败
export NLS_LANG=AMERICAN_AMERICA.zhs16gbk
#@tip 125修改为要备份的oracle的ip地址的最后一段
dmpfile="`echo ~/`dbbackup/gedb_`date +%w`.dmp"
logfile="`echo ~/`dbbackup/gedb_`date +%w`.log"

if [ -w $dmpfile ]
then
echo "rm -f $dmpfile"
rm -f "$dmpfile"
fi

#@tip ip地址修改为要备份的oracle的主机地址
exp USERID=gedb/gedb@10.248.1.5/ge01 file=$dmpfile log=$logfile owner=gedb grants=y
(2)copy bachupDb.sh 到slave oracle srever 相应目录,
chown oracle.oinstall bachupDb.sh
chmod 744 bachupDb.sh
vi bachupDb.sh 以符合安装情况
(3)以oracle user role
crontab -e
35 4 * * * /home/oracle/dbbackup/backupDb.sh

8. restore oracle backup
su - oracle
imp USERID=gedb/gedb file=gedb_6.dmp log=implogfile commit=y grants=y full=y


注: 5 6 7 8 方法未测试


安装中可能存在的问题:
1、安装成功但无法打开EM页面:
错误:数据库无法装载 或 网络不能连接到数据库
一般可能的原因是ORACLE 的TNS监听设置不正确,该设置参数位于 oracle安装目录下的network目录中。需修改的配置文件有两个:
listener.ora
Tnsnames.ora
请检查该设置是否与HOSTS中的设置相匹配。
2、IE远程访问EM时中文显示错的问题
由于 ORACLE EM(企业管理器)对中文支持存在问题,部分字符显示出错,建议,在IE浏览器的 “常规”——“语言”中添加英文 ,并上移到中文之前。
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值