创建数据库
非常简单的一个命令create database,运行看看有什么结果,可以想象到会产生什么错误
SQL> create database;
ITPUB个人空间^L|q$_'V3X+p
create database
ERROR at line 1:
create database
ERROR at line 1:
没有数据库名字,原因在于initora9.ora文件里缺少一个关键的配置db_name='ora9db',注意数据库名称可以和实例名称不一致,如果配置了此项可以避免这个错误提示,不要紧,在这个命令下我们手工指定数据库名称,再来一次
SQL> create database ora9db;
Database created.
SQL>
创建成功了
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
ora9 OPEN
ora9 OPEN
状态改变了
SQL> select name from v$datafile;
SQL> select name from v$datafile;
NAME
C:\ORACLE\ORA92\DATABASE\DBS1ORA9.ORA
C:\ORACLE\ORA92\DATABASE\DBS1ORA9.ORA
这是数据库的数据文件
SQL> select name from v$tablespace;
NAME
这是SYSTEM表空间
这是SYSTEM表空间
SQL> select name from v$controlfile;
NAME
C:\ORACLE\ORA92\DATABASE\CTL1ORA9.ORA
这是控制文件
SQL> select member from v$logfile;
C:\ORACLE\ORA92\DATABASE\LOG1ORA9.ORA
C:\ORACLE\ORA92\DATABASE\LOG2ORA9.ORA
这是日志文件
这是日志文件
显然这一步ORACLE在幕后做了很多操作
---创建数据文件,控制文件,日志文件
---创建了SYSTEM表空间
---创建了数据字典
---设置数据库字符集
SELECT name,value$ from sys.props$ where name like '%NLS%'可以看到
---装载并打开数据库
不过工作还没有完成,还要继续下一步的操作
运行脚本创建数据字典视图、同义词和PL/SQL包
SQL> @%oracle_home%\rdbms\admin\catalog.sql
执行完会有2个object的status是invalid
SQL> @%oracle_home%\rdbms\admin\catproc.sql
此一步不一定能够创建成功
总结一下步骤
上面所做的测试只是为了研究oracle数据库创建所要作的工作,生产环境下要创建数据库还要对各个步骤进行润色,总的说来需要如下几个步骤
确定实例名-->创建服务-->创建初始化数参数文件-->启动实例-->执行create database-->创建其他表空间-->运行脚本创建数据字典视图和程序包-->创建服务端参数文件