1. 实例: instance, 是一个内存区域和一堆后台进程, oracle shutdown, 实例就删除了.
2. 数据库: 你说的实际上是如何删除一个数据库.
此时,一个新的oracle实例就添加完毕了,很多时候我们需要所有的实例都是开机自启动,则需要做以下的修改:
新增下面一行
[root@centoscms oracle]# vi /etc/oratab
cms:/oracle/app/product/10.2.0/db_1:Y
mydb:/oracle/app/product/10.2.0/db_1:Y
然后拷贝一份:
[root@centoscms oracle]# cp /etc/oratab /var/opt/oracle/oratab
重启服务器:
[root@centoscms oracle]# reboot
如果需要远程链接,监听中增加此实例即可。修改listener.ora:
[root@centoscms oracle]# su - oracle
[oracle@centoscms ~]$ cd $ORACLE_BASE/product/10.2.0/db_1/network/admin
[oracle@centoscms ~]$ vi listener.ora
增加节点:
(SID_DESC =
(GLOBAL_DBNAME = mydb)
(ORACLE_HOME = /oracle/app/product/10.2.0/db_1)
(SID_NAME = mydb)
)
重启oracle就可以连上啦。。。
#以下是创建实例的过程
# sid must be valid and env ORACLE_BASE must be exist
sid=$1
if [ -z "$sid" -o -z "$ORACLE_BASE" -o -z "$ORACLE_HOME"] then
echo "sid name is invalid or oracle_base unset"
exit;
fi
#set sid env
export ORACLE_SID=$sid;
export DATABASE_SPACE_UNDO=UNDOTBS1001
# create dir of sid
mkdir -p $ORACLE_BASE/admin/$sid/adump;
mkdir -p $ORACLE_BASE/admin/$sid/bdump;
mkdir -p $ORACLE_BASE/admin/$sid/cdump;
mkdir -p $ORACLE_BASE/admin/$sid/udump;
mkdir -p $ORACLE_BASE/admin/$sid/pfile;
mkdir -p $ORACLE_BASE/oradata/$sid;
#create ora password file
orapwd file=${ORACLE_HOME}/dbs/orapw${sid} password=${sid} entries=5 force=y;
#create .ora file for init your sid
cp ${ORACLE_HOME}/dbs/init.ora ${ORACLE_HOME}/dbs/init${sid}.ora
#edit .ora file
#as follow is exmple for .ora file
cat > ${ORACLE_HOME}/dbs/init${sid}.ora << EOF
##############################################################################
# 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=${sid}
###########################################
# Diagnostics and Statistics
###########################################
background_dump_dest=/oracle/admin/${sid}/bdump
core_dump_dest=/oracle/admin/${sid}/cdump
user_dump_dest=/oracle/admin/${sid}/udump
###########################################
# File Configuration
###########################################
control_files=("/oracle/oradata/${sid}/control01.ctl", "/oracle/oradata/${sid}/control02.ctl", "/oracle/oradata/${sid}/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
###########################################
# Network Registration
###########################################
##local_listener=LISTENER_BLOG
###########################################
# Processes and Sessions
###########################################
processes=150
###########################################
# SGA Memory
###########################################
sga_target=605028352
###########################################
# Security and Auditing
###########################################
audit_file_dest=/oracle/admin/${sid}/adump
remote_login_passwordfile=EXCLUSIVE
###########################################
# Shared Server
###########################################
dispatchers="(PROTOCOL=TCP) (SERVICE=mydbXDB)"
###########################################
# Sort, Hash Joins, Bitmap Indexes
###########################################
pga_aggregate_target=201326592
###########################################
# System Managed Undo and Rollback Segments
###########################################
undo_management=AUTO
undo_tablespace=$DATABASE_SPACE_UNDO
EOF
# create database
sqlplus / as sysdba << EOF
SHUTDOWN immediate;
startup nomount pfile=/oracle/product/10.2.0//dbs/init${sid}.ora;
CREATE DATABASE ${sid}
CONTROLFILE REUSE
LOGFILE GROUP 1 (‘/oracle/oradata/${sid}/redo01.log‘) SIZE 10M REUSE,
GROUP 2 (‘/oracle/oradata/${sid}/redo02.log‘) SIZE 10M REUSE,
GROUP 3 (‘/oracle/oradata/${sid}/redo03.log‘) SIZE 10M REUSE
DATAFILE ‘/oracle/oradata/${sid}/system01.dbf‘ SIZE 500M
EXTENT MANAGEMENT LOCAL
sysaux datafile ‘/oracle/oradata/${sid}/sysaux01.dbf‘ size 120M reuse autoextend on next 10240K maxsize unlimited
UNDO TABLESPACE ${DATABASE_SPACE_UNDO} DATAFILE ‘/oracle/oradata/${sid}/undotbs01.dbf‘ SIZE 500M
DEFAULT TEMPORARY TABLESPACE TEMP
TEMPFILE ‘/oracle/oradata/${sid}/temp01.dbf‘ SIZE 500M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10M
NOARCHIVELOG
MAXDATAFILES 1000
CHARACTER SET UTF8
NATIONAL CHARACTER SET UTF8
MAXLOGFILES 10;
@?/rdbms/admin/catalog.sql;
@?/rdbms/admin/catproc.sql;
@?/sqlplus/admin/pupbld.sql;
exit;
EOF