net start oracleserviceatei就可以打开相关服务。这依赖于一些注册表参数,我们在后面讨论。停止相关的服务,例如:net stop oracleserviceatei可以关闭一个数据库。
在所有的平台上,oracle8i实例都可以从服务管理器(或者sql*plus!)中通过startup命令启动。在unix中,这个命令启动后台进程并且打开数据库。它还生成了一个unix特定文件,叫做$oracle_home/dbs/lk<dbname>,这是个mount锁文件[6 metalink, 2000]。这会阻止两个实例mount在同一数据库上,当不使用并行服务器的模式下,要使用不同的oracle_sid。原来这是个0长度文件,不过现在包含文本'do not delete this file!'。不要试图通过查看这个文件来得知是否数据库是可用的,它不是很准确的。在windows 2000中,startup命令并不启动oracle服务,不过,如果服务已经运行的话,这将打开数据库。
如果启动一个已经运行的实例,dbstart 还会执行一个 shutdown abort 。在dbstart script脚本的顶部警告说 'it should only be executed as part of the system boot procedure'。这个脚本要常被复制、修改,这样在其它的时候使用才能足够安全。
i (immediate), n (normal)。 如果你不设定这个参数的话, 默认的模式是 i (immediate)。 ora_sid_shutdown_timeout 在一个sid停止前等待的最大时间。 -----------------------------------------------------------------
建议你运行database creation assistant,不过在最后一页选择save information to a batch file(保存信息到一个批处理文件中),再点击"完成"按钮。这会产生几个脚本。从不同的平台对比它们的内容很有趣的。在unix 和 windows上的内容很相似,除了windows上对oradim的调用不同。第一次对它的调用产生了一个与oracle 数据库相关联的oracle服务:
d:/oracle/ora817/bin/oradim -new -sid atei -intpwd man -startmode manual -pfile "d:/oracle/admin/atei/pfile/initatei.ora"
第二次对oradim的调用把服务更改为自动启动:
d:/oracle/ora817/bin/oradim -edit -sid atei -startmode auto
可以用这些文件作为创建其它数据库的模版。若你不使用上面建议的方式创建数据库的话,database creation assistant 生成的这些文件和目录没什么大用处。在使用这些脚本创建额外的数据库之前,这些文件和目录不得实现创建。特别注明一下,脚本假定一个密码文件已经存在,密码文件可以用orapwd命令预创建[2 h kelly iii, 2000]。