手动创建数据库脚本

#!/bin/bash
if [ `whoami` != oracle ];then
   echo ‘please Use oracle user perform script‘
   exit 1
fi

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 = 192.168.31.191)(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
select open_mode from v\$database;
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  

原文地址:https://www.cnblogs.com/vmsysjack/p/12542027.html

时间: 2024-08-08 22:54:10

手动创建数据库脚本的相关文章

CentOS 7 静默安装oracle 11R2 ,并手动创建数据库 createdatabase

官方文档:http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#BHCCADGD 需要的安装包: binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 gcc-4.8.2-3.el7.x86

Oracle 11g手动创建数据库(Linux平台)

一.    环境 Oracle 11g,Linux平台 二.    适合场景 有些情况下无法提供GUI环境.需要手动建库 前提:操作系统已经安装了必须的包和ORACLE软件 三.    流程 手动建库大致步骤 设置环境变量.bash_profile 创建参数文件(位置:$ORACLE_HOME/dbs) 创建目录结构 执行建库脚本 四.    设置环境变量 $cat .bash_profile ORACLE_SID=sdzy ORACLE_BASE=/db/oracle ORACLE_HOME=

Oracle11g手动创建数据库方法

参考网页http://www.th7.cn/db/Oracle/201311/36926.shtml 安装路径 我的安装路径是:E:\app\admin\product\11.2.0\dbhome_1 DATABASE NAME.实例名以及ORACLE_SID:名字全部都是MYDB SYS和SYSTEM等用户的密码:123456 1:创建文件夹 2:创建初始化参数文件 3:创建执行建库脚本 4:设置环境变量 5:  创建实例 6:创建口令文件 7:启动数据库NOMOUNT状态 8:执行建库脚本 

如何手动创建oracle数据库

下面的实验室是如何不要通过DBCA创建ORACLE 数据库,而是通过ORACLE ONLINE HELP DOCUMENT进行手动的创建数据库的详细步骤: 1,编辑Oracle profile [[email protected] ~]# su - oracle [[email protected] ~]$ vi ./.bash_profile PATH=$PATH:$HOME/bin export PATH export ORACLE_BASE=/u01/app/oracle export O

怎样手动创建oracle数据库

以下的实验室是怎样不要通过DBCA创建ORACLE 数据库,而是通过ORACLE ONLINE HELP DOCUMENT进行手动的创建数据库的具体步骤: 1,编辑Oracle profile [[email protected] ~]# su - oracle [[email protected] ~]$ vi ./.bash_profile PATH=$PATH:$HOME/bin export PATH export ORACLE_BASE=/u01/app/oracle export O

10_Oracle_Admin_手动创建一个比较实用的数据库

上一节中手动创建数据库由于参数太过简单,且没有安装数据字典,是无法实际应用的,本章节是对上节内容的深入,增加了很多细节和参数配置,按照以下步骤,可以成功安装一个能实际使用的数据库. ======清理现有数据库文件====== [[email protected] dbs]$ ll total 240396 -rw-r-----. 1 oracle oinstall  7847936 Aug 28 11:43 cntrlwly.dbf -rw-r-----. 1 oracle oinstall 8

oracle(创建数据库对象)

1 --创建数据库 2 --1.SYSDBA系统权限 3 startup:--启动数据库. 4 shutdown:--关闭数据库. 5 alter database[mount]|[open]|[backup]|[character set]:--修改数据库到加载状态.打开状态,备份数据库,修改数据库字符集. 6 create database:--创建数据库. 7 drop database:--删除数据库. 8 create spfile:--创建服务器初始化参数文件. 9 alter da

手动创建oracle数据库_oracle11g

通过手动创建oracle数据库,可以了解oracle数据库的结构和数据库运行机制,对理解oracle数据库有帮助. 一.打开命令行工具,创建必要有相关目录 mkdir E:\app\Administrator\admin\sky mkdir E:\app\Administrator\admin\sky\adump mkdir E:\app\Administrator\admin\sky\dpdump mkdir E:\app\Administrator\admin\sky\pfile mkdir

mysql 使用 PHP脚本创建数据库

在一些开源的系统,都可以动态创建数据库名及数据库数据,mysql 使用 PHP脚本创建数据库,简单说说生成的原理. 1,使用的函数 mysqli_connect() mysqli_query() mysqli_close() mysqli_error() 2,使用PHP来创建一个数据库 <?php $dbhost = 'localhost:3306'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mys