Red_Hat_Linux5.3下安装oracle10g详解

Red_Hat_Linux5.3下安装oracle10g详解


第一章Oracle 10g的安装... 5

1.1检查硬件环境... 5

1.1.1硬件要求... 5

1.1.2检查内存... 5

1.1.3检查交换分区... 5

1.1.4检查/tmp临时文件夹空闲空间... 5

1.1.5检查磁盘空闲空间大小... 6

1.2检查软件环境... 6

1.2.1软件环境要求... 6

1.2.2检查操作系统型号... 6

1.2.3检查内核型号... 6

1.2.4安装必须的软件包... 7

1.2.5检查安装Oracle10g必须的操作系统安装包是否安装成功... 7

1.3修改Linuxoracle10g的系统兼容性... 7

1.4修改Linux内核参数... 8

1.5运行以下命令,内核参数生效... 9

1.6创建安装oracle需要的用户和组... 9

1.6.1创建oinstall... 9

1.6.2创建dba... 9

1.6.3创建用户名为oracle的用户并将其指派到相应的组... 9

1.6.4设定oracle的密码... 10

1.6.5检查确认用户... 10

1.7创建oracle安装目录并修改目录属性... 10

1.7.1创建oracle安装目录... 10

1.7.2分配组... 10

1.7.3oracle用户授权... 10

1.8设置oracle用户的shelllimit. 10

1.8.1修改/etc/security/limits.conf文件... 10

1.8.2增加下面的内容到文件/etc/pam.d/login 中,使shell limit生效... 11

1.9修改host文件及oracle用户环境变量... 12

1.9.1修改/etc/hosts. 12

1.9.2重启网络... 12

1.9.3查看主机名称... 13

1.9.4修改/etc/sysconfig/network文件... 13

1.9.5修改SELINUX的配置文件... 13

1.9.6配置oracle用户环境变量... 14

1.10开始安装oracle. 15

1.10.1设置运行语言... 15

1.10.2解压安装包... 15

1.10.3进入解压目录,安装oracle. 15

1.10.4指定产品清单目录和身份证明... 16

1.10.5产品特定的先决条件检查,点选用户已验证然后点击“Next”。... 17

1.10.6安装,点击“install”. 17

1.10.7安装进程... 18

1.10.8执行配置脚本... 18

1.10.9安装完毕退出,点击“Exit”弹出警告对话框... 20

1.10.10点击“Yes”,完成... 21

第二章配置监听及建库... 22

2.1配置监听器... 22

2.1.1在终端输入如下命令调用网络配置助手... 22

2.1.2添加监听程序... 23

2.1.3为监听起名... 23

2.1.4选择协议TCP. 24

2.1.5配置端口,默认1521. 24

2.1.6是否配置另一个监听,如果不配置选择No. 25

2.1.7完成监听配置,点击Next. 25

2.1.8点击“Finish”. 26

2.2创建数据库... 27

2.2.1使用dbca命令调用oracle数据库配置助手进行图形建库... 27

2.2.2创建数据库... 27

2.2.3选择模版为“GeneralPurpose”创建数据库... 28

2.2.4为数据库实例起名... 28

2.2.5选择使用默认管理器管理数据库... 29

2.2.6设置数据库密码... 29

2.2.7选择数据库存储机制... 30

2.2.8指定数据库创建位置... 30

2.2.9指定恢复区位置及大小... 31

2.2.10是否添加实例方案... 31

2.2.11设置oracle相关参数,Memory选项... 32

2.2.12 Sizing选项... 32

2.2.13 Character Sets选项... 33

2.2.14 Connection Mode选项... 33

2.2.15数据库的存储配置... 34

2.2.16选择创建数据库选项,如保存模板和脚本可进行点选... 34

2.2.17点击OK开始创建... 35

2.2.18口令管理... 36

第三章配置oracle. 37

3.1启动监听器... 37

3.2使用OracleEnterprise Manager 10g进行数据库控制... 37

3.3使用iSQL*Plus访问数据库... 38

3.4 RHEL5.3oracle 10g开机自动启动... 39

3.4.1使用root用户修改/etc/oratab文件:... 39

3.4.2使用ORACLE用户修改$ORACLE_HOME/bin/dbstart文件... 40

3.4.3执行相应的脚本进行测试... 41

3.4.4创建添加自动启动执行脚本... 43

3.4.5检查... 45

第四章 Oracle 10创建用户和授权... 46

4.1linuxoracle的启动... 46

4.1.1启动监听... 46

4.1.2登录SQL. 46

4.1.3连接数据库... 46

4.1.4启动数据库... 46

4.2在数据中创建用户名... 47

4.2.1连接超级用户... 47

4.2.2创建用户名字... 47

4.2.3添加用户的权限... 47

4.2.4向用户授予系统特权... 47

4.2.5查看用户权限... 47

4.2.6撤销用户授予的权限... 47

4.2.7更改用户密码... 48

4.2.8删除用户... 48

4.2.9为用户授予角色... 48


第一章Oracle 10g的安装

1.1检查硬件环境

1.1.1硬件要求

内存

至少512M

交换分区

至少1G

/tmp

至少400M

磁盘空闲空间

至少4G


1.1.2检查内存

#grepMemTotal /proc/meminfo


1.1.3检查交换分区

# grepSwapTotal /proc/meminfo


1.1.4检查/tmp临时文件夹空闲空间

#df �Ch/tmp


1.1.5检查磁盘空闲空间大小

#df �Ch



1.2检查软件环境

1.2.1软件环境要求

操作系统:Red HatEnterprise Linux Server release 5.3 (Tikanga)

内核:至少2.4.21-27.EL内核

软件包:

※setarch-2.0-1.1

※make-3.81-3.el5

※glibc-2.5-34

※libaio-0.3.106-3.2

※compat-libstdc++-33-3.2.3-61

※compat-gcc-34-3.4.6-4

※compat-gcc-34-c++-3.4.6-4

※gcc-4.1.2-44.el5

※libgcc-4.1.2-44.el5

※libXp-1.0.0-8.1.el5

※openmotif-2.3.1-2.el5

※compat-db-4.2.52-5.1


1.2.2检查操作系统型号

#cat/etc/issue


1.2.3检查内核型号

#uname �Cr


1.2.4安装必须的软件包

这些必须的软件包可以从RHEL5.3系统盘里面找到。确保cdrom里面有RHEL5.3的系统盘,然后使用命令:

[root@localhost~]#mkdir/mnt/cdrom                 //创建一个文夹

[root@localhost~]#mount  /dev/cdrom /mnt/cdrom    //将光驱的内容挂载到/mnt/cdrom路径下面。

进入到/mnt/cdrom/Server:

执行如下命令:

[root@localhost~]#cd /mnt/cdrom/Server

[root@ localhost Server]# rpm -ivh setarch-2*

[root@ localhost Server]# rpm -ivh make-3*

[root@ localhost Server]# rpm --force -ivhglibc-2*

[root@ localhost Server]# rpm -ivh libaio-0*


[root@ localhost Server]# rpm -ivh compat-libstdc++-33-3*

[root@ localhost Server]# rpm -ivhcompat-gcc-34-3*

[root@ localhost Server]# rpm -ivh compat-gcc-34-c++-3*

[root@ localhost Server]# rpm -ivh gcc-4*

[root@ localhost Server]# rpm -ivh libXp-1*


[root@ localhost Server]# rpm -ivh openmotif-2*

[root@ localhost Server]# rpm -ivhcompat-db-4*


1.2.5检查安装Oracle10g必须的操作系统安装包是否安装成功

[root@localhost~]#rpm �Cqa | grep setarch-2

[root@localhost~]#rpm �Cqa | grep make-3

[root@localhost~]#rpm �Cqa | grep glibc-2

[root@localhost~]#rpm �Cqa | grep libaio-0

[root@localhost~]#rpm �Cqa | grep compat-libstdc++33-3

[root@localhost~]#rpm �Cqa | grep compat-gcc-34-3

[root@localhost~]#rpm �Cqa | grep compat-gcc-34-c++-3

[root@localhost~]#rpm �Cqa | grep gcc-4

[root@localhost~]#rpm �Cqa | grep libXp-1

[root@localhost~]#rpm �Cqa | grep openmotif-2

[root@localhost~]#rpm �Cqa | grep compat-db-4


1.3修改Linuxoracle10g的系统兼容性

oracle 的官方只支持到Red Hat Release 4为止,所以要修改版本说明。

修改/etc/redhat-release文件,将

[root@localhost~]#vi  /etc/redhat-release

Red HatEnterprise Linux Server release 5.3 (Tikanga)注释掉(前加”#”即可)。

然后添加一行:redhat-4

ZZ保存退出即可。


1.4修改Linux内核参数

[root@localhost~]#vi  /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.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

ZZ保存退出。

1.5运行以下命令,内核参数生效

[root@localhost~]#/sbin/sysctl  -p


1.6创建安装oracle需要的用户和组

1.6.1创建oinstall

[root@localhost~]#groupadd oinstall


1.6.2创建dba

[root@localhost~]#groupadd dba


1.6.3创建用户名为oracle的用户并将其指派到相应的组

[root@localhost~]#useradd -g oinstall -G dba oracle

备注:如果oracle已经存在,但不是oinstall组,也非dba组成员,则修改用户属性:

[root@localhost~]#usermod�Cg oinstall �CG dba oracle


1.6.4设定oracle的密码

[root@localhost~]#passwd oracle


1.6.5检查确认用户

[root@localhost~]#idoracle


1.7创建oracle安装目录并修改目录属性

1.7.1创建oracle安装目录

[root@localhost~]#mkdir -p /opt/app/oracle

注:-p 参数的意思是如果没有该目录则新建。

1.7.2分配组

[root@localhost~]#chown -R oracle.oinstall  /opt/app/oracle

1.7.3oracle用户授权

[root@localhost~]#chmod -R 777  /opt

注:-R参数是应用到子文件夹,777参数是读,写,执行权限。


1.8设置oracle用户的shelllimit

1.8.1修改/etc/security/limits.conf文件

[root@localhost~]#vi  /etc/security/limits.conf

oraclesoft nproc 2047

oraclehard nproc 16384

oraclesoft nofile 1024

oraclehard nofile 65536


ZZ保存退出


1.8.2增加下面的内容到文件 /etc/pam.d/login 中,使shelllimit生效

[root@localhost~]#vi/etc/pam.d/login

session  required  /lib/security/pam_limits.so


1.9修改host文件及oracle用户环境变量

1.9.1修改/etc/hosts

[root@localhost~]#vi/etc/hosts

修改Linux的IP地址,否则网络检查通不过

(格式:ip地址 �C 主机名 �C localhost

192.168.5.240           hakim     localhost

ZZ保存退出


1.9.2重启网络

[root@localhost~]#service network restart


1.9.3查看主机名称

[root@localhost~]#hostname


1.9.4修改/etc/sysconfig/network文件

[root@localhost~]#vi  /etc/sysconfig/network


添加以下内容

NETWORKING=yes                  //系统是否使用网络服务功能

NETWORKING_IPV6=yes             //是否支持IPV6网络

HOSTNAME=hakim                  //设置主机名

GATEWAY=192.168.5.1             //设置默认网关

FORWARD_IPV4=false              //是否开启IPV4包转发


ZZ保存退出


1.9.5修改SELINUX的配置文件

因为SELINUX对 oracle 有影响,所以把 secure  linux  设成无效,编辑文件 /etc/selinux/config  :引用:SELINUX=disabled(如果在安装系统时把selinux禁用了,这里就不用再配置了)

[root@localhost~]# vi  /etc/selinux/config


注销root用户,以oracle 用户份登录,行以下:

1.9.6配置oracle用户环境变量

[oracle@hakim~]$vi  /home/oracle/.bash_profile

添加如下内容:

# OracleSettings


export  TMP=/tmp

export  TMPDIR=$TMP

export  ORACLE_BASE=/opt/app/oracle

export  ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export  ORACLE_TERM=xterm

export  ORACLE_SID=HKDB

export  PATH=$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib


if [ $USER= "oracle" ]; then

if [ $SHELL= "/bin/ksh" ]; then

ulimit -p16384

ulimit -n65536

else

ulimit -u16384 -n 65536

fi

fi


ZZ保存退出


1.10开始安装oracle

安装须以X windows图形界面登录。以oracle用户登录。

注销root用户,以oracle用户登录。不能以root用户切换到oracle用户。

1.10.1设置运行语言

[oracle@hakim~]$exportLC_CTYPE=en_US.UTF-8    //如果这里不设置语言,安装oracle会出现乱码


1.10.2解压安装包

将安装包10201_database_linux32.zip复制到opt文件夹中,然后解压

[oracle@hakimopt]$unzip 10201_database_linux32.zip


1.10.3进入解压目录,安装oracle

[oracle@hakimopt]$cd  /database

[oracle@hakimdatabase]$./runInstaller

我们只安装oracle软件,不创建数据库,所以把“Create Starter Database(additional 720MB)”选项的勾去掉;UNX DBA Group(G)下拉选项,选择“dba”;oracle Home Location的安装路径是不是跟上面设置一样,如果不一样手动改一下,然后点击”Next”。



1.10.4指定产品清单目录和身份证明

这里的产品清单目录是不是跟上面设置的一样,如里不一样,手动改一下。


1.10.5产品特定的先决条件检查,点选用户已验证然后点击“Next”。


1.10.6安装,点击“install”


1.10.7安装进程


1.10.8执行配置脚本


打开终端窗口,切换root用户执行脚本:

$su �C root

#/opt/app/oracle/oralnventory/orainstRoot.sh


#/opt/app/oracle/product/10.2.0/db_1/root.sh


1.10.9安装完毕退出,点击“Exit”弹出警告对话框


1.10.10点击“Yes”,完成

手动重启系统

第二章配置监听及建库

2.1配置监听器

2.1.1在终端输入如下命令调用网络配置助手

[oracle@hakim~]$exportLC_CTYPE=en_US.UTF-8

[oracle@hakim~]$netca

弹出监听界面


监听界面


2.1.2添加监听程序


2.1.3为监听起名


2.1.4选择协议TCP


2.1.5配置端口,默认1521


2.1.6是否配置另一个监听,如果不配置选择No


2.1.7完成监听配置,点击Next


2.1.8点击“Finish


终端打印信息如下:


2.2创建数据库

2.2.1使用dbca命令调用oracle数据库配置助手进行图形建库


2.2.2创建数据库


2.2.3选择模版为“General Purpose”创建数据库


2.2.4为数据库实例起名


2.2.5选择使用默认管理器管理数据库


2.2.6设置数据库密码


2.2.7选择数据库存储机制


2.2.8指定数据库创建位置


2.2.9指定恢复区位置及大小


2.2.10是否添加实例方案


2.2.11设置oracle相关参数,Memory选项


2.2.12 Sizing选项


2.2.13 Character Sets选项


2.2.14 Connection Mode选项


2.2.15数据库的存储配置


2.2.16选择创建数据库选项,如保存模板和脚本可进行点选



2.2.17点击OK开始创建

安装进程


2.2.18口令管理

不设置其他用户的口令可以点击Exit

到这里oracle已经安装完成,恢复语言环境以及版本信息

$ export LC_CTYPE=zh_CN.UTF-8

#vi/etc/redhat-release

Red HatEnterprise Linux Server release 5.3 (Tikanga)

第三章配置oracle

3.1启动监听器

监听器接受客户端的连接请求,并在验证证书后创建数据库连接。要使用OEM或iSQL*PLUS,必须先启动监听器。

[oracle@hakim~]$lsnrctlstart        //启动

[oracle@hakim~]$lsnrctlstop         //停止

3.2使用Oracle Enterprise Manager 10g进行数据库控制

启动和停止OEM的命令为:

[oracle@hakim~]$emctlstart dbconsole       //启动

[oracle@hakim~]$emctlstop dbconsole        //停止

在web浏览器中,输入:

http://192.168.5.240:1158/em

用户名:sys

口令:<安装过程中建立的口令>

连接为:SYSDBA


3.3使用iSQL*Plus访问数据库

启动和停止iSQL*Plus命令:

[oracle@hakim~]$isqlplusctl start              //启动

[oracle@hakim~]$isqlplusctl stop               //停止

iSQL*Plus是历史悠久的SQL*Plus交互式工具的基于web的版本,用于访问数据库。要使用iSQL*Plus,请单击OEM控制台相关连接部分中的iSQL*Plus链接,或将浏览器指向安装过程中提供的iSQL*Plus URL。

在web浏览器中,输入:

http://192.168.5.240:5560/isqlplus

用户名:system

口令:<安装过程中创建的口令>

连接标识:HKDB  <安装过程中创建的数据库名>


3.4 RHEL5.3oracle 10g开机自动启动

3.4.1使用root用户修改/etc/oratab文件:

[oracle@hakim~]$ su �C root

[root@hakim~]# vi /etc/oratab


orcl:/oracle/app/product/10.2.0/db_1:N

改为:

orcl:/oracle/app/product/10.2.0/db_1:Y     //也就是将最后的N改为Y


3.4.2使用ORACLE用户修改$ORACLE_HOME/bin/dbstart文件

[root@hakim~]#  su �C oracle

[oracle@hakim~]$ cd $ORACLE_HOME/bin

[oracle@hakim~]$ vi dbstart

找到ORACLE_HOME_LISTNER=…这行,修改成ORACLE_HOME_LISTNER=/opt/app/oracle/product/10.2.0/db_1 或者直接修改成: ORACLE_HOME_LISTNER=$ORACLE_HOME


3.4.3执行相应的脚本进行测试

[oracle@hakim~]$cd $ORACLE_HOME/bin

[oracle@hakimbin]$./dbstart (或./dbshut)


[oracle@hakimbin]$ ps - efw | grep ora


[oracle@hakimbin]$ lsnrctl status       //查看监听状态


[oracle@hakimbin]$ ps -efw | grep LISTEN | grep -v grep


3.4.4创建添加自动启动执行脚本

[oracle@hakimbin]$su - root

[root@hakim~]# cd /etc/rc.d/init.d/

[[email protected]]# vi oradbstart

添加如下自动启动执行脚本

#!/bin/bash  

#chkconfig: 345 99 10  

#description: Startup Script for oracle Databases  

#/etc/rc.d/init.d/dbstart


export ORACLE_BASE=/opt/app/oracle/

exportORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1

exportORACLE_SID=orcl

exportPATH=$PATH:$ORACLE_HOME/bin


ORA_OWNR="oracle"


# if theexecutables 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 theinstance and listener or usage display

case"$1" in

start)

# Oraclelistener and instance startup

echo -n"Starting Oracle: "

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/isqlplusctrl start"

echo"OK"

;;

stop)

# Oraclelistener and instance shutdown

echo -n"Shutdown Oracle: "

su -$ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"

su -$ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctrl stop"

su -$ORA_OWNR -c "$ORACLE_HOME/bin/dbshut"

su -$ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"

rm -f/var/lock/oracle

echo"OK"

;;

reload|restart)

$0 stop

$0 start

;;

*)

echo"Usage: `basename $0` start|stop|restart|reload"

exit 1

esac

exit 0


保存退出。


打开终端执行:

[oracle@hakim~]$ su - root

[root@hakim~]#chown oracle.oinstall /etc/rc.d/init.d/oradbstart


[root@hakim~]# chmod 775 /etc/rc.d/init.d/oradbstart


然后执行:

[root@hakim~]#chkconfig --add oradbstart

[root@hakim~]#chkconfig --list oradbstart

chkconfig--list oradbstart运行结果:

oradbstart0:关闭 1: 关闭2: 关闭3:启用 4: 启用5: 启用6: 关闭


3.4.5检查

根据上面的运行结果,当相应的运行级别为“启用”时(例如:5:启用),在对应的/etc/rc.d/rcN.d(例如:和5:“启用”对应的是:/etc/rc.d/rc5.d)下面会生成一个文件:S99oradbstart,使用vi S99oradbstart打开该文件,可以看到该文件的内容和/etc/rc.d/init.d/oradbstart内容相同,表示配置成功,其实,S99oradbstart是一个到/etc/rc.d/init.d/oradbstart的链接,我们可以使用file命令来查看:

[root@hakim~]#su - oracle

[oracle@hakim~]$file /etc/rc.d/rc5.d/S99oradbstart


S99oradbstart:symboliclink to '../init.d/oradbstart


到这里整个配置已经完成,重启系统后,在web浏览器中输入:

http://192.168.5.240:1158/em

http://192.168.5.240:5560/isqlplus

看下能不能登录进去,如果成功登录,说明oracle 10g的监听自动开启了。


第四章Oracle 10创建用户和授权

4.1linuxoracle的启动

以oracle身份登录

4.1.1启动监听

[oracle@hakim~]$ lsnrctl  start            


4.1.2登录SQL

[oracle@hakim~]$sqlplus /nolog        


4.1.3连接数据库

SQL>connect  /as  sysdba


4.1.4启动数据库

SQL>startup


4.2在数据中创建用户名

4.2.1连接超级用户

SQL>connectsystem/hkgqdb         //system 系统用户名字;  hkgqdb密码

4.2.2创建用户名字

SQL> create user hk01 identified by hkgqdb // 用户名:hk01 ;密码 : hkgqdb

4.2.3添加用户的权限

SQL>Grantcreate session to hk01; // 授予 hk01 连接数据的权限,分号“;”表示结束语句

系统权限如下:

系统特权

允许执行的操作

Create  session

连接数据库

Create  sequence

创建序列

Create  synonym

创建同名对象

Create  table

创建表

Create  any  table

创建任何模式的表

Create  procedure

创建存储过程

Create  user

创建用户

Create  view

创建视图

Drop  table

删除表

Drop  user

删除用户

Drop  any  table

删除任何模式的表

Execute  any  procedure

执行任何模式的存储过程


4.2.4向用户授予系统特权

SQL>Grant execute any procedure to hk01 with admin option

此句意思为hk01用户创建系统特权并且可以用hk01为别的用户授予权限

连接hk01用户

SQL>connecthk01/hkgqdb

4.2.5查看用户权限

进入 hk01 用户

SQL>connecthk01/ hkgqdb

查看到一个列表

Select * from user_sys_privs;    

4.2.6撤销用户授予的权限

连接hk01用户

SQL>connecthk01/hkgqdb

撤销权限

SQL>Revokeexecute any procedure from hk01

4.2.7更改用户密码

连接hk01用户

SQL>connecthk01/hkgqdb

更改用户密码

SQL>Password          //输入旧密码输入新密码俩边    OK

4.2.8删除用户

连接hk01用户

SQL>connecthk01/hkgqdb

删除用户

SQL>Dropuser hk01

4.2.9为用户授予角色

SQL>Grantdba to hk01;

SQL>Grantconnect to hk01


你可能感兴趣的:(服务器,oracle10g,red,hat,Linux5.3)