1、 初始化参数REMOTE_LOGIN_PASSWORDFILE作用是什么?与密码文件有什么关系?
很多时候需要在nomount,mount等状态对数据库进行处理,所以通常要求sysdba权限如果属于本地DBA组,可以通过操作系统认证登陆;如果是远程sysdba登陆,需要通过passwordfile认证登陆
●remote_login_passwordfile=none
▲不使用密码文件登录(只能通过操作系统认证登录)。
▲不允许远程用户用sys登录系统。
▲可以在线修改sys的密码。
●remote_login_passwordfile=exclusive
▲只允许一个数据库使用该密码文件。
▲允许远程登录。
▲允许非sys用户以sysdba身份管理数据库。
▲可以在线修改sys的密码。
●remote_login_passwordfile=shared
▲可以多个数据库使用密码文件。实际上是这样的: Oracle数据库在启动时,首先查找的是orapw<sid>的口令文件,如果该文件不存在,则开始查找,orapw的口令文件,如果口令文件命名为orapw,多个数据库就可以共享。
▲允许远程登录。
▲只能用sys进行sysdba管理。
▲可以在线修改sys的密码。
2、 Oracle 启动方式、关闭方式
对于oracle的启动方式以前在工作中也没有仔细研究过,今天在看文档的时候知道oracle有4种启动方式,在此总结一下:
1,startup nomount:又称非安装启动方式,这种方式可以执行以下操作,重建control files,重建database,启动instance(SGA+后台进程),这种启动方式只需要有init.ora文件。(参数文件)
注:对于instance,如果把oracle比作一部汽车,instance相当于汽车的发动机一样,启动oracle前提应先启动instance。
2,startupmount dbname:又称安装启动方式,这种方式可以执行以下操作,数据库logfiles归档,恢复database,重命名数据库文件名(系统tablespace或logfiles)。执行“nomount”,然后打开control files。
3,startupopen dbname:此方式将首先执行“nomount”,然后执行“mount”,再打开包括Redolog files在内的所有数据库文件,这种方式下可访问数据库中的数据。
4,startup等于以下三个命令:
startup nomount
alter database mount
alter database open
关闭:
1、正常关闭
正常关闭数据库所用的选项是normal,数据库在关闭前将检查所有的连接,并且发出命令后不允许再有新的用户连接,在等待所有连接都断开后再关闭数据库,再次启动数据库不需要任何恢复过程。
联入sys用户
sql>shutdown normal;
2、紧急关闭
该方式用在某些紧急的情况下,比如通知马上停电,此时需要紧急关闭数据库以应付这些情况。这种方式用的选项是immediate,在这种方式下并不等待所有的用户断开连接再关闭,而是由系统断开连接,然后关闭数据库。
sql>shutdown immediate;
一旦执行了这条命令,则将当前正在处理的sql语句马上停止,然后将所有未提交的事务回退,并且不等待当前联入数据库的用户断开连接,而是由系统强行将各个联接断开。在下次启动数据库时要执行恢复动作,不过是由系统自动执行的,用户不必去了解它。
3、异常关闭
异常关闭选项是abort,此种方式下系统并不做任何检查和断开用户操作以及回退操作,而是直接将数据库现场撤销,这样现场中的数据库数据当然就无效了,数据库自然也就被关掉了。
sql>shutdown abort;
以abort方式关闭数据库时只有一行关闭信息表示关闭了数据库现场。以abort方式关闭的数据库再次启动时必须要进行恢复动作,这些恢复操作同样是系统自动来完成的,需要的时间较长。
3、oracle网络服务解析的5种方法
1、OracleInternet Directory
2、ExternalNaming
3、主机命名
4、Oracle Easy Connect
5、本地命名
第四种:OracleEasy Connect
使用oracle easy connect naming必须满足以下要求
1、oracle net services 10g必须安装在客户端
2、客户端及服务器端必须支持TCP/IP,并启用
3、不允许高级连接描述符特性,如:连接池、外部过程调用
配置oracleeasy connect naming
在sqlnet.ora增加下面这行:
NAMES.DIRECTORY_PATH=(EZCONNECT,TNSNAMES) #注意增加了EZCONNECT
oracle easy connect naming方法示例
eg:
connect scott/tiger@hostname:port/servicesname
connect scott/tiger@//hostname/servicesname
解释:
语法构件 描述
// 任选:通过URL连接时使用
hostname 必选: 主机名或IP
port 任选:端口号
servicesname 必选:oracle服务的名称
第五种:本地命名法
本地命名方法也被称为tnsnames.ora方法
可用Oraclenet manager配置本地命名方法(当然也可以用OEM)
打开Oraclenet manager,在Local选项中选择ServiceNaming进行添加,添加好的tnsnames.ora内容如下:
eg:
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.61)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = dg1)
)
)
TEST为网络服务名,SERVICE_NAME为oracle的服务名