欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

CentOS 5.5命令行安装Oracle 10G

程序员文章站 2024-02-13 22:38:58
...

rpm -qa binutils compat-db control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make libaio libXp 2.

基本都是用Oracle身份执行命令

1. 验证 Oracle 所需要的系统依赖程序包是否完整。

rpm -qa binutils compat-db control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make libaio libXp

2. 验证系统要求

Oracle 所需最小 RAM 为 512MB ,而所需最小交换空间为 1GB 。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。 Oracle 10g 软件还需要 2.5GB 的可用磁盘空间,而数据库则另需 1.2GB 的可用磁盘空间。 /tmp 目录至少需要 400MB 的可用空间。

3. 创建 Oracle 用户组和用户

创建用户组 oinstall 和 dba 。

创建用户 oracle ,同属于 oinstall 和 dba 用户组,并且建立了 oracle 的 home 目录。

修改 oracle 用户的登录密码。

$su - root

#groupadd dba // 数据库系统管理理组

#groupadd oinstall //Oracle 文件所有者的组

#useradd -g oinstall -G dba -m -s /bin/bash oracle

#passwd oracle

#chown -R oracle.oinstall /home/oracle

4. 配置内核参数

#vi /etc/sysctl.conf

编辑文件 /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# 应用程序可使用的 IPv4 端口范围。

net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值

net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值

net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值

net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值

5. 解压缩安装文件

unzip 10201_database_linux32.zip

6. 修改 gennttab

解压缩 filegroup6.jar 。

cd database/stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles/

unzip filegroup6.jar bin/gennttab

修改解压出来的 gennttab 文件。

vi bin/gennttab

改为:

即把 `s/ /\\` 中的后面的” \ ”改为” n ”,同时要注意把 n 后的空格删除,否则在安装监听器时会报错。

将 gennttab 添加到 filegroup6.jar 中。

zip -vu filegroup6.jar bin/gennttab

7. Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制。

要进行这些更改,以 root 用户的身份执行下列命令:

vi /etc/security/limits.conf

添加如下内容:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

8. 设置环境变量

以 oracle 用户登录。

vi ~/.bash_profile

添加如下内容:

export TMP=/tmp

export TMPDIR=/tmp

export ORACLE_BASE=/home/oracle

export ORACLE_SID=ora10g

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0.1/db_1

export PATH=$PATH:$ORACLE_HOME/bin

9. 修改 enterprise.rsp 文件,在 oracle 安装目录下可以找到 /database/response/enterprise.rsp

ORACLE_HOME="/home/oracle/product/10.2.0.1/db_1"

ORACLE_HOME_NAME="Oracle10g"

s_nameForDBAGrp="dba"

s_nameForOPERGrp="dba"

n_configurationOption=3

说明:

ORACLE_HOME Oracle 服务器的主目录位置,必须是绝对路径。

ORACLE_HOME_NAME Oracle 服务器的名称,必须以字母开头。

s_nameForDBAGrp 用于 Oracle 系统管理的 linux 用户组名,该组的用户拥有管理 Oracle 服务器的权限。

s_nameForOPERGrp 用于 Oracle 数据库常规操作的 linux 用户组名,该组的用户拥有常规操作 Oracle 数据库的权限。

n_configurationOption 安装类型( 1 为在安装后创建数据库, 2 为安装后创建一个自动存储管理实例, 3 为只安装服务器软件)。

10. 修改操作系统发行版本

由于 oracle 还没有推出支持 CentOS 的安装包,所以需要修改发行版本,以便通过 oracle 的安装检查,发行版本文件的位置为 /etc/RedHat-release

将 CentOS release 5 (Final)

修改成

Red Hat Enterprise Linux AS release 3 (Taroon)

安装完成后再改回来。

11. 关闭 SELINUX 工作模式

SELINUX 属性配置文件位置为 /etc/selinux/config

# 设置 SELINUX 为 disabled

SELINUX=disabled

12. 开始安装

./runInstaller -ignoreSysPrereqs -silent -responseFile /home/oracle/database/response/enterprise.rsp

说明 :

ignoreSysPrereqs 让 Oracle 忽略系统检查,因为 Oracle 官方声明只支持 Linux 服务器产品,所以要在非服务器产品的 Linux 上安装就必须指定此参数。

silent 让安装程序以静默模式运行。

responseFile 指定一个应答文件。

注意 : 如果 ORACLE_HOME 和 ORACLE_BASE 目录设在相同的位置 , 或者 ORACLE_HOME 所在目录不为空的话 , 会有如下错误 :

SEVERE:OUI-10029:You have specified a non-empty directory to install this product. It is recommended to specify either an empty or a non-existent directory. You may, however, choose to ignore this message if the directory contains Operating System generated files or subdirectories like lost+found.

如果仍然要以当前配置安装的话 , 请在安装时添加 -force 参数进行强制安装。

13.oracle 系统初始化

以 root 管理员运行 $ORACLE_HOME/root.sh 进行 Oracle 的系统初始化工作,,通常一路按回车用默认值即可。

14. 安装网络监听器

编辑 oracle 安装目录下的 netca.rsp 应答文件,地址为: /database/response/netca.rsp ,主要查看以下参数配置:

INSTALL_TYPE=""custom"" 安装的类型

LISTENER_NUMBER=1 监听器数量

LISTENER_NAMES={"LISTENER"} 监听器的名称列表

LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表

LISTENER_START=""LISTENER"" 监听器启动的名称

运行安装命令:

$ORACLE_HOME/bin/netca /silent /responseFile /home/oracle/database/response/netca.rsp

注意:在此处可能会有错误 oracle 需要的软件包不全。请根据 1 中列出的软件包,确保所有的软件包都已经正确安装( 2 ) 6 中对 gennttab 文件的修改不正确,本人就是没有去掉 n 后的空格导致了该错误。

15. 修改 dbstart

vi $ORACLE_HOME/bin/dbstart

ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle

改为:

ORACLE_HOME_LISTNER=$ORACLE_HOME

确保数据库启动时,网络监听器同时启动。

16. 安装数据库实例

编辑 Oracle 安装源文件夹 response 目录下的 dbca.rsp 应答文件:

vi /home/oracle/database/response/dbca.rsp

根据自己的需要修改下列参数:

GDBNAME = “ orcl10g ” # 数据库全局名称

SID = “ ora ” # 数据库的 SID

SYSPASSWORD = “ sys ” # SYS 用户的初始密码

SYSTEMPASSWORD = ” sys ” #SYSTEM 用户的初始密码

CHARACTERSET = “ ZHS16GBK ” # 数据库字符集(中文为 ZHS16GBK )

NATIONALCHARACTERSET = ” ZHS16GBK ” # 数据库国家字符集

运行安装命令:

$ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/database/response/dbca.rsp -cloneTemplate

数据库创建成功后需要修改一些信息:

vi /etc/oratab

ora10g:/opt/oracle/product/10.2.0.1/db_1:N

改为:

ora10g:/opt/oracle/product/10.2.0.1/db_1:Y

保证数据库实例能自动启动。

17. 启动数据库实例

$ORACLE_HOME/bin/dbstart

18. 测试

sqlplus "/as sysdba"

19. 配置 EM 资料库,数据库和监听都必须已经启动并正常工作

配置 dbcontrol

[oracle@oracle10 ~]$ emca -config dbcontrol db

STARTED EMCA at Oct 27, 2007 9:33:48 AM

EM Configuration Assistant, Version 10.2.0.1.0 Production

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Enter the following information:

Database SID: orcl

Database Control is already configured for the database orcl

You have chosen to configure Database Control for managing the database orcl

This will remove the existing configuration and the default settings and perform a fresh configuration

Do you wish to continue? [yes(Y)/no(N)]: Y

Listener port number: 1521

Password for SYS user:

Password for DBSNMP user:

Password for SYSMAN user:

Email address for notifications (optional):

Outgoing Mail (SMTP) server for notifications (optional):

-----------------------------------------------------------------

You have specified the following settings

Database ORACLE_HOME ................ /opt/oracle/product/10.2.0/Database

Database hostname ................ oracle10

Listener port number ................ 1521

Database SID ................ orcl

Email address for notifications ...............

Outgoing Mail (SMTP) server for notifications ...............

-----------------------------------------------------------------

Do you wish to continue? [yes(Y)/no(N)]: Y

Oct 27, 2007 9:35:12 AM oracle.sysman.emcp.EMConfig perform

INFO: This operation is being logged at /opt/oracle/product/10.2.0/Database/cfgtoollogs/emca/orcl/emca_2007-10-27_09-33-46-AM.log.

Oct 27, 2007 9:35:33 AM oracle.sysman.emcp.util.DBControlUtil stopOMS

INFO: Stopping Database Control (this may take a while) ...

Oct 27, 2007 9:36:39 AM oracle.sysman.emcp.ParamsManager getLocalListener

WARNING: Error retrieving listener for oracle10

Oct 27, 2007 9:36:54 AM oracle.sysman.emcp.util.DBControlUtil startOMS

INFO: Starting Database Control (this may take a while) ...

Oct 27, 2007 9:39:51 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration

INFO: Database Control started successfully

Oct 27, 2007 9:39:53 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration

INFO: >>>>>>>>>>> The Database Control URL is :5500/em

Enterprise Manager configuration completed successfully

FINISHED EMCA at Oct 27, 2007 9:39:53 AM

[oracle@oracle10 ~]$

删除数据库的 Database Control 配置

[oracle@oracle10 ~]$ emca -deconfig dbcontrol db

STARTED EMCA at Oct 27, 2007 10:44:24 AM

EM Configuration Assistant, Version 10.2.0.1.0 Production

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Enter the following information:

Database SID: orcl

Do you wish to continue? [yes(Y)/no(N)]: Y

Oct 27, 2007 10:44:47 AM oracle.sysman.emcp.EMConfig perform

INFO: This operation is being logged at /opt/oracle/product/10.2.0/Database/cfgtoollogs/emca/orcl/emca_2007-10-27_10-44-22-AM.log.

Oct 27, 2007 10:44:52 AM oracle.sysman.emcp.util.DBControlUtil stopOMS

INFO: Stopping Database Control (this may take a while) ...

Oct 27, 2007 10:48:13 AM oracle.sysman.emcp.EMReposConfig stopDBMSJobs

WARNING: Error initializing SQL connection. SQL operations cannot be performed

Oct 27, 2007 10:48:13 AM oracle.sysman.emcp.EMReposConfig invoke

WARNING: Unable to remove DBMS jobs.

Enterprise Manager configuration completed successfully

FINISHED EMCA at Oct 27, 2007 10:51:01 AM

[oracle@oracle10 ~]$

20.uninstall oracle if you want:

./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={$ORACLE_HOME}" -responseFile ~oracle/database/response/enterprise.rsp

CentOS 5.5命令行安装Oracle 10G