>데이터 베이스 >MySQL 튜토리얼 >Oracle安装(1)静默方式创建Oracle数据库

Oracle安装(1)静默方式创建Oracle数据库

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 15:30:341258검색

我前面弄了个通过SHELL脚本快速安装Oracle11gR2软件用来快速安装Oracle软件,然后在通过本篇的方式来以静默方式创建Oracle数据库, 能更方便的创建数据库,特别是在不方便使用图形界面安装时更有用。不过也有不好的地方,就是11g静默创建时没有进度提示。 环

我前面弄了个>用来快速安装Oracle软件,然后在通过本篇的方式来以静默方式创建Oracle数据库,

能更方便的创建数据库,特别是在不方便使用图形界面安装时更有用。不过也有不好的地方,就是11g静默创建时没有进度提示。

环境: Oracle 11gR2 for Linux 

一。 进入Oracle用户,运行脚本

#! /bin/sh
############################
#
#author:xiongchuanliang
#create date:2012-12-25
#desc: 
############################

 mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/{adump,bdump,cdump,dpdump,udump,pfile}
 mkdir -p $ORACLE_BASE/oradata/$ORACLE_SID
 mkdir -p $ORACLE_BASE/flash_recovery_area/$ORACLE_SID

 #pwd file
 cd $ORACLE_HOME/dbs
 orapwd file=orapwxcldb password=xcldb entries=5 force=y

脚本说明:

目录用途:
 bdump : background_dump_dest参数指定
   用于存放Oracle警告日志和DBWR,LGWR等后台进程的跟踪文件。
 adump : audit_file_dest参数指定
   存放Oracle进程的审计信息,默认写在$ORACLE_HOME/rdbms/audit下。
  当其目录空间不足时,会报ORA-09817:Write to audit file failed.
 udump : user_dump_dest参数指定
  存放用户进程跟踪文件。当用户进程被异常中断时,就会生成在这个目录下。
 cdump : core_dump_dest参数指定
  保存Oracle进程异常中断时的内存状态

密码文件
 orapwd命令用于创建密码文件,所在目录不同平台是不同的。
  Linux:   cd $ORACLE_HOME/dbs
  Windows: cd $ORACLE_HOME/database
   
参数说明:  
    file格式 orapwORACLE_SID
    password sys用户的密码
    entries 最多允许sysdba/sysoper用户的数量,默认1.  

二。创建Oracle参数文件init.ora

initxcldb.ora  内容:

log_archive_format=%t_%s_%r.dbf
db_block_size=8192
open_cursors=300
db_domain=""
db_name=xcldb
control_files=("/u01/app/oracle/oradata/xcldb/control01.ctl", "/u01/app/oracle/flash_recovery_area/xcldb/control02.ctl")
db_recovery_file_dest=/u01/app/oracle/flash_recovery_area
db_recovery_file_dest_size=5218762752
compatible=11.2.0.0.0
diagnostic_dest=/u01/app/oracle
memory_target=839909376
processes=150
audit_file_dest=/u01/app/oracle/admin/xcldb/adump
audit_trail=db
remote_login_passwordfile=EXCLUSIVE
dispatchers="(PROTOCOL=TCP) (SERVICE=xcldbXDB)"
undo_tablespace=UNDOTBS1


 三。生成数据库

       如果是Windows下,在生成数据库之前,要先用oradim创建服务。
            oradim –NEW –SID xcldb -STARTMODE a

      非Windows平台则不需要。

     生成数据库的SQL按以下步骤执行即可生成:

        1. sqlplus / as sysdba

        2. startup nomount

        3. @/home/oracle/xcldb.sql

           xcldb.sql 文件内容如下:

CREATE DATABASE "xcldb"
USER SYS IDENTIFIED BY "xcldb"
USER SYSTEM IDENTIFIED BY "xcldb"
 MAXINSTANCES 8
 MAXLOGHISTORY 1
 MAXLOGFILES 16
 MAXLOGMEMBERS 3
 MAXDATAFILES 100
DATAFILE '/u01/app/oracle/oradata/xcldb/system01.dbf'
 SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/app/oracle/oradata/xcldb/sysaux01.dbf'
 SIZE 600M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP
 TEMPFILE '/u01/app/oracle/oradata/xcldb/temp01.dbf'
 SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
SMALLFILE UNDO TABLESPACE "UNDOTBS1"
 DATAFILE '/u01/app/oracle/oradata/xcldb/undotbs01.dbf'
 SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
 LOGFILE GROUP 1 ('/u01/app/oracle/oradata/xcldb/redo01.log') SIZE 51200K,
   GROUP 2 ('/u01/app/oracle/oradata/xcldb/redo02.log') SIZE 51200K,
   GROUP 3 ('/u01/app/oracle/oradata/xcldb/redo03.log') SIZE 51200K
;
注意: 如果中间有错误,第二次执行sql时,会报控制文件已存在,将其删除再执行即可

SQL> !rm -f /u01/app/oracle/oradata/xcldb/*
SQL> !rm -f /u01/app/oracle/flash_recovery_area/xcldb/*


四。创建数据字典和PL/SQL包

sqlplus -S / as sysdba 

<p> 执行完后,可用下面sql检查数据库组件的有效性状态.<br>
     <strong>SELECT comp_id,comp_name,version,status FROM dba_registry;</strong><br>
</p>
<p>脚本中各sql脚本的作用说明:<br>
  catalog.sql : 创建数据字典<br>
  catproc.sql : 创建与PL/SQL相关的脚本<br>
  utlrp.sql      : 编译无效包<br>
  pupbld.sql : 创建SQLPLUS_PRODUCT_PROFILE表,并在表上建立相关的视图和同义词.这个表的作用是限制业务用户执行相关命令.<br>
                         如果不执行这个,用普通用户登录时,可能会出现User Profile information not loaded错误<br>
</p>
<p><br>
</p>
<p>五。 配置监听服务,这个就不说了,netca,或直接改tnsnames.ora ,listener.ora 文件都可。<br>
</p>
<p>六。设置归档模式,调整闪回区参数。</p>
<p><br>
</p>
<p>MAIL:  xcl_168@aliyun.com</p>
<p>BLOG: http://blog.csdn.net/xcl168</p>
<p><br>
</p>
<p>     </p>
<p><br>
</p>
<p><br>
</p>


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.