实验环境
1.vm8下建linux虚拟机redhat5.0系统
2.10201_database_linux32数据库
实验目的
1.掌握oracle手动建库
ok,话说为什么要会手动建库,答:因为用DBCA建库会被别人认为很low,so必须学会手动建库。
下面说一下手动建库的基本流程。本人菜鸟,在翻阅很多牛人的文档后发现手动建立数据库并没有想象中的那么复杂,当然在本次实验中只是为了学会手动建库,
没有考虑数据库的用途,和性能。所以很多参数都用的是默认值,要是想搞一个性能优良的数据库,还是要详细阅oracle读联机文档,了解每个参数的用途。
1.建立所需的目录
1.$oracle_home/admin
2.$oracle_home/admin/oracle_sid/adump
3.$oracle_home/admin/oracle_sid/bdump ----alter_SID.log在这个目录中
4.$oracle_home/admin/oracle_sid/cdump
5.$oracle_home/admin/oracle_sid/dpdump
6.$oracle_home/admin/oracle_sid/pfile
7.$oracle_home/admin/oracle_sid/script
8.$oracle_home/oradata/oracle_sid/
2.创建相关文件
1.建pfile既数据库初始化文件($oracle_home/oracle_sid/dbs目录下)
2.建口令文件
3.准备建库脚本
4.运行catalog,catproc,pupbld
3.PFILE数据库初始化文件(initSID.ora)(本次实验中oracle实验中sid=wjtest)
wjtest.__db_cache_size=188743680
wjtest.__java_pool_size=4194304
wjtest.__large_pool_size=4194304
wjtest.__shared_pool_size=83886080
wjtest.__streams_pool_size=0
*.audit_file_dest='/u01/oracle/admin/wjtest/adump'
*.background_dump_dest='/u01/oracle/admin/wjtest/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u01/oracle/oradata/wjtest/control01.ctl','/u01/oracle/oradata/wjtest/control02.ctl','/u01/oracle/oradata/wjtest/control03.ctl'
*.core_dump_dest='/u01/oracle/admin/wjtest/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.
db_name='wjtest'
*.db_recovery_file_dest='/u01/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=wjtestXDB)'
*.job_queue_processes=10
*.log_archive_format='%t_%s_%r.dbf'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/oracle/admin/wjtest/udump'
4.建库脚本
create database wjtest
controlfile reuse
maxinstances 1
maxloghistory 1
maxlogfiles 5
maxlogmembers 5
maxdatafiles 100
SYSAUX DATAFILE '/u01/oracle/oradata/wjtest/sysaux01.dbf' size 30M
datafile '/u01/oracle/oradata/wjtest/system01.dbf' size 32M reuse
undo tablespace undotbs1
datafile '/$ORACLE_BASE/oradata/wjtest/undo01.dbf' SIZE 40M reuse
character set AL32UTF8
national character set UTF8
logfile
'/u01/oracle/oradata/wjtest/redo01.log' size 100M reuse,
'/u01/oracle/oradata/wjtest/redo02.log' size 100M reuse,
'/u01/oracle/oradata/wjtest/redo03.log' size 100M reuse
default temporary tablespace TEMP
tempfile '/u01/oracle/oradata/wjtest/temp01.dbf' size 50M reuse
5.用pfile文件初始化数据库到nomount状态
startup nomount pfile='$oracle_home/oracle_sid/dbs/initsid.ora'
生成spfile文件
create spfile from pfile;
运行建库脚本,在sqlplus中,'@+脚本绝对路径'就可以运行某个脚本。
执行脚本后等待,如果有错,oralce回关闭自己。
在$oracle_home/admin/bdump中的alert_SID.log 文件中可以找到报错的信息。
6.建库成功后要运行catalog,catproc
同上用@+绝对路径的方法执行这两个脚本。
到此建库就完成了,这个数据库已经可使用。
7.注意。
在oracle10G版本中建库的时候,一定要写SYSAUX DATAFILE,没加这句的话在建库的时候会报错
ORA-13504: No SYSAUX datafile clause specified