oracle的连接串有几部分构成,这里就按sqlplus为例,一个完成的连接串遵循下面格式
sqlplus 用户名/密码@主机:端口号/SID 可选as sysdba
复制
下面先讲只有listener没有tns的情况
2 listener
使用listener连接需要配置完整连接信息,这里分为两种连接方式,我们看一个listener的例子:
(带sid的listener使用netmgr增加listener的datavase services即可出现sid的配置)
LISTENER2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = iZbp1d4tisi44j6vxze02fZ)(PORT = 1522))
)
SID_LIST_LISTENER2 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = gdn1400)
(ORACLE_HOME = /fdisk1/oracle1400/base/dbhome_1)
(SID_NAME = orcl1400)
)
)
ADR_BASE_LISTENER2 = /fdisk1/oracle1400/base
LISTENER1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = iZbp1d4tisi44j6vxze02fZ)(PORT = 1521))
)
ADR_BASE_LISTENER1 = /fdisk1/oracle1400/base
复制
这里有两个listener,有sid的叫做静态listener,没有sid的叫做动态listener。在查看状态时存在区别:
lsnrctl status listener1
...
Services Summary...
Service "orcl1400" has 1 instance(s).
Instance "orcl1400", status READY, has 1 handler(s) for this service...
Service "orcl1400XDB" has 1 insta
你可以在安装软件后再创建数据库,这个数量可以是多个。安装ORACLE时,如选择仅安装软件,则安装结束后无数据库。你可以继续创建数据库。实例是一个正在进行时的概念,每当启动一个数据库时,ORACLE会依照初始化参数文件spfile的记录分配内存,启动进程,查找相关文件,而当数据库关闭后,实例的寿命也就终止了,再启动就是一个新的实例,可以简单理解为实例就是内存和进程的集合,与物理文件没有关联,你完全可以删除实例,然后用oradmin来创建一个新实例,然后启动数据库,只要物理文件没有问题。多个实例可对应一个数据库,它们共同 *** 作同一数据文件。但你要说多个数据库,应该是指要创建不同的物理文件,而一个实例不能管理多个数据库。
一个数据库创建多个实例1. 先要关闭数据库(进程和内存关闭)
[Oracle@oracle_2 ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on TueNov 12 20:34:53 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>exit
2. 设置环境变量
[oracle@oracle_2 ~]$ vi .bash_profile
此时环境变量已经设置好了
3. 创建目录
i. 创建相关文件
此时我们可以看见已经有了相关目录,那是我们之前创建的实例ORCL的相关目录
创建目录是采用了批量创建目录{a,b,c,u}dump
[oracle@oracle_2 ~]$ cd $ORACLE_BASE
[oracle@oracle_2 oracle]$ ls
admin flash_recovery_area oradata oraInventory product
[oracle@oracle_2 oracle]$
[oracle@oracle_2 oracle]$ mkdir -p admin/ORA10G/{a,b,c,u}dump
[oracle@oracle_2 oracle]$ ls
admin flash_recovery_area oradata oraInventory product
[oracle@oracle_2 oracle]$ cd admin/
[oracle@oracle_2 admin]$ ls
ORA10G ORCL
[oracle@oracle_2 admin]$ cd ORA10G/
[oracle@oracle_2 ORA10G]$ ls
adump bdump cdump udump
[oracle@oracle_2 ORA10G]$
[oracle@oracle_2 ORA10G]$ ls
adump bdump cdump udump
[oracle@oracle_2 ORA10G]$ cd ..
[oracle@oracle_2 admin]$ ls
ORA10G ORCL
[oracle@oracle_2 admin]$ cd ..
[oracle@oracle_2 oracle]$ ls
admin flash_recovery_area oradata oraInventory product
[oracle@oracle_2 oracle]$ mkdir -p oradata/ORA10G
[oracle@oracle_2 oracle]$
ii. 创建密码文件
创建密码文件需要到ORACLE_HOME/dbs目录下创建
[oracle@oracle_2 10.2.0]$ cd $ORACLE_HOME/dbs
[oracle@oracle_2 dbs]$ ls
hc_ORCL.dat initdw.ora init.ora lkORCL orapwORCL spfileORCL.ora
[oracle@oracle_2 dbs]$ orapwd
Usage: orapwd file=<fname>password=<password>entries=<users>force=<y/n>
where
file -name of password file (mand),
password- password for SYS (mand),
entries -maximum number of distinct DBA andforce - whether to overwrite existing file (opt),
OPERs (opt),
There areno spaces around the equal-to (=) character.
[oracle@oracle_2 dbs]$ orapwd file=orapwORA10Gpassword=oracle entries=30
[oracle@oracle_2 dbs]$ ls
hc_ORCL.dat init.ora orapwORA10G spfileORCL.ora
initdw.ora lkORCLorapwORCL
[oracle@oracle_2 dbs]$
[oracle@oracle_2 dbs]$ cat init.ora |grep -v^#|grep -v ^$ >initORA10G.ora
[oracle@oracle_2 dbs]$ ls
hc_ORCL.dat init.oralkORCL orapwORCL
initdw.ora initORA10G.ora orapwORA10G spfileORCL.ora
[oracle@oracle_2 dbs]$
[oracle@oracle_2 dbs]$ vi initORA10G.ora
将内容改的和下面的一样
db_name=ORA10G
db_files = 80# SMALL
db_file_multiblock_read_count = 8 #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 = false
control_files =(/u01/app/oracle/oradata/ORA10G/ora_control1.ctl,/u01/app/oracle/oradata/ORA10G/ora_control2.ctl)
sga_max_size=300m
sga_target=300m
4. 启动实例为ORA10G的数据库
[oracle@oracle_2 dbs]$ export $ORACLE_SID=ORA10G
[oracle@oracle_2 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on TueNov 12 21:08:55 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SYS@ORA10G>
SYS@ORA10G>create spfile from pfile
File created.
SYS@ORA10G>startup nomount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 96470416 bytes
Database Buffers 213909504 bytes
Redo Buffers2973696 bytes
SYS@ORA10G>
SYS@ORA10G>show parameter undo
NAME TYPEVALUE
------------------------------------ -----------------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string
SYS@ORA10G>
修改参数,由于undo_management参数为静态参数,所以需要加上scope=spfile
SYS@ORA10G>alter system set undo_management=autoscope=spfile
System altered.
SYS@ORA10G>show parameter undo
NAME TYPEVALUE
------------------------------------ -----------------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string
SYS@ORA10G>shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
此时发现并没有更改,是由于静态参数需要重启才有效
SYS@ORA10G>startup nomount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 96470416 bytes
Database Buffers 213909504 bytes
Redo Buffers2973696 bytes
SYS@ORA10G>
此时只是改了spfile的参数还需要改pfile的参数
SYS@ORA10G>create pfile from spfile
File created.
SYS@ORA10G>
5. 多个实例的切换
i. 实例为ORCL启动数据库
[oracle@oracle_2 dbs]$ export ORACLE_SID=ORCL
[oracle@oracle_2 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on TueNov 12 21:19:19 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SYS@ORCL>
ii. 实例为ORCL10G启动数据库
SYS@ORCL>exit
Disconnected
[oracle@oracle_2 dbs]$ export ORACLE_SID=ORA10G
[oracle@oracle_2 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on TueNov 12 21:24:54 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SYS@ORA10G>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)