命令行下安装oracle10g

来源:互联网 发布:济南网络营销策划 编辑:程序博客网 时间:2024/05/02 00:54

安装redhat5时要独立分配磁盘给SWAP,空间大小应该是内存大小*2最好使用内存>1G的机器。

系统检查命令:

# grep MemTotal /proc/meminfo  ――检查内存大小

# grep SwapTotal /proc/meminfo ――检查交换分区大小swap

# df -k /tmp    ――要求/tmp 400MB

# grep "model name" /proc/cpuinfo     ――cpu检查

# cat /etc/issue  ――操作系统检查

# uname –r     ――系统内核检查

 

当前为root超级用户下进行操作:
1、由于orcale10不支持 redhat as5 需要修改/etc/redhat-release 将 Red

  Hat Enterprise Linux Server release 5 (Tikanga) 改为Red Hat Enterprise

 Linux Server release 4 (Tikanga) ,安装完成后再将其修改回来

 

2、修改/etc/hosts 文件将127.0.0.1改为本机IP地址 否则网络检查通不过

 

3、检查安装所需的软件包,如果提示依赖性错误,先按照提示内容安装所需软件包后继续

 

  所需内核版本:2.4.9-e.25(或更高版本)

通过运行以下命令检查内核版本:

uname -r

例如:
# uname -r
2.4.9-e.27smp

其他所需程序包的版本(或更高版本):

gcc-3.2.3-2
make-3.79
binutils-2.11
openmotif-2.2.2-16
setarch-1.3-1
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-db-4.0.14.5
要查看系统上安装了这些程序包的哪些版本,运行以下命令:

rpm -q gcc make binutils openmotif setarch compat-db compat-gcc /compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
例如:# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc />      openmotif compat-gcc-c++ compat-libstdc++ compat-libstdc++-develgcc-3.2.3-20make-3.79.1-17binutils-2.14.90.0.4-26openmotif-2.2.2-16setarch-1.3-1package compat-db is not installedcompat-gcc-7.3-2.96.122compat-gcc-c++-7.3-2.96.122compat-libstdc++-7.3-2.96.122compat-libstdc++-devel-7.3-2.96.122请注意,尚未安装 compat-db 程序包。安装过程中可用的任何程序包组均不包含此程序包,因此必须在单独的步骤中安装。如果系统上缺少任何其他程序包版本,或版本比以上指定的版本旧(compat-db 除外),则可以从 Red Hat Network 下载并安装更新。

rpm -Uvh compat-db-4*
rpm -Uvh libaio-0*
rpm -Uvh compat-libstdc++-33-3*
rpm -Uvh compat-gcc-34-3*
rpm -Uvh compat-gcc-34-c++-3*
rpm -Uvh libXp-1*
rpm -Uvh openmotif-2*
rpm -Uvh gcc-4*

4、修改 /etc/sysctl.conf 内核配置文件,增加/修改以下项目,如没有自己添加

kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。Half the size of physical memory (in bytes)
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 # 套接字发送缓冲区大小的最大值

运行下面的命令使得内核参数生效:

/sbin/sysctl –p

注:内核参数并非必须修改,可以根据自己实际情况而定。

5、增加下面的内容到文件 /etc/security/limits.conf 文件中:

oracle soft    nproc   2047
  oracle hard   nproc   16384
 oracle  soft    nofile  1024
  oracle hard   nofile  65536

6、增加下面的内容到文件 /etc/pam.d/login 中:

session required /lib/security/pam_limits.so
###session required pam_limits.so

     *

      For the Bourne, Bash, or Korn shell, add the following lines in the /etc/profile file (or the /etc/profile.local file on SUSE systems):

      if [ $USER = "oracle" ]; then
              if [ $SHELL = "/bin/ksh" ]; then
                    ulimit -p 16384
                    ulimit -n 65536
              else
                    ulimit -u 16384 -n 65536
              fi
      fi


    *

      For the C shell, add the following lines in the /etc/csh.login file (or the /etc/csh.login.local file on SUSE systems):

      if ( $USER == "oracle" ) then
              limit maxproc 16384
              limit descriptors 65536
      endif

 

7、因为SELINUX对oracle有影响,所以把secure linux设成无效,编辑文件 /etc/selinux/config :

SELINUX=disabled

当然你也可以用图形界面下的工具 (系统 > 管理 > 安全级别和防火墙). 选择SELinux页面并且设为无效.

 

8、新增组和用户:

groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba oracle
passwd oracle   自行设置密码

9、创建Oracle的安装目录,并把权限付给oracle用户:

例:

mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01

10、配置环境变量(/etc/profile或.bash_profile),增加一下内容

    # Oracle Settings

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin ; export PATH
修改后使用source /etc/profile或.bash_profile 命令使配置生效

11、设置安装语言设置

登陆oracle用户

    因为中文安装会有乱码所以设置用英文安装 export LC_ALL=en_US

12、开始安装

    进入oracle安装目录中,执行./runInstaller

    如果提示……/.oui权限不够,进入install目录,执行

chmod u+x .oui

chmod u+x unzip

===============================================
命令行安装模式:
静默模式(Silent)安装必须指定一个应答文件来完成安装过程所须的各类参数。
1、建立oraInst.loc文件
$ su - root
# ls /var/opt/oracle/oraInst.loc
/var/opt/oracle/oraInst.loc: No such file or directory
# mkdir -p /var/opt/oracle
# cd /var/opt/oracle
# vi oraInst.loc        (加入或修改以下内容,其中/opt/oracle/oracle10是ORACLE_BASE)
inventory_loc=/opt/oracle/oracle10/oraInventory
inst_group=oinstall
# chown oracle10:oinstall oraInst.loc
# chmod 664 oraInst.loc

在Oracle安装目录的response子目录里有enterprise.rsp有enterprise.rsp、standard.rsp和custom.rsp三个应答文件,分别对应企业版、标准版和定制的安装。
以enterprise.rsp为例,用任意的文本编辑器打它,修改以下这些项目的值。
UNIX_GROUP_NAME="oinstall";
ORACLE_HOME Oracle服务器的主目录位置,必须是绝对路径。
ORACLE_HOME_NAME Oracle服务器的名称,必须以字母开头。
INSTALL_TYPE="Enterprise Edition"
SHOW_INSTALL_PROGRESS_PAGE= true
SHOW_END_OF_INSTALL_MSGS= true
COMPONENT_LANGUAGES Oracle服务器支持的语言,默认只有英语,可以添加多个语言。
s_nameForDBAGrp 用于Oracle系统管理的linux用户组名,该组的用户拥有管理Oracle服务器的权限,在本例中设置为 oradba。
s_nameForOPERGrp 用于Oracle数据库常规操作的linux用户组名,该组的用户拥有常规操作Oracle数据库的权限,在本例中设置为 oracle。
n_configurationOption 安装类型(1为在安装后创建数据库,2为安装后创建一个自动存储管理实例,3为只安装服务器软件),在本例中选择3。
其它项目用默认值即可,也可以根据自己的须要进行修改。

现在万事具备,可以安装了。
用oracle用户登录,然后在Oracle安装目录里执行
./runInstaller -ignoreSysPrereqs -silent -responseFile <应答文件的绝对路径>
接下来就是等待安装结束了。
各安装参数的含义如下
ignoreSysPrereqs 让Oracle忽略系统检查,因为Oracle官方声明只支持Linux服务器产品,所以要在非服务器产品的Linux上安装就必须指定此参数。
silent 让安装程序以静默模式运行。
responseFile 指定一个应答文件。

 安装后要做的工作
3.1 Oracle系统初始化
用root用户登录,然后运行$ORACLE_HOME/root.sh进行Oracle的系统初始化工作,通常一路按回车用默认值即可。

3.2 安装网络监听器
没有网络监听器,客户端就无法通过网络连接Oralce服务器。要在命令行安装网络监听器,也只能使用静默模式。
编辑Oracle安装目录里response子目录下的应答文件 netca.rsp,修改以下项目。
INSTALL_TYPE=""custom"" 安装的类型
LISTENER_NUMBER=1 监听器数量
LISTENER_NAMES={"LISTENER"} 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" 监听器启动的名称
NAMING_METHODS={"TNSNAMES"}
然后运行
$ORACLE_HOME/bin/netca /silent /responseFile <应答文件的绝对路径>

3.3 修改dbstart
用任意的文本编辑器打开 $ORACLE_HOME/bin/dbstart,将
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
改为
ORACLE_HOME_LISTNER=$ORACLE_HOME
否则网络监听器可能无法自动启动。

3.4 安装数据库实例
编辑Oracle安装目录里response子目录下的应答文件 dbca.rsp,修改以下项目。
GDBNAME 数据库全局名称
SID 数据库的SID
SYSPASSWORD SYS用户的初始密码
SYSTEMPASSWORD SYSTEM用户的初始密码
CHARACTERSET 数据库字符集(中文为 ZHS16GBK)
NATIONALCHARACTERSET 数据库国家字符集


然后运行
$ORACLE_HOME/bin/dbca -silent -cloneTemplate -responseFile <应答文件的绝对路径>
数据库创建成功后须要注册一些信息,root用户运行
$ORACLE_BASE/oraInventory/orainstRoot.sh
然后编辑 /etc/oratab

<Oracle的SID>:<Oracle的主目录>:N
修改为
<Oracle的SID>:<Oracle的主目录>:Y
使数据库实例能够自动启动。

3.5 让Oracle运行为服务
创建文件 /etc/init.d/oracle,输入下列内容

#!/bin/sh
#
export ORACLE_HOME=<Oracle服务器主目录的绝对路径>
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export ORACLE=oracle

. /etc/init.d/functions

export PATH=${PATH}:$ORACLE_HOME/bin

start()
{
    daemon --user $ORACLE $ORACLE_HOME/bin/dbstart
    daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl start"
}

stop()
{
    daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl stop"
    daemon --user $ORACLE $ORACLE_HOME/bin/dbshut
}

case $1 in
'start')
    start
    RETVAL=$?
    ;;
'stop')
    stop
    RETVAL=$?
    ;;
'restart')
    stop
    start
    RETVAL=$?
    ;;
*)
    echo "usage: $0 {start|stop|restart}"
    exit
    ;;
esac
#
exit

 

然后将这个文件赋予可执行的权限,运行
chmod a+x /etc/init.d/oracle
让Oracle的服务在Linux启动时自动运行
ln -s /etc/init.d/oracle10g /etc/rc.d/rc3.d/S99oracle
ln -s /etc/init.d/oracle10g /etc/rc.d/rc5.d/S99oracle
这样就可以用service来启动和停止Oracle了。

$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={$ORACLE_HOME}" -responseFile <安装时使用的应答文件>

./runInstaller -silent -deinstall -invPtrLoc /product/oracle/oraInventory/oraInst.loc -responseFile /mntoracle/distrib/linux/database/response/MyEnterprise.rsp

原创粉丝点击