本文共 3642 字,大约阅读时间需要 12 分钟。
CREATE DATABASE mynewdb USER SYS IDENTIFIED BY sys_password USER SYSTEM IDENTIFIED BY system_password
LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log') SIZE 100M BLOCKSIZE 512, GROUP 2 ('/u01/logs/my/redo02a.log','/u02/logs/my/redo02b.log') SIZE 100M BLOCKSIZE 512, GROUP 3 ('/u01/logs/my/redo03a.log','/u02/logs/my/redo03b.log') SIZE 100M BLOCKSIZE 512 MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16 EXTENT MANAGEMENT LOCAL DATAFILE '/u01/app/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE SYSAUX DATAFILE '/u01/app/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE DEFAULT TABLESPACE users DATAFILE '/u01/app/oracle/oradata/mynewdb/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE tempts1 TEMPFILE '/u01/app/oracle/oradata/mynewdb/temp01.dbf' SIZE 20M REUSE UNDO TABLESPACE undotbs DATAFILE '/u01/app/oracle/oradata/mynewdb/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;这个语句基本不用修改太多的地方,基本就是文件的路径,结构部分不用做任何修改。 11g的实例很快就创建完成了。然后就想直接引用这个现成的脚本,简单修改一下路径,数据库实例名,在10g的环境中创建一个数据库实例。 但是却报出了下面的错误。 SQL> @createdb.sql LOGFILE GROUP 1 ('/u02/oracle/oradata/TEST10G/disk1/redo01a.log','/u02/oracle/oradata/TEST10G/disk2/redo01b.log') SIZE 100M BLOCKSIZE 512, * ERROR at line 4: ORA-02165: invalid option for CREATE DATABASE 对于这个错误自己还是很疑惑,不知道是哪儿出了问题,开始以为是做路径替换的时候出了问题,排除了乱码等的影响。最后发现语句实在没有其它的问题了。 这个时候把10g的创建语句拿出来比较一下,发现有3处不同之处。 CREATE DATABASE mynewdb USER SYS IDENTIFIED BY pz6r58 USER SYSTEM IDENTIFIED BY y1tz5p LOGFILE GROUP 1 ('/u01/oracle/oradata/mynewdb/redo01.log') SIZE 100M, GROUP 2 ('/u01/oracle/oradata/mynewdb/redo02.log') SIZE 100M, GROUP 3 ('/u01/oracle/oradata/mynewdb/redo03.log') SIZE 100M MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 MAXINSTANCES 1 CHARACTER SET US7ASCII NATIONAL CHARACTER SET AL16UTF16 DATAFILE '/u01/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE EXTENT MANAGEMENT LOCAL SYSAUX DATAFILE '/u01/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE DEFAULT TABLESPACE tbs_1 DEFAULT TEMPORARY TABLESPACE tempts1 TEMPFILE '/u01/oracle/oradata/mynewdb/temp01.dbf' SIZE 20M REUSE UNDO TABLESPACE undotbs DATAFILE '/u01/oracle/oradata/mynewdb/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; 第一处是关于redo日志组的设置,10g中默认配置一组日志中只有一个日志成员。在11g中是默认有2个 第二个不同之处是在10g中有一个配置MAXINSTANCES,在11g中缺没有,因为是单实例数据库,是在找不出理由是这个地方的不同引起的问题。 第三个问题就更加明显了,在10g中 只有一句default tablespace tbs_1 然后没有定义明细的信息,这个语句是不能运行的,还需要手工去补充,在11g中,语句已经补充完整了。只需要简单的根据自己的需求需要一下就可以了。 所以第二个第三个问题是很明显的,应该不是问题的原因,那么我们看看第一处不同,还有什么地方有可能会导出语句出问题。 11g中这样定义的
LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log') SIZE 100M BLOCKSIZE 512,
SQL> select max(lebsz) from x$kccle;MAX(LEBSZ)---------- 512 |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23718752/viewspace-1722979/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23718752/viewspace-1722979/