手工创建数据库

今天来探讨一下怎么 手工创建数据库:
 
建数据库的步骤:
第一步:  设置 os 变量:
$export ORACLE_HOME=/u01/app/oracle/product/ 10.2.0 /db_1
$export ORACLE_SID=nina
$export LD_LIBRARY_PATH=$ORACLE_HOME/lib
第二步: 保证有创建数据库的权限:
SQL.>conn / as sysdba
Sys 的默认密码是 change_on_install
System 的默认密码是 manager
第三步:创建 init.ora 文件,并保存在 $ORACLE_HOME/dbs 中( unix 版本,在 windows 版本中是 $ORACLE_HOME/database
此处创建 init.ora 只是为了启动实例,因此无需设置太多的初始化参数,如需设置则在创建数据库之后再去设置即可。一个很好的方法是拷贝相类似的数据库中的 init.ora ,修改 sid 等关键参数即可使用。
一旦配置了初始化文件,就做好了创建实例的准备。
第四步:启动实例
为了创建数据库,必须首先启动实例:
Rac1>sqlplus /nolog
SQL*Plus: Release 10.2.0 .1.0 - Production on 星期四 10 29 22:00:43 2009
 
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
SQL>connect sys as sdba
Enter password:
Connected to an idle instance
因为现在还没有控制文件可以使用,所以必须以 nomount 的方式启动实例
SQL>startup nomount
或者
SQL>startup nomount pfile=’/u01/app/oracle/product/ 10.2.0 /db_1/dbs/initnina.ora’;
这个时候实例就使用 initnina.ora 里面的参数来启动了实例,并且后台进程也都能起来了。
[oracle@localhost]$ps �Cef |grep nina
同时,实例启动的动作都记录在日志文件中
[oracle@localhost]$ more /u01/app/oracle/admin/nina/bdump/alert_nina.log 里面显示了所有后台进程启动,所有初始化参数的配置等等信息
 
至此,我们得到了一个运行的数据库实例。
第五步:创建数据库
一个最简单的数据库包括:
一个 system 表空间,
一个 sysaux 表空间,
一对控制文件和 redo log 文件,
一个默认的临时表空间,
一个撤销表空间。
我们可通过脚本,或语句来创建一个较复杂的数据库:
CREATE DATABASE NINA      -- 此句提示按照 init.ora 创建 controlfile ;如果此前也有
-- 同名称的 controlfile ,则可用 controlfile reuse
USER SYS IDENTIFIED BY SYS_PASSWORD
USER SYSTEM IDENTIFIED BY SYSTEM_PASSWORD
                              -- 设定 2 个最重要的用户的密码
MAXINSTANCES 1             
MAXLOGHISTORY 1
MAXLOGFILES 5
MAXLOGMEMBERS 5
                              -- 设置日志,实例等最大值
CHARACTER SET US7ASCII    -- 设置字符集
NATIONAL CHARACTER SET AL16UTF16
                                                   -- 设置字符集
DATAFILE ‘/U01/APP/ORACLE/ORADATA/NINA/SYSTEM01.DBF’ SIZE 500M
EXTENT  MANAGEMENT LOCAL
SYSAUX DATAFILE ‘/U01/APP/ORACLE/ORADATA/NINA/SYSAUX01.DBF’ SIZE 500M
DEFAULT TEMPORARY TABLESPACE TEMP01
TEMPFILE ‘/U01/APP/ORACLE/ORADATA/NINA/TEMP01.DBF’ SIZE 200M
UNDO TABLESPACE UNDOTBS_01
DATAFILE ‘/U01/APP/ORACLE/ORADATA/NINA/UNDO01.DBF’ SIZE 200M
DEFAULT TABLESPACE USERS
DATAFILE ‘/U01/APP/ORACLE/ORADATA/NINA/USERS01.DBF’ SIZE 400M
                                                        -- 以上定义数据文件
LOGFILE
GROUP 1
(‘/U01/APP/ORACLE/ORADATA/NINA/REDO01.LOG’) SIZE 100M ,
GROUP 2
(‘/U01/APP/ORACLE/ORADATA/NINA/REDO02.LOG’)SIZE 100M
                                                        -- 定义日志组
DATABASE CREATED
SQL>
 
创建完后仔细阅读日志文件:
Alert_nina.log
第六步:执行 2 oracle 脚本创建数据字典对象:
SQL>@$ORACLE_HOME/rdbms/admin/catalog.sql
SQL>@$ORACLE_HOME/rdbms/admin/catproc.sql
 
 
至此,一个基本的数据就创建成功,但是这样一个数据库是基本无法应用的;
 
手工创建数据库后还需要一些首尾工作要做:
1、鉴于数据库的安全,应该更改用户密码,将不需要的默认帐号禁用;
2、根据需要创建属于应用系统的表空间;
3、由于手动创建的数据库一些服务是没有起来的,例如emctl ,sqlplusctl等等,我们必须手动的启动他们:
emctl start dbconsole
sqlplusctl start
启动之后,我们就可以通过web来启动oem和sqlplus了;
注意:oem和sqlplus都是有端口限制的,如果想看本系统的端口信息,去查询$oracle_home/install/portlist/portlist.ini文件
4、修改数据库的归档模式,这个大家都应该知道怎么修改及为什么要修改了吧。
5、如果需要,创建spfile
create spfile from pfile 。。。。。。。

你可能感兴趣的:(数据库,职场,休闲)