zoukankan      html  css  js  c++  java
  • 手动创建单实例数据库

    #!/bin/bash
    if [ `whoami` != oracle ];then
       echo 'please Use oracle user perform script'
       exit 1
    fi
    
    IP=$(ip addr | awk '/scope global/ {print $0}'| awk '{print $2}'| head -1|cut -d/ -f 1)
    
    read -p "please input your database Name:" dbname
    
    #---Create PasswordFile
    orapwd file=$ORACLE_HOME/dbs/orapw${dbname} password=oracle entries=30 force=y
    
    #---Create tnsnames.ora file
    cat>>$ORACLE_HOME/network/admin/tnsnames.ora<<EOF
    ${dbname}_NET =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = $IP)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = ${dbname})
          (SID=${dbname})
      )
      )
    EOF
    
    mkdir -p /opt/oracle/admin/${dbname}/adump
    mkdir -p /opt/oracle/oradata/${dbname}
    
    #---Create parameter file
    cat>$ORACLE_HOME/dbs/init${dbname}.ora<<eof
    db_domain=''
    db_name='${dbname}'
    db_recovery_file_dest='/opt/oracle/flash_recovery_area'
    db_recovery_file_dest_size=2G
    control_files='/opt/oracle/oradata/${dbname}/control01.ctl','/opt/oracle/oradata/${dbname}/control02.ctl','/opt/oracle/oradata/${dbname}/control03.ctl'
    db_block_size=8192
    memory_target=1G
    processes=300
    undo_management=auto
    undo_tablespace=undotbs
    compatible='11.2.0'
    dispatchers='(PROTOCOL=TCP)(SERVICE=${dbname}xdb)'
    audit_file_dest='/opt/oracle/admin/${dbname}/adump'
    audit_trail='db'
    remote_login_passwordfile=EXCLUSIVE
    open_cursors=300
    diagnostic_dest='/opt/oracle'
    job_queue_processes=10
    eof
    
    
    cat>/tmp/a.sql<<EOF
    create database ${dbname} 
    user sys identified by oracle 
    user system identified by oracle 
    MAXINSTANCES  8 
    MAXLOGFILES   16 
    MAXLOGMEMBERS 3 
    MAXDATAFILES  100 
    MAXLOGHISTORY 292 
    NOARCHIVELOG 
    CHARACTER SET AL32UTF8 
    NATIONAL CHARACTER SET AL16UTF16 
    SET DEFAULT SMALLFILE TABLESPACE 
    logfile  
      group 1 ('/opt/oracle/oradata/${dbname}/redolog1_01') size 20M,   
      group 2 ('/opt/oracle/oradata/${dbname}/redolog2_01') size 20M,   
      group 3 ('/opt/oracle/oradata/${dbname}/redolog3_01') size 20M   
    extent management local 
    datafile '/opt/oracle/oradata/${dbname}/system.dbf' size 200M autoextend on   
    sysaux datafile '/opt/oracle/oradata/${dbname}/sysaux.dbf' size 200M autoextend on 
    default temporary tablespace temp   tempfile '/opt/oracle/oradata/${dbname}/temp.dbf' size 200M autoextend on      
    undo tablespace undotbs   datafile '/opt/oracle/oradata/${dbname}/undotbs.dbf' size 200M autoextend on  
    default tablespace users   datafile '/opt/oracle/oradata/${dbname}/users.dbf' size 200M autoextend on; 
    EOF
    
    export ORACLE_SID=$dbname
    
    sqlplus /nolog <<eof
    conn / as sysdba;
    startup nomount;
    @/tmp/a.sql
    @$ORACLE_HOME/rdbms/admin/catalog.sql;
    @$ORACLE_HOME/rdbms/admin/catproc.sql;
    conn system/oracle;
    @$ORACLE_HOME/sqlplus/admin/pupbld.sql;
    conn / as sysdba;
    select open_mode from v$database;
    create spfile from pfile;
    exit
    eof
    ## #数据库名称
    ## db_domain=''
    ## db_name='${dbname}'
    ## #快速恢复区
    ## db_recovery_file_dest='/opt/oracle/flash_recovery_area'
    ## db_recovery_file_dest_size=2G
    ## #控制文件
    ## control_files='/opt/oracle/oradata/${dbname}/control01.ctl','/opt/oracle/oradata/${dbname}/control02.ctl','/opt/oracle/oradata/${dbname}/control03.ctl'
    ## #数据块大小
    ## db_block_size=8192
    ## #设置内存管理
    ## memory_target=1G
    ## #最大进程数
    ## processes=300
    ## #撤销表空间
    ## undo_management=auto
    ## undo_tablespace=undotbs
    ## #兼容性
    ## compatible='11.2.0'
    ## #共享服务器
    ## dispatchers='(PROTOCOL=TCP)(SERVICE=${dbname}xdb)'
    ## #设置安全与审计
    ## audit_file_dest='/opt/oracle/admin/${dbname}/adump'
    ## audit_trail='db'
    ## #口令文件
    ## remote_login_passwordfile=EXCLUSIVE
    ## #游标
    ## open_cursors=300
    ## #诊断与跟踪信息
    ## diagnostic_dest='/opt/oracle'
    ## #作业队列
    ## job_queue_processes=10
    ## eof
    
    
    ##创建数据库
    ##  create database dg
    ##  user sys identified by oracle
    ##  user system identified by oracle
    ##  controlfile reuse
    ##   MAXLOGFILES 16
    ##   MAXLOGMEMBERS 3
    ##   MAXDATAFILES 100
    ##   MAXINSTANCES 8
    ##   MAXLOGHISTORY 292
    ##   NOARCHIVELOG
    ##   CHARACTER SET AL32UTF8
    ##   NATIONAL CHARACTER SET AL16UTF16
    ##   SET DEFAULT SMALLFILE TABLESPACE
    ##  #--设置重做日志文件
    ##  logfile 
    ##       group 1 ('/opt/oracle/oradata/dg/redolog1_01') size 20M,  
    ##       group 2 ('/opt/oracle/oradata/dg/redolog2_01') size 20M,  
    ##       group 3 ('/opt/oracle/oradata/dg/redolog3_01') size 20M  
    ##  #--设置system表空间
    ##      extent management local
    ##      datafile '/opt/oracle/oradata/dg/system.dbf' size 200M autoextend on   
    ##  #--设置数据库sysaux表空间
    ##      sysaux datafile '/opt/oracle/oradata/dg/sysaux.dbf' size 200M autoextend on      
    ##  #--设置数据库撤销表空间
    ##     undo tablespace undotbs datafile '/opt/oracle/oradata/dg/undotbs.dbf' size 200M autoextend on  
    ##  #--设置数据库默认表空间
    ##     default tablespace users datafile '/opt/oracle/oradata/dg/users.dbf' size 20M autoextend on   
    ##  #--设置数据库临时表空间  
    ##     default temporary tablespace temp tempfile '/opt/oracle/oradata/dg/temp.dbf' size 20M autoextend on 
  • 相关阅读:
    fiddler的使用
    redis pipeline
    redis hash map
    redis队列的实现
    PHP-redis中文文档-命令
    websocket
    c++之socket,阻塞模式
    Django上传文件和修改date格式
    通过字符串导入模块
    'CSRFCheck' object has no attribute 'process_request' 报错
  • 原文地址:https://www.cnblogs.com/vmsysjack/p/12592600.html
Copyright © 2011-2022 走看看