资源描述
Redhat Enterprise linux 5上安装Oracle10g Release 2
安 装 手 册
目录
一、 安装环境 3
二、 安装Oracle 10g Release2 前配置 3
三、 安装Oracle 10g 11
四、 后续 37
五、 卸载ORACLE 52
六、 监听配置参考 53
一、 安装环境
1. 在vmware里虚拟RHEL5,分配内存1G,SWAP分区2G
2. 在系统安装过程中,一定选择安装全部开发包,提议不要安装SELinux或安装后在系统中严禁SELinux运行
3. 为预防Oracle安装过程中出现乱码,提议使用英文作为系统语言,进行Oracle安装工作。
二、 安装Oracle 10g Release2 前配置
1. 安装Oracle 10g R2所需软件包
# cd /mnt/cdrom/Server/ //进入安装光盘目录,需要挂载
#cd /media/RHEL_5.4 i386 DVD/Server
From RedHat AS5 Disk 1(32 Bit)
rpm -Uvh setarch-2*
rpm -Uvh make-3*
rpm -Uvh glibc-2*
rpm -Uvh libaio-0*
From RedHat AS5 Disk 2(32 Bit)
rpm -Uvh compat-libstdc++-33-3*
rpm -Uvh compat-gcc-34-3*
rpm -Uvh compat-gcc-34-c++-3*
rpm -Uvh gcc-4*
rpm -Uvh libXp-1*
libXp-1(控制图形界面,假如没有安装这个包,在运行runInstaller时候,就说找全部不到libawt.so: libXp.so.6: cannot open shared object file: No such file or directory occurred.)
From RedHat AS5 Disk 3(32 Bit)
rpm -Uvh openmotif22-*
rpm -Uvh compat-db-4*
其实在装系统时候,将什么开发工具之类能装上全装上
(我用ISO,DVD形式,就全部在Server上。)
假如不能安装,就强制安装 rpm -i compat-db-4* --force --nodeps 能够忽略全部依靠关系和文件问题,什么包全部能安装上,但这种强制安装软件包不能确保完全发挥功效
安装rpm -Uvh compat-gcc-34-3.4.6-4.i386.rpm缺乏运行文件时候按下面次序安装
===============================================
rpm -Uvh kernel-headers-2.6.18-164.el5.i386.rpm
rpm -Uvh glibc-headers-2.5-42.i386.rpm
rpm -Uvh glibc-devel-2.5-42.i386.rpm
rpm -Uvh compat-gcc-34-3*
===============================================
安装rpm -Uvh gcc-4.1.2-46.el5.i386.rpm缺乏运行文件时候按下面次序安装
==================================
rpm -Uvh libgomp-4.4.0-6.el5.i386.rpm
rpm -Uvh gcc-4.1.2-46.el5.i386.rpm
==================================
2. 修改/etc/redhat-release文件
因为Oracle 10g官方只支持到RHEL4为止,所以需要更改版本说明,编辑/etc/redhat-release文件,删除Red Hat Enterprise Linux Server release 5 (Tikanga),改为redhat-4
#vi /etc/redhat-release 然后直接删除粘贴就行了。
3. 修改内核参数
#vi /etc/sysctl.conf (在配置文件后,增加下面到文本最终)
cat >> /etc/sysctl.conf <<EOF
kernel.shmmni = 4096
kernel.sem = 250 3 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
EOF
使更改立即生效,使用下面命令:
#sysctl -p
补充说明:系统内核参数
kernel.shmall = 2097152 //该参数表示系统一次能够使用共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改
kernel.shmmax = //该参数定义了共享内存段最大尺寸(以字节为单位)。缺省为 32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
kernel.shmmni = 4096 // 这个内核参数用于设置系统范围内共享内存段最大数量。该参数默认值是 4096 。通常不需要更改
kernel.sem = 250 3 100 128 // 表示设置信号量
fs.file-max = 65536 //表示文件句柄最大数量。文件句柄设置表示在linux系统中能够打开文件数量
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 // 发送窗口最大大小
4. 建立安装Oracle需要用户,组,及目录
(这个地方假如简单根据下面程序做也能安装成功,不过假如想把oracle安装别目录里面,就需要修改,这里只是简单在根目录下建立oracle,然后将oracle安装在这个目录下,假如要把oracle安装在opt下面,就需要进行简单修改。)
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
passwd oracle
把oracle安装到opt下
mkdir /opt/oracle
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle
假如要把oracle安装到oracle下,按下面操作
mkdir /oracle
chown -R oracle:oinstall /oracle
chmod -R 775 /oracle
安装oracle目录提议安装在一个单独分区或磁盘上。
5. 设置oracle用户shell limit (为了提升在linux系统上运行软件性能,必需对oracle用户设置下列限定。)
#vi /etc/security/limits.conf
cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
接下来更改/etc/pam.d/login文件,添加下面内容,使shell limit生效:
#vi /etc/pam.d/login
cat >> /etc/pam.d/login <<EOF
session required pam_limits.so
EOF
补充说明:pam_limits.so是linux 中一个PAM(插入式认证模块,Pluggable Authentication Modules),其配置文件是/etc/sysctl.conf,用于分配用户登录后权限
6. 配置IP地址 (这个能够在安装时候就确定,假如没有确定,也能够经过系统自带工具修改)
安装RHEL时候最好采取静态IP地址,假如当初选择是DHCP,现在需要更改/etc/sysconfig/network-scripts/ifcfg-eth0文件
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.159.255
HWADDR=00:0C:29:0D:1F:85
IPADDR=192.168.159.129
NETMASK=255.255.255.0
NETWORK=192.168.159.0
ONBOOT=yes
7. 运行命令:setup,关闭防火墙和SELinux
8. 修改主机名
修改/etc/hosts文件,将127.0.0.1注释,并加入自己主机地址,以下:
# that require network functionality will fail.
#127.0.0.1 localhost.localdomain localhost
192.168.159.129 rhel5ora.localdomain localhost
9. 配置oracle用户环境变量
下面操作,改用oracle用户登陆实施。接下来,编辑/home/oracle目录下.bash_profile文件,添加以下内容:
$vi /home/oracle/.bash_profile
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
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
补充说明:
export ORACLE_SID=orcl (看你要设置SID是什么)
source .bash_profile
三、 安装Oracle 10g
把10201_database_linux32.zip放在/opt目录下,并经过
#unzip 10201_database_linux32.zip解压(需要root用户权限)
在这里可能要在root下面修改database权限,以root用户登录 chmod -R 755 database
现在使用oracle用户到/opt/database目录
为了预防安装oracle时出现乱码,先把语言环境改为英文,在终端里输入:
$export LC_CTYPE=en_US.UTF-8 //为了预防乱码,将输入环境改为英文
开始实施oracle安装脚本
cd /opt/database/
./runInstaller
补充说明:解压缩安装文件
oracle安装包有这么多个格式:
(1) zip这种格式最好解压缩,直接使用命令unzip 文件名即可
(2) cpio.gz这种格式有这么多个解压缩方法
a. # zcat XXXX.cpio.gz | cpio -idmv
b. # gunzip XXXX.cpio.gz解压出XXXX.cpio文件然后再 # cpio -idvm < XXXX.cpio
解压缩完成后,设置oracle帐户能够操作安装文件所在目录
chown -R oracle:oinstall 安装文件所在目录
假如无法看到安装界面,在这里遇上一个DISPLAY 还未设置。请设置 DISPLAY 后重试,请使用root帐户实施以下命令后再运行安装程序:
# export DISPLAY=:0.0
# xhost +
补充说明:
在root下(以root用户登录)实施#xdpyinfo统计下name of display:后字符串,如127.0.0.1:1.0 (我统计为:0.0)
#xhost +
显示:access control disabled,clients can connect from any host
3.切换到Oracle用户: #su - oracle
4.在Oracle用户下实施命令:export DISPLAY=:1.0 (看你统计是多少,用KDE话是0.0,用GONE话是1.0,当然我测试是这么,具体还要看情况)
5.在Oracle下实施xdpyinfo命令,假如能正常显示,说明设置成功
先安装数据库
1. 选择安装类型,基础安装,不创建数据库,以后再创建数据库实例。以下图所表示:
/opt/oracle/product/10.2.0/db_1
2.指定证书存放目录,因为在.bash_profile时候,全部设置好了,直接点下一步。图所表示:
3.在这里会检验安装是否符合条件,假如没有什么问题话,就只有第一个Checking Network Configuration requirements 要勾选,就出现User Verified ,直接next进入准备安装界面,以下图所表示:
4,开始安装oracle数据库,假如没有什么问题,直接走完,要是有些rpm包没有安装完全,就会出现错误。出现错误后就检验看是否有是哪个包没有安装。
在安装过程中会出现要实施程序。
直接进入下面目录,运行程序,一切全部是默认。
#/oracle/oraInventory/orainstRoot.sh
#/oracle/product/10.2.0/db_1/root.sh
5,单独创建数据库实例,在终端输入$export LC_CTYPE=en_US.UTF-8
$cd /opt/oracle/product/10.2.0/db_1/bin进入目录,然后./dbca 开启创建实例程序。开启后
界面以下:直接next
6,出现创建数据库界面,直接next。
7,默认创建通用数据库。next
8,输入要创建数据库实例名称SID,next。
9,直接默认,点next。
10,给数据库实例设置密码,这里直接设置统一密码,也能够单独设置密码。next。
11,创建数据库默认为文件系统,不改变,next。
12,直接默认选项,next。
13,数据库恢复默认选项,next。
14,相关schemas,不管,直接next。
15,设置内存,大小,字符,连接模式。
大小默认。
字符集选择简体汉字,假如没有设置这个,数据库中汉字字符就会出现乱码。
直接默认为Dedicated Server mode 专用服务器模式。next。下面还有一个All initialization Parameters,能够依据需要初始化有些参数。
16,默认,直接next。
17,默认创建数据库,finish。
18,配置文件,假如需要能够保留一下。然后进入最终步骤创建数据库。
19,假如你抵达这个界面,恭喜你成功了!开始玩oracle了。
$ source oraenv (这个命令是用来修改SID)
ORACLE_SID = [oracle] ?PDBQZ (我SID是PDBQZ)
bash: /root/.bashrc: Permission denied
重新产生spfile:
SQL> create spfile from pfile;
将$ORACLE_BASE/admin /数据库名称/pfile目录下init.ora.01233838形式文件copy到$ORACLE_HOME/dbs目录下 initoracle.ora即可。(注:initoracle.ora中oracle为你实例名 ORACLE_SID)
20,安装完成后,恢复语言环境和版本信息
#export LC_CTYPE=zh_CN.UTF-8
#vi /etc/redhat-release
Red Hat Enterprise Linux Server release 5 (Tikanga)
四、 后续
创建用户
create user lvs identified by lvs ;
grant create user,drop user,alter user,create any view,drop any view,exp_full_database,imp_full_database,dba,connect,resource,create session to lvs ;
1.安装完成后,首先应该开启监听器。
监听器接收用户端连接请求,并在验证证书后创建数据库连接。要使用OEM或iSQL*PLUS,必需先开启监听器。
[oracle@ORA-Test database]$ lsnrctl start
[oracle@ORA-Test database]$ lsnrctl stop
2.使用Oracle Enterprise Manager 10g进行数据库控制
开启和停止OEM命令为:
[oracle@ORA-Test database]$emctl start dbconsole
[oracle@ORA-Test database]$emctl stop dbconsole
在web浏览器中,输入:
:1158/em (假如服务器没有进行DNS解析,则能够用IP地址)
用户名:SYS
口令:<安装过程中建立口令>
连接为:SYSDBA
补充说明:
处理EM乱码&dbca乱码
我们需要用适宜汉字字符集文件替换缺省文件即可,本例选择使用font.properties.zh_CN.Redhat来替换缺省字体定义文件font.properties
因为系统中缺乏font.properties.zh_CN.Redhat配置中zysong.ttf字体,全部我们需要下载zysong.ttf字体文件,然后复制到/usr/share/fonts/zh_CN/TrueType目录下(创建该目录)
#mkdir –p /usr/share/fonts/zh_CN/TrueType //创建zh_CN目录,复制字体文件zysong.ttf到TrueType目录
接下来配置jdk
cd /opt/oracle/product/10.2.0/db_1/jdk/jre/lib //进入lib目录(本例oracle安装目录为opt/oracle)
cp font.properties font.properties.bak //备份font.properties文件
$cp font.properties.zh_CN.Redhat font.properties //替换缺省字体定义文件
复制zysong.ttf文件到/opt/oracle/product/10.2.0/db_1/jdk/jre/lib/fonts
cp /usr/share/fonts/zh_CN/TrueType/zysong.ttf /opt/oracle/product/10.2.0/db_1/jdk/jre/lib/fonts
进入该目录下实施"ttmkfdir -o fonts.dir"命令,重新生成fonts.dir文件
cd /opt/oracle/product/10.2.0/db_1/jdk/jre/lib/fonts
ttmkfdir -o fonts.dir
jre目录下操作方法同上:
cd /opt/oracle/product/10.2.0/db_1/ jre/1.4.2/lib
cp font.properties font.properties.bak //备份font.properties文件
$cp font.properties.zh_CN.Redhat font.properties //替换缺省字体定义文件
复制zysong.ttf文件到/opt/oracle/product/10.2.0/db_1/jre/1.4.2/lib/fonts目录下
cp /usr/share/fonts/zh_CN/TrueType/zysong.ttf /opt/oracle/product/10.2.0/db_1/jre/1.4.2/lib/fonts
$cd /opt/oracle/product/10.2.0/db_1/jdk/jre/lib/fonts进入目录
ttmkfdir -o fonts.dir
替换以后需要清理一下Cache并重启EM即可. Cache路径通常在:
$ ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs 清除全部gif文件即可.然后重新开启EM
$emctl stop dbconsole
$emctl start dbconsole
3.使用iSQL*Plus访问数据库
开启和停止iSQL*Plus命令:
[oracle@ORA-Test database]$isqlplusctl start
[oracle@ORA-Test database]$isqlplusctl stop
iSQL*Plus是历史悠久SQL*Plus交互式工具基于web版本,用于访问数据库。要使用iSQL*Plus,请单击OEM控制台相关连接部分中iSQL*Plus链接,或将浏览器指向安装过程中提供iSQL*Plus URL。
在web浏览器中,输入:
:5560/isqlplus
用户名:SYSTEM
口令:<安装过程中创建口令>
连接标识:orcl
4.开启和停止数据库
开启和停止数据库最简单方法是从 OEM 控制台开启和停止。要从命令行实施此操作,请在以 oracle 身份登录后使用 SQL*Plus,以下所表示:
开启:
$ sqlplus SQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:27:48 Copyright (c) 1982, , Oracle.All rights reserved. Enter user-name:/ as sysdba Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area bytes Fixed Size 778036 bytes Variable Size bytes Database Buffers 25165824 bytes Redo Buffers 524288 bytes Database mounted. Database opened. SQL> exit
Shutdown:
$ sqlplus SQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:25:55 Copyright (c) 1982, , Oracle.All rights reserved. Enter user-name:/ as sysdba Connected to: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> exit
Linux下oracle操作命令
重启oracle
lsnrctl stop
sqlplus /nolog
conn /as sysdba
shutdown (startup)
exit
lsnrctl start
开启oracle
sqlplus /nolog
conn /as sysdba
startup
exit
lsnrctl start
关闭oracle
lsnrctl stop
sqlplus /nolog
conn /as sysdba
shutdown
exit
然后配置开机自动开启Oracle
1. 编辑/etc/oratab
#前面全部是注释,最最关键在最终一行,提议你把下面文字也读一下,就当练习#英文了,再说读这些英文注释也挺有用。
# This file is used by ORACLE utilities. It is created by root.sh
# and updated by the Database Configuration Assistant when creating
# a database.
# A colon, ':', is used as the field terminator(字段终止符). A new #line terminates
# the entry. Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively. The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
orcl:/u01/oracle/oracle/product/10.2.0/db_1:Y
2. 修改文件/etc/rc.local添加一下两行
su - oracle -c 'dbstart'
su - oracle -c 'lsnrctl start '
创建oracle用户
第一,开启sql*puls
第二,以system/manager登陆
第三,create user 用户名 IDENTIFIED BY 密码 (假如已经创建过用户,这步能够省略)
create user lvs2 identified by lvs2 ;
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字
grant create user,drop user,alter user,create any view,drop any view,exp_full_database,imp_full_database,dba,connect,resource,create session to lvs2 ;
导入导出数据库
1. #su - oracle
2. #exp orcl_user/orcl_pwd@orl file=/data/oraclebackup/cls_.dmp owner=xzfw
3. #imp orcl_user/orcl_pwd@orl fromuser=dpcsys touser=mzl tables="(cls_past,cls_manager)" file=/data/oraclebackup/cls_.dmp log=/tmp/1125Imp.log ignore=y
输入imp lvs/lvs@cag1 file=/data/oraclebackup/cls_.dmp full=y ignore=y
登陆内网服务器后,切换到oracle账户,su – oracle,输入
imp lvs/lvs file=/data/oraclebackup/cls_.dmp ignore=y full=y
配置oracle开启(本例sid是切换到oracle账户下,su – oracle,输入sqlplus /nolog,进入数据库,
orcl)
安装后在运行$ORACLE_HOME/bin/dbstart时报错,
Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr
处理方法:vi $ORACLE_HOME/bin/dbstart这个文件,找到ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
配置/etc/oratab文件
#chown oracle:oinstall oratab
vi /etc/oratab文件
将orcl:/datas/apps/oracle/product/10.2.0/db_1:N
修改为orcl:/datas/apps/oracle/product/10.2.0/db_1:Y
完成以上操作后,下面创建自开启脚本dbora。
oracle 10g在本身dbstart已经开启了lsnrctl,所以下面脚本上注释掉了lsnrctl开启
#cd /etc/rc.d/init.d/
touch dbora
chown oracle.oinstall /etc/rc.d/init.d/dbora
chmod 755 /etc/rc.d/init.d/dbora
vi dbora
dbora内容以下
#!/bin/bash
#
# chkconfig: 2345 80 05
# description: Oracle 10g Server
# /etc/init.d/dbora
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle: "
# su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
su $ORA_OWNR -c $ORACLE_HOME/bin/dbstart
touch /var/lock/oracle
su $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"
su $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl start"
echo "OK"
;;
stop)
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
# su $ORA_OWNR -
展开阅读全文