ITPub博客

首页 > 数据库 > Oracle > oracle手工建库_10g

oracle手工建库_10g

原创 Oracle 作者:nisumost 时间:2013-05-11 21:45:02 0 删除 编辑

前期的准备:

首先安装软件,为了体现完全是手工建库,选择只安装oracle软件,老牛要裸体^^

 

由于是手工建库,安装oracle软件就不多提了,步骤很easy,安装好oracle软件后,/u01下只有ORACLE_HOME跟产品清单目录

[oracle@test1 u01]$ ls

db  oraInventory

 

数据库的实例与db_name我起的名字是test10g,环境变量的设置就不在这里提了,老牛相信大家看下面的目录就能知道oracle_home是啥了哟!

 

正式建库步骤开始喽,感觉老牛要变牛逼了呢:

1

在创建库之前先创建数据文件的存放目录:

/u01/oradata/test10g

[oracle@test1 u01]$ ls

db  oradata  oraInventory

[oracle@test1 test10g]$ pwd

/u01/oradata/test10g

由于是第一次手工建库,很多东西还不是很熟悉,理论上应该是在编写pfile脚本时指定adump,bdump,cdump,udump等目录的,但是给忘记了,不过oracle还是正常nomount了,好棒!!

 

2

创建pfile文件:

装好oracle软件后,体贴又安心的oracle会在oracle_home/dbs下给出一个init.ora文件,这个就是最基本的一个pfile模板,但是会侧漏,看上面那个问题就是侧漏了,其实下面还有侧漏的地方呢T_ T 但是启库是足够了

那就先利用它来生成一个pfile小萝莉(去掉里面多余的东西,把小萝莉脱光光)

[oracle@test1 dbs]$ cat init.ora|grep -v ^#|grep -v ^$ >/u01/db/dbs/inittest10g.ora

下面就是脱光光的小萝莉:

db_name=DEFAULT

db_files = 80                                                         # SMALL 

db_file_multiblock_read_count = 8                                     # SMALL 

db_block_buffers = 100                                                 # SMALL 

shared_pool_size = 3500000                                            # SMALL

log_checkpoint_interval = 10000

processes = 50                                                        # SMALL 

parallel_max_servers = 5                                              # SMALL

log_buffer = 32768                                                    # SMALL

max_dump_file_size = 10240      # limit trace file size to 5 Meg each

global_names = TRUE

control_files = (ora_control1, ora_control2)

下面是我蹂躏后的脱光光的小萝莉:

db_name=test10g

db_files = 100                                                         # SMALL 

db_file_multiblock_read_count = 8                                     # SMALL 

db_block_buffers = 100                                                 # SMALL 

shared_pool_size = 100000000                                            # SMALL

log_checkpoint_interval = 10000

processes = 100                                                        # SMALL 

parallel_max_servers = 5                                              # SMALL

log_buffer = 32768000                                                    # SMALL

max_dump_file_size = 10240      # limit trace file size to 5 Meg each

global_names = FALSE

control_files = (/u01/oradata/test10g/control01.ctl,/u01/oradata/test10g/control02.ctl)

OK经过老牛蹂躏后的小萝莉终于变成小熟女了,下面让她给我生个spfile吧

Create spfile from pfile=’/u01/db/dbs/inittest10g.ora’;

好了,可以尝试将数据库启动到nomount状态了

SQL> startup nomount

ORACLE instance started.

 

Total System Global Area  142606336 bytes

Fixed Size                  1218124 bytes

Variable Size             130025908 bytes

Database Buffers            4194304 bytes

Redo Buffers                7168000 bytes

非常好,我们已经完成第一步了,开瓶冰啤酒先庆祝一下先

 

3

其实按照我的步骤,下一步应该是create database语句了,但是在我的实际操作中,利用oracle官方文档提供的那个create database的脚本又发生了侧漏,会报错,提示undo表空间不是auto管理,要不咱改create database脚本,要不咱改undo_management参数,当然后面的感觉easy一些go go go

Alter system set undo_management=auto scope=spfile;

Shutdown abort

Startup nomount

完美

 

4

重头戏来了,将oracle官方文档中的那个建库脚本改成如下:

CREATE DATABASE test10g

   USER SYS IDENTIFIED BY oracle

   USER SYSTEM IDENTIFIED by oracle

   LOGFILE GROUP 1 ('/u01/oradata/test10g/redo01.log') SIZE 50M,

           GROUP 2 ('/u01/oradata/test10g/redo02.log') SIZE 50M,

           GROUP 3 ('/u01/oradata/test10g/redo03.log') SIZE 50M

   MAXLOGFILES 5

   MAXLOGMEMBERS 5

   MAXLOGHISTORY 1

   MAXDATAFILES 100

   MAXINSTANCES 1

   CHARACTER SET US7ASCII

   NATIONAL CHARACTER SET AL16UTF16

   DATAFILE '/u01/oradata/test10g/system01.dbf' SIZE 325M REUSE

   EXTENT MANAGEMENT LOCAL

   SYSAUX DATAFILE '/u01/oradata/test10g/sysaux01.dbf' SIZE 325M REUSE

   DEFAULT TEMPORARY TABLESPACE tempts1

      TEMPFILE '/u01/oradata/test10g/temp01.dbf'      

      SIZE 20M REUSE

   UNDO TABLESPACE undotbs

      DATAFILE '/u01/oradata/test10g/undotbs01.dbf'

      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

好了,等到这个脚本执行ok后,你会发现,数据库已经是write read了,哦,库已经open了

再等等,这时还需要再来2个脚本才比较完美

SQL> @/u01/db/rdbms/admin/catalog.sql

SQL> @/u01/db/rdbms/admin/catproc.sql

这2个脚本时间会稍长一点,执行好后就真的ok啦!

当然啦,我就是这时候发现pfile中有很多参数并没有给出来,老牛还需要再研究一下!

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7986761/viewspace-760863/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2013-04-27

  • 博文量
    11
  • 访问量
    56473