码迷,mamicode.com
首页 > 数据库 > 详细

Oracle数据库(甲骨文)

时间:2015-05-27 15:33:01      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:

Oracle数据库(甲骨文)

所属篇章:第二学年——Linux安全高级应用——第3章:部署Oracle数据库
 
大纲
         1. 安装Oracle 11g数据库
                1.1 前置条件的准备
                1.2 Oracle 11g 安装过程
         2. Oracle 11g的基本管理
                2.1 启动、停止oracle数据库
                2.2 数据库的逻辑备份
 
此次实验环境使用:Red Hat Enterprise Linux Server release 6.1 32位
 
系统配置的一般要求:
物理内存,不少于2GB
交换分区,为物理内存的1.5~2倍(4G以上)
磁盘空间,不少于8GB
拥有固定的主机名或域名,安装后不建议再更改
存放Oracle数据库的/opt/oracle/目录也要足够大
 
简介
在计算机信息安全领域中,数据库系统无疑有着举足轻重的地位,例如微软的SQLServer、IBM公司的DB2,以及甲骨文公司的Oracle、MySQL等,都是比较知名的数据库管理软件,其中Oracle数据库更是在电信、银行、证券、交通等大型应用场合拥有着绝对领先的优势。
 
1. 安装Oracle 11g数据库
Oracle的中文官方网址为http://www.oracle.com/cn/,它提供Oracle  11g安装文件的免费下载(需注册账号)。正确选择所使用的系统平台(如Linux x86)然后分别下载1of2、2of2这两个zip压缩包,解压后可获得database文件夹,Oracle的安装脚本、产品手册等文档都位于此文件夹中。
[root@sky home]# unzip linux_11gR2_database_1of2.zip
[root@sky home]# unzip linux_11gR2_database_2of2.zip 
[root@sky home]# ls database/
doc  install  response  rpm  runInstaller  sshsetup  stage  welcome.html
[root@sky home]# rm linux_11gR2_database_1of2.zip
[root@sky home]# rm linux_11gR2_database_2of2.zip
Oracle 11g的安装主要通过runlnstaller脚本进行,访问网页welcome.html可以查阅产品手册,其中包括产品说明、发行注记、安装指南等文档,为管理员提供了极为丰富的帮助信息。
 
1.1 前置条件的准备
oracle数据库是一个相对庞大的应用软件,对服务器的系统类型、内存和交换分区、硬盘空间,内核参数、软件环境、用户环境等都有着相应的要求。只有满足了这些必备的条件,才能够确保Oracle11g安装成功、运行稳定。
 
1.系统及配置要求
oracle11g明确支持的Linux系统包括Asianux2.0/3.0Oracle Enterprise Linux4.0/5.0Red Hat Enterprise 4.0/5.0SUSE Linux Enterprise Server 10.0/11.0。在其他Linux系统中安装时,个别软件或配置文件可能需要做适当调整。
[root@sky ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.1 (Santiago)
 
物理内存应不少于1GB,对于VMware虚拟机建议不少于1200MB。对于系统中的交换分区设置,应参考以下约定:物理内存为1GB~2GB时,交换分区为物理内存的1.5~2倍;物理内存为2GB~16GB时,交换分区与物理内存大小相同;物理内存超过16GB时,交换分区使用16GB就可以了。
[root@sky ~]# grep MemTotal /proc/meminfo
MemTotal:        1004608 kB
[root@sky ~]# grep SwapTotal /proc/meminfo
SwapTotal:       2031608 kB
 
对于32位的Oracle 11g数据库,若程序文件和数据库文件安装在同一个分区,则该分区的硬盘空间要求分别为:企业被5.65GB,标准版5.38GB;除此以外,还应该确保/tmp目录所在的分区空间不少于1GB。总的来说,建议Oracle 11g准备至少8GB的硬盘空间。
[root@sky ~]# df -hT /tmp
文件系统                           类型      容量      已用      可用      已用%     挂载点
/dev/mapper/vg_sky-lv_root         ext4      18G     8.4G      8.1G      51%          /
服务器的主机名,IP地址也应该提前确认无误,一旦Oracle数据库安装完毕,建议不要再修改主机名,否则会导致数据库启动失败。
[root@sky ~]# hostname
sky
[root@sky ~]# cat /etc/hosts
127.0.0.1    localhost localhost.localdomain
192.168.1.10  sky
 
2.软件环境要求
Oracle11g的安装过程通常在图形桌西中进行,因此建议使用已安装有GNOME中文桌面环境的RHEL6服务器。软件开发工具当然也是必不可少的,如gec,gllbc、binutlls等软件包(详见doc/中的安装指南),建议使用yum工具来安装必要的软件环境。
[root@sky home]# vim /etc/resolv.conf
nameserver 114.114.114.114
[root@sky home]# yum -y install binutils compat-libstdc++-33 compat-libstdc++ elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc glibc-common glibc-devel glibc-devel glibc-headers ksh libaio libaio libaio-devel libaio-devel libgcc libgcc libstdc++ libstdc++ libstdc++- devel make sysstat unixODBC unixODBC unixODBC-devel unixODBC-devel
 
经实际安装测试,当在RHEL-6系统中安装oracle11g时,对ksh软件包的识别会存在兼容性冲突。只要卸载RHEL6中的ksh软件包,改用RHEL5光盘中的pdksh软件包,就可以避免这个问题。
[root@sky ~]# rpm -e ksh
[root@sky ~]# mount /dev/cdrom /mnt      <==插入CentOS5.0的光盘并挂载
[root@sky ~]# rpm -ivh /mnt/CentOS/pdksh-5.2.14-36.el5.i386.rpm
Oracle11g自身集成了Java运行环境,但安装界面中对中文的支持并不完善。因此若希望使用中文的oracle安装界面,建议提前安装好java-1.6.0软件包,并对中文字体配置进行少许调整;否则可以跳过此处的Java安装及配置操作。
[root@sky ~]# yum -y install java-1.6.0
[root@sky ~]# cd /usr/lib/jvm/jre-1.6.0/lib/
[root@sky lib]# mv fontconfig.bfc fontconfig.bfc.bak          <==备份默认字体
[root@sky lib]# cp fontconfig.RedHat.6.bfc fontconfig.bfc     <==建立RHEL6的字体配置
 
.用户环境要求
Oracle 11g需要固定的运行用户oracle,安装组oinstall,管理组dba,这些账号应提前建立好。用来存放Oracle程序及数据库文件的基本目录(如/opt/oracle)也应该提前创建好。
[root@sky ~]# groupadd oinstall
[root@sky ~]# groupadd dba
[root@sky ~]# useradd -g oinstall -G dba oracle
[root@sky ~]# passwd oracle
[root@sky ~]# mkdir /opt/oracle
[root@sky ~]# chown -R oracle:oinstall /opt/oracle/
[root@sky ~]# chmod -R 755 /opt/oracle/
oracle11g的安装任务应以运运行用户oracle的身份执行,需适当调整oracle用户的环境配置以便满足要求。oracle11g安装界面的语言类型取决于环境变量LANG,若希望用中文安装界面,则应确保LANG变量的值为“zh_CN.UTF-8”。中文安装界面有时会因缺少字体,字体配置不当等原因导致界面乱码,也可改用“en_US.UTF-8”,英文环境以回避类似问题。
[root@sky ~]# vim /home/oracle/.bash_profile 
......  //省略部分信息
#最后面插入下面几行
umask 022                                  <==文件权限掩码
export ORACLE_BASE=/opt/oracle             <==定义基本目录
export ORACLE_SID=orcl                     <==定义数据库实例名称
export DISPLAY=:0.0                        <==告知默认的显示终端号
export LANG=zh_CN.UTF-8                    <==确定使用何种语言环境
如果当前的图形桌面环境是以其他用户(如root)登录的,则还应添加授权以允许用户oracle使用图形终端,例如执行“xhost +oracle@localhost”表示允许用户oracle从本机访问、执行,“xhost +”表示取消所有限制。
[root@sky ~]# xhost +        <==此操作需要在图形环境中执行
access control disabled, clients can connect from any host
 
4.内核及会话要求
       为了确保数据库运行稳定,Oracle11g针对Linux内核参数,进程会话限制提出了一些要求,其中一部分设置可以在安装过程中自动检测并修复,但并不一定很完整,所以最好的做法还是根据安装文档提前进行配置。
       内核参数调整体现在/etc/sysctl.conf文件中,主要包括对内存调度,端口范围,打开文件数、I/O请求等相关的一些设置,相关数值不可低于安装要求。修改完毕后通过执行“sysctl -p”命令使新配置立即生效。
[root@sky ~]# vim /etc/sysctl.conf 
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152          <==此行默认已有,确认大于此数值即可
kernel.shmmax = 536870912        <==此行默认已有,确认大于此数值即可
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
[root@sky ~]# sysctl -p
进程会话限制可以采用pam_limits认证模块来实现,通过修改登录程序login的PAM设置以启用该认证,然后修改/etc/security/limits.conf文件,将用户oracle能够打开的进程数,进程使用的文件数加大。
[root@sky ~]# vim /etc/pam.d/login 
......  //省略部分信息
session    required     pam_limits.so
[root@sky ~]# vim /etc/security/limits.conf 
oracle           soft       nproc     8192           <==进程数软限制
oracle           hard       nproc     16384          <==进程数硬限制
oracle           soft       nofile    32768          <==文件数软限制
oracle           hard       nofile    65536          <==文件数硬限制
 
1.2 Oracle 11g 安装过程
所有前置条件都准备好以后,就可以正式开始安装了。以用户oracle登录到RHEL6的图形桌面环境,启动database/目录下的runlnstaller脚本文件,若要使用RHEL6的中文java支持,注意应添加-jreLoc选项来指定JRE(Java Runtime Environment,Java运行环境)的安装位置。
技术分享
[oracle@sky ~]cd /home/database/
[oracle@sky database]$ ./runInstaller -jreLoc /usr/lib/jvm/jre-1.6.0
正在启动 Oracle Universal Installer...
  
检查临时空间: 必须大于 120 MB。   实际为 7722 MB    通过
检查交换空间: 必须大于 150 MB。   实际为 1983 MB    通过
检查监视器: 监视器配置至少必须显示 256 种颜色。    实际为 16777216    通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2015-04-27_09-17-28PM. 请稍候...
针对/tmp目录,交换分区,显示器的基本检测通过以后,将会打开图形化的Oracle安装程序,如图所示,下面将依次讲解oracle11g的主要安装步骤。
技术分享
 
1. 典型安装过程
 
1)配置安全更新
如果已购买oracle11g数据库的授权,且服务器能够连接internet,建议正确填写电子邮件地址和Oracle Support口令,以便及时接收官方的安全更新通知。实验过程中建议将电子邮件地址留空并取消对”我希望通过MyOracle......”复选框的选择。
2)安装选项
全新安装建议选择”创建和配置数据库“或者”仅安装数据库软件“,后者将不会创建并配置数据库实例。只有在对旧版本的Oracle数据库进行升级时,才选择”升级现有的数据库“。
3)系统类
选择”服务器类”进行安装,以便适用于企业环境的数据库系统。“桌面类”一般只建议个人用户使用,包含的配置和功能比较少。
4)网格达项
选择”单实例数据库安装“,大多数应用场合中Oracle数据库的用途比较单一,每台Oracle服务器只需要一个实例就可以了。
5)安装类型
选择“典型安装",采用Oracle11g的基本配置进行完全安装,若要为各种管理帐号分别设置口令,或者选择语言版本,设置自动备份,存储管理等则应该选择”高级安装“。
6)典型安装配置
在“典型安装”步骤中,可以指定Oracle11g的基本目录,软件安装目录,数据库存放目录,并选择要安装的数据库版本(企业版,标准版),指定全局数据库名称,设置管理口令,如图所示:
技术分享
必须设置管理口令(大写字母、小写字母、数字),其他参数可采用默认值。Oracle11g数据库自动建有三个用户——超级管理员sys,system和数据库所有者sysman,当选择“高级安装”时可以为三个用户分别设置口令,否则将使用同一个管理口令。
7)创建产品清单
将清单目录修改为”/opt/oracle/oralnventory",以便oracle用户有权限写入Oracle数据库的清单信息。
技术分享
8)先决条件检查及概要
针对各种前置条件进行检查,发现有未满足的条件后会给出提示,应根据检查结果进行修复或者安装必需的软件包。如果所有条件都己满足,则会看到本次安装的概要信息,如图所示,确认无误后单击“完成”技钮即完成设置,然后开始复制文件及部署数据库的安装过程。
如果提示“没有足够的总交换空间”,可以手动新增swap交换空间
#在opt目录下新建swap交换文件,并设置其大小为4G(目录可以任选)
[root@sky ~]# cd /opt/
[root@sky opt]# touch swap
[root@sky opt]# dd if=/dev/zero of=swap bs=1024 count=4096000
记录了4096000+0 的读入
记录了4096000+0 的写出
4194304000字节(4.2 GB)已复制,25.1966 秒,166 MB/秒
 
#设置文件为交换空间,使用命令mkswap
[root@sky opt]# mkswap /opt/swap
mkswap: /opt/swap: warning: don‘t erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 4095996 KiB
no label, UUID=9760460a-22ac-4a1e-9ea0-e5ea51d83569
 
#启用新增的4G交换空间,并使用free -m 查看是否已经生效
[root@sky opt]# free -m
             total       used       free     shared    buffers     cached
Mem:          2005       1931         73          0         12       1441
-/+ buffers/cache:        477       1527
Swap:         1983          0       1983
[root@sky opt]# swapon /opt/swap
[root@sky opt]# free -m
             total       used       free     shared    buffers     cached
Mem:          2005       1934         70          0         12       1441
-/+ buffers/cache:        480       1524
Swap:         5983          0       5983
 
技术分享
在此步骤中,还可以单击“保存响应文件”按钮将本次安装设置保存下来,例如可保存为/home/oracle/db.rsp文件。rsp文件是Oracle数据库的应答响应文件,可用来免除安装过程中的手动交互环节,便于oracle的重复部署或者在文本界面中安装。
技术分享
出现乱码界面,点击最后面一个安装
9)完成安装
文件复制及相关部署结束以后,会弹出“执行配置脚本”对话框,如图所示,根据提示切换为root用户并依次执行/opt/oracle/oralnventory/orainstRoot.sh,/opt/oracle/product/11.2.0/dbhome_1/root.sh脚本。
技术分享
 
最后单击“确定”按钮,会提示访问https://你的主机名:1158/em/,表示使用此URL地址可以访问OEM(Oracle Enterprise Manager,Oracle企业管理器)平台,以便对Oracle11g的数据库实例进行管理。
 
2.验证安装结果
使用浏览器访问0EM管理平台,以用户名sys,连接身份“SYSDBA”进行登录,密码为安装时指定的管理口令。登录成功后可以看到0EM管理控制台,如图所示:
技术分享
 
 
2. Oracle 11g的基本管理
关于Oracle11g数据库的SOL优化、数据整理等技术将不在本章讨论,但从数据库安全及运维的角度来看,对oracle服务的控制、数据库的基本备份操作却是Linux管理员必须掌握的。
 
2.1 启动、停止oracle数据库
完成oracle11g数据库的安装以后,相关服务器组件会自动启用,但并不表示下次开机后Oracle服务器仍然可用。下面将介绍Oracle的基本服务组件,以及如何编写服务脚本来控制Oracle数据库系统的自动运行。
 
1.Oracle的服务组件
根据上面的安装过程,oracle11g的数据库软件将安装在变量ORACLE_HOME所指定的位置,例如/opt/oracle/product/11.2.0/dbhome_1/,而各种服务器组件程序(也包括sqlplus命令)正是位于其中的bin/子目录下。
oracle 11g数据库的基本服务组件如下所述:
?   lsnrctl:监听器程序,用来提供数据库访问,默认监听TCP1521端口
?   dbstart、dushut:数据库控制程序,用来启动、停止数据库实例。
?   emctl:管理器控制工具,用来控制0EM平台的开启与关闭,OEM平台通过1158端口提供HTTPS访问5520端口提供TCP访问
为了方便执行oracle11g的服务组件程序,建议对所有用户的环境配置作进一步的优化调整,补充PATH路径,Oracle终端类型等变量设置。除此以外,还应修改/etc/oratab配置文件以便运行dbstart时自动启用数据库实例。
[root@rhel bin]# vim /etc/profile
#在配置文件最下面插入以下几行
......  //省略部分信息
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_OWNER=oracle
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin
[root@rhel bin]# vim /etc/oratab 
orcl:/opt/oracle/product/11.2.0/dbhome_1:Y       <== 将末尾的N改为Y
 
使用sqlplus命令可以在命令行界面中访问Oracle11g数据库,其用途类似于MySQL的客户端程序mysql。例如,以下操作将以超级管理员sys、SYSDBA的身份连接到本机的Oracle11g数据库,根据提示需验证管理口令(也可改用“户名/密码”的形式直接写在命令行中)。
[root@rhel ~]# cd /opt/oracle/product/11.2.0/dbhome_1/bin/
[root@rhel bin]# source /etc/profile
[root@rhel bin]# ./sqlplus sys AS SYSDBA
  
SQL*Plus: Release 11.2.0.1.0 Production on Wed Apr 29 16:32:57 2015
  
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
  
Enter password:            <==输入管理密码
  
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
  
SQL> 
 
进入到SQL>环境以后,可以执行各种SQL操作语句来对oracle数据库进行管理。例如,执行“HELP INDEX”语句可以查看SQL Plus所支持的指令列表,执行"SHOW USER"可以查看当前登录的用户名称。
SQL> HELP INDEX;            <==查看支持的指令列表
  
Enter Help [topic] for help.
  
 @                COPY            PAUSE                       SHUTDOWN
 @@               DEFINE          PRINT                       SPOOL
 /                DEL             PROMPT                      SQLPLUS
 ACCEPT           DESCRIBE        QUIT                        START
 APPEND           DISCONNECT      RECOVER                     STARTUP
 ARCHIVE LOG      EDIT            REMARK                      STORE
 ATTRIBUTE        EXECUTE         REPFOOTER                   TIMING
 BREAK            EXIT            REPHEADER                   TTITLE
 BTITLE           GET             RESERVED WORDS (SQL)        UNDEFINE
 CHANGE           HELP            RESERVED WORDS (PL/SQL)     VARIABLE
 CLEAR            HOST            RUN                         WHENEVER OSERROR
 COLUMN           INPUT           SAVE                        WHENEVER SQLERROR
 COMPUTE          LIST            SET                         XQUERY
 CONNECT          PASSWORD        SHOW
  
SQL> SHOW USER;
USER is "SYS"
这样一来,用户oracle就可以直接使用上述组件了。例如执行“lsnrctl status”命令可以查看Oracle监听器的状态,执行“emctl stop dbconsole"命令可以关闭OEM管理控制台,执行"dbshut"命令可以停止数据库实例。
 
2.添加oracle服务
虽然通过各种服务组件程序能够启动、停止整个Oracle11g数据库系统,但显然还不够方便。在RHEL6服务器中,更好的做法是将相关操作编写为服务脚本,交给chkconfig工具来管理,从而实现随系统开、关机自动启动、停止oracle数据库。
[root@rhel bin]# vim /etc/init.d/oracle     <==默认不存在,需要手动创建
#!/bin/bash
####2015.4.29 by TsengYia. ####
# chkconfig: 35 90 10
# description: Oracle Database Service Dameon.
ORCL_BASE="/opt/oracle"
ORACLE_HOME=$ORCL_BASE/product/11.2.0/dbhome_1
ORACLE_OWNER=oracle
case "$1" in
  start)
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
    touch /var/lock/subsys/oracle11g
    ;;
  stop)
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop"
    rm -rf /var/lock/subsys/oracle11g
    ;;
  status)
    if( pgrep "tnslsnr" && netstat -anpt | grep ":1521" ) &> /dev/null
    then
      echo "Oracle 11g Net Listener is running."
    else
      echo "Oracle 11g Net Listener is not running."
    fi
    if ( netstat -anpt | grep ":1158" && netstat -anpt | grep ":5520" ) &> /dev/null
    then
      echo "Oracle 11g Enterprise Manager is running."
    else
      echo "Oracle 11g Enterprise Manager is not running."
    fi
    ;;
  restart)
    $0 stop
    $0 start
    ;;
  *)
    echo "Usage: $0 {start|stop|restart|status}"
    exit 1
    ;;
esac
exit 0
[root@rhel bin]# chmod +x /etc/init.d/oracle
[root@rhel bin]# chkconfig --add oracle
 
在oracle脚本文件中,数据库的启动、停止操作均通过“su - oracle -c 命令行"的形式来执行,这是为了获得oracle用户的登录环境,且因为由root切换为普通用户无需验证密码,从而省去了交互式登录的过程,便于脚本的后台执行。
添加好oracle服务以后,就可以通过脚本的start、stop、status、restart参数来控制oracle数据库的启动、停止、查看状态、重启了。
[root@rhel bin]# service oracle status       <==查看Oracle服务状态
Oracle 11g Net Listener is not running.
Oracle 11g Enterprise Manager is not running.
[root@rhel bin]# service oracle status       <==重启Oracle服务
......  //启动过程太长,在此省略
[root@rhel bin]# service oracle status
Oracle 11g Net Listener is running.
Oracle 11g Enterprise Manager is running.

2.2 数据库的逻辑备份
Oracle 11g提供了两个命令工具expdp、impdp,前者用来对数据库进行逻辑备份,后者用来执行恢复操作。导出、导入操作可以在不同的Oracle 11g服务器中执行,从而便于实现数据的迁移。
 
1,配置备份目录
在使用expdp备份工具之前,需要预先创建备份目录,定义给Oracle11g数据库进行维护,并为指定的用户赋予读写权限,例如,以下操作可以将/opt/mybackup作为expdp的备份目录,允许数据库用户sysman写入备份文件。
[root@rhel bin]# mkdir /opt/mydbbackup
[root@rhel bin]# chown oracle:oinstall /opt/mydbbackup/
[root@rhel bin]# sqlplus sys AS SYSDBA
Enter password:         <==输入管理密码
SQL>CREATE DIRECTORY dmpdir AS ‘/opt/mydbbackup‘;          <==指定备份目录位置
SQL>GRANT read,write ON DIRECTORY dmpdir TO sysman;        <==授权备份用户
 
2. 备份(导出)数据
执行备份操作时,需指定备份操作用户(如sysman),然后结合DIRECTORY参数指定Oracle管理的备份位置、结合DUMPFILE参数指定备份文件名称,例如,以下操作将把用户sysman所拥有的数据导出为orc120111014.dmp文件,保存到/opt/mydbbackup目录。
[root@rhel bin]#  expdp sysman DIRECTORY=dmpdir DUMPFILE=lisi-20111014.dmp      <==导出用户system的数据库
......  //备份过程省略 
[root@rhel bin]# expdp sysman DIRECTORY=dmpdir DUMPFILE=orcl-full-20111014.dmp  FULL=Y     <==导出整个数据库
......  //备份过程省略 
 
3. 恢复(导入)数据
执行恢复操作时同样需指定操作用户(如sysman),然后结合DIRECTORY参数指定Oracle管理的备份位置,结合DUMPFILE参数指定备份文件。例如,以下操作将备份文件orcl20111014.dmp中读取数据,导入到用户sysman所拥有的数据库中。
[root@rhel bin]# impdp stsman DIRECTORY=dmpdir DUMPFILE=lisi-20111014.dmp   REUSE_DATAFILES=Y TABLE_EXISTS_ACTION=REPLACE       <==恢复用户sysman的数据库
......  //恢复过程省略 
[root@rhel bin]# impdp system/123456 DIRECTORY=dmpdir DUMPFILE=orcl-full-20111014.dmp   REUSE_DATAFILES=Y TABLE_EXISTS_ACTION=REPLACE  FULL=Y      <==恢复整个数据库
......  //恢复过程省略 
 
其中,REUSE_DATAFILES=Y表示重用原有的数据文件,TABLE_EXISTS_ACTION=REPLACE表示覆盖已存在的表。
 





Oracle数据库(甲骨文)

标签:

原文地址:http://www.cnblogs.com/starryisky/p/4533474.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!