为了create database,用startup nomount pfile="E:\oracle\admin\mydb\pfile\init.ora";错误信息:ORA-01081: 无法启动已在运行的 ORACLE

时间:2022-02-25 04:32:46
我查了点资料,归纳了一下手工创建一个数据库,在使用的时候又几点不明白,而且不知道这几个步骤是否正确,请各位帮帮忙了......
1) 编写数据库创建脚本。
2) 创建目录结构以存放新的数据库。
3) 修改一个现有的或Oracle提供的init.ora例子文件,以反映新数据库的参数。
4) 声明Oracle SID名。(set ORACLE_SID=mydb)
5) sqlplus中,使用SYSTEM/MANAGER as sysdba连接到数据库:
connect / as sysdba;
6) 在创建数据库之前是没有可供打开的数据库的,需要访问后台进程和SGA,从而可以发出create database命令。执行以下命令:
startup nomount pfile=”E:\oracle\admin\mydb\pfile\init.ora”;
7) 启动了数据库,可以使用已经创建的数据库创建脚本。
8) 创建数据库后,运行下列脚本:catalog.sql,catproc.sql,catexp.sql以及全部其他需要用来支持安装产品的脚本。
9) 需要修改system和sys账户的口令,此时为manager和change_on_install。
10) 数据库创建后,唯一不能修改的参数是在数据库创建前,在init.ora文件中声明的数据库块大小。参数DB_BLOCK_SIZE用于确立该值。使用:
select Name,Value,IsDefault from V$PARAMETER;
查看这些参数是否在数据库中起作用。

1.首先一个问题,资料上说在windows环境中,在创建一个数据库前,必须首先运行oradim,用于创建数据库服务的一个可执行程序.oradim怎么用,我看它的命令行帮助,创建了一个新的,不知道行不行.
2.使用sqlplus连接数据库
sqlplus中,使用SYSTEM/MANAGER as sysdba连接到数据库:
connect / as sysdba;
我在命令行执行"sqlplus SYSTEM/MANAGER",这样连接到了哪个数据库,是不是我当初安装的第一个,我什么参数也没有改,然后我在SQL提示符下"connect / as sysdba;"能够连接成功,不过再执行"SQL> startup nomount pfile="E:\oracle\admin\mydb\pfile\init.ora";"出错误信息:"ORA-01081: 无法启动已在运行的 ORACLE --- 请首先关闭",是不是因为我首先连接了一个数据库,不过"connect / as sysdba;"不是已经执行了么?
3.第8步:创建数据库后,运行下列脚本:catalog.sql,catproc.sql,catexp.sql以及全部其他需要用来支持安装产品的脚本。
这些脚本是初始化环境?做什么用?其他需要用来支持安装产品的脚本就是我的要数据库的表空间,表等对象?

分不够再加了

4 个解决方案

#1


1、ORADIM的使用参考命令行帮助就可以,没什么复杂的
2、在执行SQLPLUS之前,要先运行SET ORACLE_SID=MYDB,这些都应该在命令行环境中执行
3、CATALOG.SQL  -- 创建系统数据字典
   CATPROC.SQL  -- 创建PROC所用的系统对象
   CATEXP.SQL   -- 创建EXP所用的系统对象
还有很多的ADMIN脚本,你最好用工具生成一个完整的建库脚本参考一下

#2


一台机器可以创建多个数据库实例
“connect / as sysdba;”连接到缺省实例
连接不同实例用:connect db_user@SID/db_user_password as sysdba;
你先:shutdown abort,再startup ...
那些脚本建立plsql包,和内部的存储过程
 

#3


KingSunSha(弱水三千)大哥,是不是SET ORACLE_SID=MYDB后,再执行sqlplus连接的就是MYDB

#4


谢谢shshsh_0510()和KingSunSha(弱水三千) 大哥

#1


1、ORADIM的使用参考命令行帮助就可以,没什么复杂的
2、在执行SQLPLUS之前,要先运行SET ORACLE_SID=MYDB,这些都应该在命令行环境中执行
3、CATALOG.SQL  -- 创建系统数据字典
   CATPROC.SQL  -- 创建PROC所用的系统对象
   CATEXP.SQL   -- 创建EXP所用的系统对象
还有很多的ADMIN脚本,你最好用工具生成一个完整的建库脚本参考一下

#2


一台机器可以创建多个数据库实例
“connect / as sysdba;”连接到缺省实例
连接不同实例用:connect db_user@SID/db_user_password as sysdba;
你先:shutdown abort,再startup ...
那些脚本建立plsql包,和内部的存储过程
 

#3


KingSunSha(弱水三千)大哥,是不是SET ORACLE_SID=MYDB后,再执行sqlplus连接的就是MYDB

#4


谢谢shshsh_0510()和KingSunSha(弱水三千) 大哥