51代码网ORACLEMYSQLSQL SERVER其它数据库java/jspasp/asp.netC/C++/VC++APP应用其它语言服务器应用
您现在的位置: 51代码网 >> oracle >> 文章正文

oracle 10g数据库使用创建脚本实现手动创建数据库

更新时间:2012-1-3:  来源:51代码网

select tablespace_name from dba_tablespaces where tablespace_name='USERS';
select sid, program, serial#, username from v$session;
由于种子数据库的字符集通常与用户要求的不符,接下来Oracle通过内部操作强制更改了字符集、国家字符集(这个内容在后面的章节有详细的介绍):
alter database character set INTERNAL_CONVERT ZHS16GBK;
alter database national character set INTERNAL_CONVERT AL16UTF16;
最后修改用户口令,禁用restricted session模式,这个克隆过程执行完毕:
alter user sys identified by "&&sysPassword";
alter user system identified by "&&systemPassword";
alter system disable restricted session;
至此,完成了通过克隆方式创建数据库的过程。


完成以上步骤以后,ORACLE继续执行postScripts.sql已完成相应的维护工作,打开该文件发现内容如下:
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool f:\test\scripts\postScripts.log
@f:\oracle\product\10.2.0\db_1\rdbms\admin\dbmssml.sql;
execute dbms_datapump_utl.replace_default_dir;
commit;
connect "SYS"/"&&sysPassword" as SYSDBA
alter session set current_schema=ORDSYS;
@f:\oracle\product\10.2.0\db_1\ord\im\admin\ordlib.sql;
alter session set current_schema=SYS;
connect "SYS"/"&&sysPassword" as SYSDBA
connect "SYS"/"&&sysPassword" as SYSDBA
alter user CTXSYS account unlock identified by change_on_install;
connect "CTXSYS"/"change_on_install"
@f:\oracle\product\10.2.0\db_1\ctx\admin\defaults\dr0defdp.sql;
@f:\oracle\product\10.2.0\db_1\ctx\admin\defaults\dr0defin.sql "SIMPLIFIED CHINESE";
connect "SYS"/"&&sysPassword" as SYSDBA
execute dbms_swrf_internal.cleanup_database(cleanup_local => FALSE);
commit;
spool off

 


最后执行的脚本是postDBCreation.sql,在这个脚本中将创建spfile,解锁SYSMAN、DBSNMP用户,编译失效对象并配置DB Control:
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool f:\test\scripts\postDBCreation.log
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
create spfile='f:\oracle\product\10.2.0\db_1/dbs/spfiletest.ora' FROM pfile='f:\test\scripts\init.ora';
shutdown immediate;
connect "SYS"/"&&sysPassword" as SYSDBA
startup ;
alter user SYSMAN identified by "&&sysmanPassword" account unlock;
alter user DBSNMP identified by "&&dbsnmpPassword" account unlock;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual;
host f:\oracle\product\10.2.0\db_1\bin\emca.bat -config dbcontrol db -silent -DB_UNIQUE_NAME test -PORT 1521 -EM_HOME f:\oracle\product\10.2.0\db_1 -LISTENER LISTENER -SERVICE_NAME test -SYS_PWD &&sysPassword -SID test -ORACLE_HOME f:\oracle\product\10.2.0\db_1 -DBSNMP_PWD &&dbsnmpPassword -HOST 0d819df6bbbd490 -LISTENER_OH f:\oracle\product\10.2.0\db_1 -LOG_FILE f:\test\scripts\emConfig.log -SYSMAN_PWD &&sysmanPassword;
spool f:\test\scripts\postDBCreation.log
exit;
到此处,整个数据库创建脚本就已经执行完成,通过这个过程我们创建了一个名为TEST的数据库。

上一页  [1] [2] 

  • 上一篇文章:
  • 下一篇文章: 没有了
  • 赞助商链接
    推荐文章
  • 此栏目下没有推荐文章
  • {
    设为首页 | 加入收藏 | 友情链接 | 网站地图 | 联系站长 |