今天运维给装了个虚拟机可是oracle启动一直报shared pool大小不足,这个下一篇会谈到解决办法,解决了这个问题后数据库启动不了,于是不得不手工建库:
1. 建立需要的目录
mkdir -p /oracle/product/10204/admin/bdump
mkdir -p /oracle/product/10204/admin/cdump
mkdir -p /oracle/product/10204/admin/dpdump
mkdir -p /oracle/product/10204/admin/udump
mkdir -p /oracle/product/10204/admin/adump
mkdir -p /oracle/product/10204/archive
mkdir -p /oracle/product/10204/oradata
mkdir -p /oracle/product/10204/flash_recovery_area
2、
$ export ORACLE_BASE=/oracle
$ export ORACLE_HOME=$ORACLE_BASE/product/1024
$ export ORACLE_SID=test
3、创建初始化参数文件
##############################################################################
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
##############################################################################
###########################################
# Cache and I/O
###########################################
db_block_size=8192
db_file_multiblock_read_count=16
###########################################
# Cursors and Library Cache
###########################################
open_cursors=300
###########################################
# Database Identification
###########################################
db_domain=""
db_name=traveldb
###########################################
# Diagnostics and Statistics
###########################################
background_dump_dest=/oracle/admin/traveldb/bdump
core_dump_dest=/oracle/admin/traveldb/cdump
user_dump_dest=/oracle/admin/traveldb/udump
###########################################
# File Configuration
###########################################
control_files=("/oradata/traveldb/control01.ctl", "/oradata/traveldb/control02.ctl", "/oradata/traveldb/control03.ctl")
db_recovery_file_dest=/oracle/flash_recovery_area
db_recovery_file_dest_size=2147483648
###########################################
# Job Queues
###########################################
job_queue_processes=10
###########################################
# Miscellaneous
###########################################
compatible=10.2.0.1.0
###########################################
# Processes and Sessions
###########################################
processes=150
###########################################
# SGA Memory
###########################################
sga_target=551550976
###########################################
# Security and Auditing
###########################################
audit_file_dest=/oracle/admin/traveldb/adump
remote_login_passwordfile=EXCLUSIVE
###########################################
# Shared Server
###########################################
dispatchers="(PROTOCOL=TCP) (SERVICE=traveldbXDB)"
###########################################
# Sort, Hash Joins, Bitmap Indexes
###########################################
pga_aggregate_target=183500800
###########################################
# System Managed Undo and Rollback Segments
###########################################
undo_management=AUTO
undo_tablespace=UNDOTBS1
5. 建spfile后启动实例并开始建库
$ sqlplus '/as sysdba'
SQL> startup nomount pfile=$ORACLE_HOME/dbs/init.ora.112012153040
SQL> create spfile from pfile; 重启用spfile再进入nomount状态,
SQL> start create.sql /
create.sql:
create database traveldb
user sys identified by oracle
user system identified by oracle
logfile group 1 ('/oradata/redo01.log') size 50m,
group 2 ('/oradata/redo02.log') size 50m,
group 3 ('/oradata/redo03.log') size 50m
maxlogfiles 5 maxlogmembers 5 maxloghistory 1
maxdatafiles 100 maxinstances 1
character set zhs16gbk national character set al16utf16
datafile '/oradata/system01.dbf' size 500m reuse
extent management local
sysaux datafile '/oradata/sysaux01.dbf' size 250m autoextend on next 10M maxsize unlimited
default temporary tablespace temp
tempfile '/oradata/temp01.dbf' size 260m reuse
undo tablespace UNDOTBS1 datafile '/oradata/undotbs01.dbf' size 60m reuse autoextend on maxsize 500M
6. 运行数据字典脚本,
SQL> @?/rdbms/admin/catalog.sql (建数据字典视图)
SQL> @?/rdbms/admin/catproc.sql (建存储过程包)
SQL> @?/rdbms/admin/catblock.sql (建锁相关的几个视图)
SQL> @?/rdbms/admin/catoctk.sql (建密码工具包dbms_crypto_toolkit)
SQL> @?/rdbms/admin/owminst.plb (建工作空间管理相关对象,如dmbs_wm)
7. 新建sqlplus属性和帮助、USERS表空间
SQL> alter user sys identified by oracle;
SQL> alter user sys identified by oracle;
SQL> connect system/oracle
SQL> @?/sqlplus/admin/pupbld.sql
SQL> @?/sqlplus/admin/help/hlpbld.sql helpus.sql
SQL> connect /as sysdba
SQL> CREATE TABLESPACE USERS LOGGING DATAFILE '/oracle/product/10204/oradata/users01.dbf' SIZE 100M REUSE AUTOEXTEND ON NEXT 10m MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
SQL> ALTER DATABASE DEFAULT TABLESPACE USERS;
SQL> ALTER USER SYS TEMPORARY TABLESPACE TEMP;
8. 修改为归档模式并重启
SQL> shutdown immediate;
SQL> connect /as sysdba
SQL> startup mount
SQL> alter database archivelog;
SQL> alter database open;
重新编译所有失效过程:
SQL> execute utl_recomp.recomp_serial();
SQL> create pfile from spfile;
9 要远程连接:$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=123456 force=y