oracle 11g手工创建数据库

时间:2021-11-27 08:30:07
oracle 11g手工创建数据库
1、在dbs目录下创建dog.env文件
ORACLE_BASE=/u01
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=dog
ORACLE_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_NLS33 PATH LD_LIBRARY_PATH
2、在dbs目录下创建口令文件orapwdog
orapwd file=orapwdog password=dog entries=10
3、在dbs目录下创建pfile文件initdog.ora
aq_tm_processes=1
compatible='11.2.0.0.0'
control_files='/u01/oradata/dog/control01.ctl','/u01/oradata/dog/control02.ctl','/u01/oradata/dog/control03.ctl'
core_dump_dest='/u01/admin/dog/cdump'
db_block_size=8192
db_cache_size=16777216
db_domain=''
db_file_multiblock_read_count=32
db_name='dog'
dispatchers='(PROTOCOL=TCP) (SERVICE=dogXDB)'
fast_start_mttr_target=300
hash_area_size=1048576
_hash_join_enabled=TRUE
instance_name='dog'
java_pool_size=16777216
job_queue_processes=10
large_pool_size=16777216
log_archive_dest_1='LOCATION=/u01/oradata/dog/archive'
log_archive_format='%t_%s_%r.dbf'
open_cursors=300
pga_aggregate_target=33554432
processes=150
query_rewrite_enabled='TRUE'
remote_login_passwordfile='EXCLUSIVE'
shared_pool_size=83886080
sort_area_size=1048576
star_transformation_enabled='TRUE'
timed_statistics=TRUE
undo_management='AUTO'
undo_retention=10800
undo_tablespace='UNDOTBS1'


--问题:
1.11g的版本hash_join_enabled参数变为了_hash_join_enabled,如果不改成这个
会报错。
2.11g版本的log_archive_format='%t_%s_%r.dbf'而不再是log_archive_format='%t_%s.dbf'
3.ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
这个是因为11g中 log_archive_start=true 参数多余,且不再用参数
background_dump_dest='/u01/admin/dog/bdump'和user_dump_dest='/u01/admin/dog/udump'
4、创建需要的目录
/u01/admin/dog/udump
/u01/admin/dog/bdump
/u01/admin/dog/ddump
/u01/oradata/dog/archive


5、在dbs目录下创建数据库脚本dogdb.sql
spool dbcreate.log;
CREATE DATABASE "dog"
     MAXDATAFILES 500
     MAXINSTANCES 8
     MAXLOGFILES  32
     CHARACTER SET "UTF8"
     NATIONAL CHARACTER SET AL16UTF16
     SYSAUX DATAFILE '/u01/oradata/dog/sysaux01.dbf' size 300M
     ARCHIVELOG
     DATAFILE
          '/u01/oradata/dog/system01.dbf' size 300M
     EXTENT MANAGEMENT LOCAL
     DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/u01/oradata/dog/tempts01.dbf' SIZE 100M EXTENT MANAGEMENT LOCAL
     UNDO TABLESPACE "UNDOTBS1"
     DATAFILE '/u01/oradata/dog/undotbs01.dbf' SIZE 200M 
     LOGFILE 
  GROUP 1 (
        '/u01/oradata/dog/redo01a.rdo',
        '/u01/oradata/dog/redo01b.rdo'
      )SIZE 100M,
  GROUP 2 (
        '/u01/oradata/dog/redo02a.rdo',
        '/u01/oradata/dog/redo02b.rdo'
      )SIZE 100M,
  GROUP 3 (
        '/u01/oradata/dog/redo03a.rdo',
        '/u01/oradata/dog/redo03b.rdo'
      )SIZE 100M
;
spool off;


6、给dog.env增加执行权限,更改session级环境变量,执行dog.env文件
chmod +x dog.env
. ./dog.env
--问题:这一步需注意执行这个文件的方式。
7、创建spfile文件spfiledog.ora
sqlplus /nolog
conn /as sysdba
create spfile from pfile;
8、启动数据库进入nomount状态
startup nomount;
--问题:ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
参数问题,上面的步骤中描述过
9、创建数据库,执行语句
@$ORACLE_HOME/dbs/dogdb.sql
--问题:ORA-13504: No SYSAUX datafile clause specified
11g手工创建数据库的时候,必须创建SYSAUX DATAFILE
10、创建用户表空间 dog_tbs
create tablespace dog_tbs datafile '/u01/oradata/dog/dog_tbs01.dbf' size 100M extent management local;
11、创建数据字典,重要的三个
spool catalog.log
@?/rdbms/admin/catalog.sql
spool catproc.log
@?/rdbms/admin/catproc.sql
spool pupbld.log
@?/sqlplus/admin/pupbld.sql
spool off
--问题:基本上不会有什么问题,注意执行的命令格式。以后有sql脚本,可以通过此方式执行
12、数据字典创建完毕后,关闭数据库,然后重启,验证数据库是否成功
shutdown immediate
exit
sqlplus /nolog
conn /as sysdba
startup
select * from dual;