1、oracle92安装
如果是一台干净的机器,一般是一路顺利,最后通过dbca配置等。
如果以前安装过oracle10client等,导致环境变量对oracle92有影响后, dbca等工具就会配置失败。 这样的话默认的sid没有创建成功, connect / as sysdba时就会弹出:ORA-12560
修改的方法有: (1) 修改环境变量使dbca能够启动创建默认数据库, 启动对应sid的服务(我没有做实验)
(2)利用oradim工具:
oradim我以前不怎么用,那是因为每次安装oracle都没有出问题,其实她真不错,主要功能有:
创建、删除、编辑sid,初始化ORACLE_HOMOE\database\PWDsid.ORA、修改startmode、指定pfile
在cmd中敲oradim,就可以看到他的相关参数,只说两点巴, 只创建sid,但是没有初始化pwdsid.ora文件,可以conn / as sysdba ,但是在create database时,出错了。 startmode 中的manual 时,手工在window 服务启动sid服务, 数据库不启动、auto时,则同时启动数据库。
这里我用的pfile是默认位置ORACLE_HOMOE\database\initxxx.ora,不知道在这里指定其他位置后startup 数据时默认pfile的位置是否改变
注:以前以为oracle的sid服务是用windows 命令sc直接创建、启动、停止、删除呢
2、创建数据库
参考文档是administrator reference.pdf oracle关于9i的文档
这一步我费老劲了, 充分感觉到 理论重要,实践更重要啊。。。
参照文档中Manually Creating an Oracle Database
参数文件我用ORACLE_HOME\admin\sample\pfile下的initsmpl.ora做模板
注意以下几点:
所有%xxx%的地方都替换成实际的路径,log_archive_format = ARCH%s.LOG 有一个%是正确的。
text_enable = TRUE 不知道什么意思注释掉了
compatible = 8.1.5.0.0 修改成compatible = 9.2.0.0.0
以上再create database时都会造成 ora-01092错误。
当然了也可能别的原因造成的, 有错误就去看background_dump_dest=F:\oracle\product\9.2\rdbms\trace
user_dump_dest=F:\oracle\product\9.2\rdbms\trace 下的日志,一般问题都能找到。
文档的例子create database语句,我也贴出来:
CREATE DATABASE mynewdb
USER SYS IDENTIFIED BY pz6r58
USER SYSTEM IDENTIFIED BY y1tz5p
LOGFILE GROUP 1 ('/vobs/oracle/oradata/mynewdb/redo01.log') SIZE 100M,
GROUP 2 ('/vobs/oracle/oradata/mynewdb/redo02.log') SIZE 100M,
GROUP 3 ('/vobs/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 '/vobs/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE tempts1
DATAFILE '/vobs/oracle/oradata/mynewdb/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/vobs/oracle/oradata/mynewdb/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED;
DEFAULT TEMPORARY TABLESPACE tempts1 下边的DATAFILE要改成 TEMPFILE,暂且把undo tablespace相关注释掉,随后再说,创建数据库成功了。。。plsql一试能连上。
下边做个改变pfile的实验:
oradim -shutdown -sid demo
oradim -delete -sid demo
删除所有create database创建的文件 oradata下的,还有控制文件。。。
C:\>oradim -new -sid demo -intpwd trout80 -startmode manual -pfile F:\oracle\pro
duct\9.2\admin\demo\pfile\initdemo.ora
sqlplus /nolog
conn / as sysdba
startup nomount
执行create database,出错了,,哎,参数文件用的还是默认的,看来oradim 指定的pfile和startup用的pfile位置毫不相干阿
shutdown immediate
删除刚刚创建的相关文件
startup nomount pfile=F:\oracle\product\9.2\admin\demo\pfile\initdemo.ora
这次建库成功了。。。
关于undo tablespace
把create database下边注释的undo tablespace 打开
修改参数文件添加
undo_management = auto
undo_tablespace = undotbs
注意undo_tablespace=undotbs一定要和create database中的名字一样啊。。。
创建成功了。。。。。。
后记: oracle的官方文档 由于我没有 metalnk账户, 只能从网上打开文档,选择用pdf打开,就可以保存成一本书了。另外试验过程不是很顺利,时有磕磕碰碰,一定下意识去看log文件。 create database 语句保存在文件中
在sqlplus中 @path调用,这样修改create database语句后保存,方便。 不过修改时 注意最后的 “;”, 我经常忘
出好几次错,真感慨 人那。。。不过DBA也都不是神人, 希望大家一块努力。
mail: yixia800924@163.com