创建目录
mkdir d:\oracle\product\\database
mkdir e:\oracle\admin\Orag\bdump
mkdir e:\oracle\admin\Orag\cdump
mkdir e:\oracle\admin\Orag\create
mkdir e:\oracle\admin\Orag\pfile
mkdir e:\oracle\admin\Orag\udump
mkdir e:\oracle\flash_recovery_area
mkdir e:\oracle\oradata
mkdir e:\oracle\oradata\Orag
生成windows服务创建密码文件在cmd命令下运行
set ORACLE_SID=dbca 绿色部分设置oracle 实例名为 为orag
d:\oracle\product\\DB_\bin\oradimexe new sid ORAG startmode manual spfile d:\oracle\product\\DB_\bin\oradimexe edit sid ORAG startmode a spfile
创建一个实例名为dbca 并且有手动启动方式改为自动启动
d:\oracle\product\\DB_\bin\orapwdexe file=d:\oracle\product\\db_\PWDOragora password=sysPassword force=y
用oracle自带的orapwd 为sys用户创建一个默认的密码为sysPassword
执行创建数据库脚本
D:\oracle\ora\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBsql
D:\oracle\ora\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBFilessql
D:\oracle\ora\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBCatalogsql
D:\oracle\ora\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\postDBCreationsql
黑体部分就是创建数据库要调用的脚本
第一 CreateDBsql
connect SYS/change_on_install as SYSDBA 这是刚刚我们设置的密码以sysdba身份连接到数据库
connect SYS/change_on_install as SYSDBA 这是刚刚我们设置的密码以sysdba身份连接到数据库
set echo on
spool D:\oracle\ora\assistants\dbca\logs\CreateDBlog 写日志
startup nomount pfile=D:\oracle\admin\dbca\scripts\initora; 调用参数文件 启动数据库到只装载实例阶段
CREATE DATABASE dbca
MAXINSTANCES
MAXLOGHISTORY
MAXLOGFILES
MAXLOGMEMBERS
MAXDATAFILES 控制文件记录的相关最大日志数日志组最大数据文件数等限制
DATAFILE D:\oracle\oradata\dbca\systemdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE D:\oracle\oradata\dbca\tempdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
UNDO TABLESPACE UNDOTBS DATAFILE D:\oracle\oradata\dbca\undotbsdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED 创建系统临时回滚 表空间ITPUB个人空间!dJl {!iW r f
CHARACTER SET ZHSGBK
NATIONAL CHARACTER SET ALUTF 字符集
LOGFILE GROUP (D:\oracle\oradata\dbca\redolog) SIZE K
GROUP (D:\oracle\oradata\dbca\redolog) SIZE K
GROUP (D:\oracle\oradata\dbca\redolog) SIZE K; 创建日志文件租和成员
spool off
exit;
第二CreateDBFilessql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora\assistants\dbca\logs\CreateDBFileslog
CREATE TABLESPACE INDX LOGGING DATAFILE D:\oracle\oradata\dbca\indxdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE TOOLS LOGGING DATAFILE D:\oracle\oradata\dbca\toolsdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE USERS LOGGING DATAFILE D:\oracle\oradata\dbca\usersdbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; 创建相关用户要用到的表空间
spool off
第三:CreateDBCatalogsql
创建system数据字典存放到system表空间相关表视图等
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora\assistants\dbca\logs\CreateDBCataloglog
@D:\oracle\ora\rdbms\admin\catalogsql;
@D:\oracle\ora\rdbms\admin\catexpsql;
@D:\oracle\ora\rdbms\admin\catblocksql;
@D:\oracle\ora\rdbms\admin\catprocsql;
@D:\oracle\ora\rdbms\admin\catoctksql;
@D:\oracle\ora\rdbms\admin\owminstplb;
connect SYSTEM/manager
@D:\oracle\ora\sqlplus\admin\pupbldsql;
connect SYSTEM/manager
set echo on
spool D:\oracle\ora\assistants\dbca\logs\sqlPlusHelplog
@D:\oracle\ora\sqlplus\admin\help\hlpbldsql helpussql;
spool off
spool off
exit;
第四: postDBCreationsql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora\assistants\dbca\logs\postDBCreationlog
@D:\oracle\ora\rdbms\admin\utlrpsql; 编译相关视图包对象等
shutdown ; 关闭数据库
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora\assistants\dbca\logs\postDBCreationlog
create spfile=D:\oracle\ora\database\spfiledbcaora FROM pfile=D:\oracle\admin\dbca\scripts\initora;
创建服务器参数文件代替文件初始化参数文件方便有时在不重启数据库的情况下可以使参数生效
从上面可以看到spfile文件的存放位置
startup ; 启动数据库 创建数据库完成 从上面可以看出创建数据库有以下个步骤
Step : 创建相关trace目录文件夹
Step :创建实例密码 启动方式
Step :创建初始化参数文件 initora
Step : 连接到实例
Step : 启动实例到nomount状态
Step :创建数据库
Step :创建表空间
Step : 运行脚本创建数据字典
Step : 创建服务器参数文件(这步不是必须的但oracle建议做这步) 好处会在以后的总结中列出
下面也贴出linux下脚本和windows下几乎差不多
#!/bin/sh
mkdir /oradata/orai
mkdir /oradata/orai/controlfile
mkdir /oradata/orai/redofile
mkdir /orasys/oracle/admin
mkdir /orasys/oracle/admin/orai
mkdir /orasys/oracle/admin/orai/bdump
mkdir /orasys/oracle/admin/orai/cdump
mkdir /orasys/oracle/admin/orai/create
mkdir /orasys/oracle/admin/orai/udump
mkdir /orasys/oracle/admin/orai/pfile
cp initora /orasys/oracle/product//dbs/
export ORACLE_BASE=/orasys/oracle
export ORACLE_HOME=$ORACLE_BASE/product/
export ORACLE_SID=orai
export ORA_NLS=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
echo Add this entry in the oratab: orai:/orasys/oracle/product/:Y
/orasys/oracle/product//bin/orapwd file=/orasys/oracle/product//dbs/orapworai password=change_on_install
/orasys/oracle/product//bin/sqlplus /nolog @/home/oracle/create_script/CreateDBsql
/orasys/oracle/product//bin/sqlplus /nolog @/home/oracle/create_script/CreateDBFilessql
/orasys/oracle/product//bin/sqlplus /nolog @/home/oracle/create_script/CreateDBCatalogsql
/orasys/oracle/product//bin/sqlplus /nolog @/home/oracle/create_script/postDBCreationsql