Oracle 主要配置文件介绍

Oracle 主要配置文件介绍:

profile文件,oratab 文件,数据库实例初始化文件 initSID.ora,监听配置文件, sqlnet.ora 文件,tnsnames.ora 文件


1.2 Oracle 主要配置文件介绍
 1.2.1 /etc/profile 文件
               系统级的环境变量一般在/etc/profile 文件中定义 在 CAMS 系统 与数据库
               相关的环境变量就定义在/etc/profile 文件中 如下所示
               export ORACLE_BASE=/u01/app/oracle
               export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
               export PATH=$PATH:$ORACLE_HOME/bin
               export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
               export ORACLE_SID=cams
               export ORACLE_TERM=vt100
               export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
               export NLS_LANG=AMERICAN.ZHS16CGB231280
               & 说明
                  1 配置上述环境变量要注意定义的先后顺序 如 定义 ORACLE_HOME
               时 用 到 了 ORACLE_BASE         那 么 ORACLE_HOME 的 定 义 应 该 在
               ORACLE_BASE之后
                  2   在使用中文版 CAMS 时 环境变量 NLS_LANG 的值应该设置为
               AMERICAN.ZHS16CGB231280 如上所示             在使用英文版 CAMS时 可
               以不设置 NLS_LANG 即去掉 export NLS_LANG=... ... 那一行 也可以
               设置 NLS_LANG 的值为 AMERICAN_AMERICA.US7ASCII


1.2.2 /etc/oratab 文件
              /etc/oratab 文件描述目前系统中创建的数据库实例 以及是否通过 dbstart 和
              dbshut 来控制该实例的启动与关闭 如下所示 忽略以#开头的注释部分 :
              cams:/u01/app/oracle/product/8.1.7:Y
              其中 cams 为实例 ID /u01/app/oracle/product/8.1.7为 ORACLE_HOME目
              录 Y表示允许使用 dbstart和 dbshut 启动和关闭该实例数据库 如果设置为
              N 表示不通过 dbstart 和 dbshut 启动和关闭实例数据库 CAMS 系统要求在
              安装完 ORACLE 后要求将该参数修改为 Y 以保证 ORACLE 数据库自启动
              和关闭
             
             

1.2.3 数据库实例初始化文件 initSID.ora
              每个数据库实例都有一个初始化 参数文件 其缺省 存放的路径为
              $ORACLE_BASE/admin/<SID>/pfile 其名称为 init<SID>.ora 如 cams 实
              例 对 应 的 参 数 文 件 为 initcams.ora 缺 省 存 放 路 径 为
              $ORACLE_BASE/admin/cams/pfile 即/u01/app/oracle/admin/cams/pfile
              但 在 CAMS 应 用 中 initcams.ora 的 存 放 路 径 为
              /u02/app/oracle/admin/cams/pfile 这是基于数据与应用程序分开存放更好地
              保护数据考虑的 尤其在 CAMS 双机应用模式下 能够保证数据的一致性
              具体的修改操作可参考 Linux与 Oracle 安装手册
              初始化参数文件是一个包含实例配置参数的文本文件 这些参数被设置为特
              定的值 用于初始化 Oracle 实例的多数内存和进程设置 以下是一些主要参
              数的说明
                1 实例的数据库名称
              db_name = "cams"
                2 实例名称
              instance_name = cams
                3 数据库控制文件的名称和位置
              control_files = ("/u02/app/oracle/oradata/cams/control01.ctl",
              "/u02/app/oracle/oradata/cams/control02.ctl",
              "/u02/app/oracle/oradata/cams/control03.ctl")
                4 调度作业队列的 SNP 进程的数量以及 SNP 进程觉醒时间间隔 秒
              JOB_QUEUE_PROCESSES=2
              JOB_QUEUE_INTERVAL=60

                5 存储追踪和告警文件的路径
              user_dump_dest 指定记录 Oracle 用户进程产生的追踪和告警信息的文件的
              存放路径 background_dump_dest 指定记录 Oracle 后台进程产生的追踪和
              告警信息的文件的存放路径 core_dump_dest指定Oracle运行所产生的core
              dump 信息的文件的存放路径
              background_dump_dest = /u02/app/oracle/admin/cams/bdump
              core_dump_dest = /u02/app/oracle/admin/cams/cdump
              user_dump_dest = /u02/app/oracle/admin/cams/udump
              
               6 UTL_FILE_DIR 参数
              UTL_FILE_DIR = *
              UTL_FILE_DIR 参数指定一个或多个目录用于 Oracle 应用的文件 I/O 如备
              份数据到文件 在 CAMS 系统中将该值设置为 * 表示可供 Oracle 应
              用进行文件 I/O操作的目录为任意目录 因此 只要空间允许 可以将备份数
              据存放到任意目录下


1.2.4 监听配置文件
              为了使得外部进程 如 CAMS后台程序 能够访问 Oracle 数据库 必须配
              置 Oracle 网络服务器环境 配置 Oracle 网络服务器环境是通过配置
              listener.ora sqlnet.ora 和 tnsnames.ora 共三个文件来进行的 listener.ora
              即监听配置文件 在本小节说明 另两个文件分别在随后的两个小节说明
              监听配置文件 listener.ora 的存放路径为 $ORACLE_HOME/network/admin
              以下是一个示例
              LISTENER =                          #监听器名称
                 (DESCRIPTION_LIST =
                   (DESCRIPTION =
                     (ADDRESS_LIST =
                       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
                     )
                     (ADDRESS_LIST =
                       (ADDRESS =
              (PROTOCOL = TCP)
              (HOST = localhost.localdomain)
              (PORT = 1521))
                     )
                   )
                   (DESCRIPTION =
                     (PROTOCOL_STACK =
                       (PRESENTATION = GIOP)
                       (SESSION = RAW)
                     )
                     (ADDRESS =
              (PROTOCOL = TCP)
              (HOST = localhost.localdomain)
              (PORT = 2481))

                     )
                )
               
SID_LIST_LISTENER = #命名规则 SID_LIST_+上面定义的监听器名称
  (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc1)
       (ORACLE_HOME = /u01/app/oracle/product/8.1.7)
       (PROGRAM = extproc)
     )
     (SID_DESC =
       (GLOBAL_DBNAME = cams)
       (ORACLE_HOME = /u01/app/oracle/product/8.1.7)
       (SID_NAME = cams)
     )
     (SID_DESC =
       (GLOBAL_DBNAME = oid)
       (ORACLE_HOME = /u01/app/oracle/product/8.1.7)
       (SID_NAME = oid)
     )
  )


& 说明
  1 listener.ora 文件中定义一个监听器 其缺省的名称为 LISTENER
这个监听器缺省以tcp/ip为协议地址且端口号为1521运行 在CAMS应用中
监听文件定义的监听器就使用这个缺省名字 并且使用缺省的协议 tcp/ip
和缺省的端口号 1521 待配置好监听文件以及随后说明的 sqlnet.ora 和
tnsnames.ora 文件之后 就可以用以下命令将监听文件中定义的监听器启动
起来
     $ lsnrctl start
停止监听器的命令为
     $ lsnrctl stop
监测监听器当前状态的命令为
     $ lsnrctl status
当 lsnrctl status 命令有如下输出结果
     STATUS of the LISTENER
     ------------------------
     Alias                  LISTENER
     Version                 TNSLSNR for Linux: Version 8.1.7.4.0 - Production
     Start Date               17-JAN-2004 19:00:08
     Uptime                  31 days 15 hr. 27 min. 59 sec
就说明监听器正在运行 否则说明监听器已经停止了 CAMS 系统的后台程
序的正常运行不仅依赖于数据库实例的运行 还依赖于这个数据库监听器的
运行 假如监听器没有启动 即使数据库已经启动 CAMS 后台程序仍然不
能正常工作
  2 如(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))所示的一个
IPC 协议地址的监听 是为了外部进程调用用的 在数据库安装时自动设定
不需要改动

  3 在监听文件后部还有一个 SID_LIST_LISTENER 段 该段用于定义监听
器的服务 即为哪些数据库实例提供监听服务 以 cams 实例为例 其对应的
服务信息为
   (SID_DESC =
    (GLOBAL_DBNAME = cams) #数据库名
     (ORACLE_HOME = /u01/app/oracle/product/8.1.7)
    (SID_NAME = cams) #数据库实例名
)


1.2.5 sqlnet.ora 文件
              sqlnet.ora 文件的存放路径为 $ORACLE_HOME/network/admin 以下是一
              个示例

NAMES.DEFAULT_DOMAIN = localdomain
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
& 说明
NAMES.DEFAULT_DOMAIN 指定网络域名 NAMES.DIRECTORY_PATH
指定当解析客户端连接标识符时命名方法 naming metthods 采用的优先顺
序 从左至右递减        在 CAMS 应用中 这两个参数采用上述所示的系统缺
省值

 

1.2.6 tnsnames.ora 文件
tnsnames.ora 文件的存放路径为 $ORACLE_HOME/network/admin 以下
是一个示例
OID.LOCALDOMAIN =
  (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =
1521))
     )
     (CONNECT_DATA =
       (SERVICE_NAME = oid)
     )
  )
CAMS.LOCALDOMAIN =
  (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =
1521))
     )
     (CONNECT_DATA =
       (SERVICE_NAME = cams)
     )
  )
INST1_HTTP.LOCALDOMAIN =
  (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =

1521))
     )
     (CONNECT_DATA =
       (SERVER = SHARED)
       (SERVICE_NAME = MODOSE)
       (PRESENTATION = http://admin)
     )
   )
EXTPROC_CONNECTION_DATA.LOCALDOMAIN =
   (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
     )
     (CONNECT_DATA =
       (SID = PLSExtProc1)
       (PRESENTATION = RO)
     )
   )
 

& 说明
tnsnames.ora 文件中定义一个或多个网络服务 net service    cams 实例对
应的网络服务为
CAMS.LOCALDOMAIN =
  (DESCRIPTION =
   (ADDRESS_LIST =
    (ADDRESS =
      (PROTOCOL = TCP)
       (HOST = localhost.localdomain)
       (PORT = 1521))
    )
   (CONNECT_DATA =
    (SERVICE_NAME = cams)
   )
 )
注意 这里 ADDRESS项包含三个子参数 PROTOCOL HOST 和 PORT
要确保在监听文件中也有对应的一个 ADDRESS 项也包含同样的三个子参
数 并且子参数的值对应都相等 另外 这里 SERVICE_NAME 的值必需确
保与监听文件中某 SID_DESC项下的 SID_NAME参数的值相等

 

启动和关闭数据库
dbstart 和 dbshut 的使用;以及使用 sqlplus 或 svrmgrl启动和关闭数据库。


dbstart 和 dbshut 的使用
        dbstart 用于启动数据库实例 dbshut 用于关闭数据库实例 这两个脚本命令
        都需要以 oracle 用户执行 假设控制文件/etc/oratab 有如下两个描述项
        cams:/u01/app/oracle/product/8.1.7:Y
        oid:/u01/app/oracle/product/8.1.7:N
        那么以 oracle 用户执行 dbstart 系统会试图启动 cams 数据库实例 但不会
        试图启动 oid 数据库实例

2.2 使用 sqlplus 或 svrmgrl启动和关闭数据库
 2.2.1 启动数据库 
               使用 sqlplus 启动数据库的操作如下
               
                 1 以 oracle 用户执行命令
               $ sqlplus /nolog
                进入到 sqlplus 命令交互状态 提示符为"SQL>"
                  2 在 sqlplus 命令交互状态下执行以下 sqlplus 命令
               connect /as sysdba
                  3 在 sqlplus 命令交互状态下执行启动数据库的命令
               startup
                    
               注意
               如果在你的机器上存在多个实例 例如有两个实例 cams 和 oid 这时用上
               述操作启动数据库时所启动的数据库实例要取决于环境变量 ORACLE_SID
               的值 因为在/etc/profile 文件中设置有一行
               export ORACLE_SID=cams
               因此 cams 是缺省的实例 上述操作都是启动 cams 实例 如果需要启动 oid
               实例 只需执行以下环境变量设置命令
               export ORACLE_SID=oid
               将环境变量 ORACLE_SID 的值设置为 oid         然后再继续执行上述启动数
               据库的操作就可以了


& 说明
需要进一步说明的是 启动数据库的命令 即 startup 在执行过程中会依次
经历三个步骤 1 启动实例 2 装配数据库 将实例与指定数据库关联
3 打开数据库 通常启动数据库时 这三个步骤都是必需的 但在有些特殊
应用场合要求只执行前一个步骤或前两个步骤 对应的命令如下
  startup nomount Oracle 启动实例 即分配相关内存并启动后台进程
但不装配数据库 该命令通常用于创建一个新数据库或创建新的控制文件的
情形
  startup mount Oracle 启动实例并装配数据库 但不打开数据库 该
命令通常用于执行特定维护操作的场合 如 给数据文件更名 启用或禁用
归档日志 数据库的完全备份等

 

使用 svrmgrl Server Manager 启动数据库与使用 sqlplus 启动数据库类似
具体操作如下

(1) 以 oracle 用户执行命令
$ svrmgrl
进入到 Server Manager 命令交互状态 提示符为"SVRMGR>"
(2) 在 Server Manager 命令交互状态下执行以下 Server Manager 命令
SVRMGR> connect internal
(3) 在 Server Manager 命令交互状态下执行启动数据库的命令
SVRMGR> startup


另外:
数据库启动过程:
1. 启动实例:oracle  instance =SGA +Processes
  读取参数文件。  Init.ora
  分配SGA区。
  启动后台进程。
2. 数据库安装:  Database  mounted
         控制文件 init.ora
3. 打开数据库:  Database  opened
  打开全部数据文件和全部日志文件'控制文件。
  参数文件?控制文件?数据文件和日志文件
4. 几个启动命令:
  svrmgr> startup  正常启动。启动上面全部1,2,3项
  svrmgr> startup  mount  启动1,2项
        在此可修改归档模式
        可使用Alter  database命令
        可查询全部V$**数据字典
        可做数据库恢复
     例:
        svrmgr>Alter  database  open  read  only;
                - -(整个数据库以只读方式打开)
        svrmgr>Alter  database  open  read  write;
                - -(整个数据库以读写方式打开)(缺省方式)
  svrmgr> startup  nomount  启动1项
         可以创建一个新的数据库
         创建控制文件。

5. 在open 下可以使用的命令:
  启动多个数据库:
svrmgr> startup  pfile =第一个参数文件名及路径;
svrmgr> startup  pfile =第二个参数文件名及路径;

6. 强制和限制性数据库启动命令:
  强制数据库启动命令:(如上面所写只启动一部分的情况)
           svrmgr> startup  force;
  限制数据库启动命令:
           svrmgr>startup  RESTRICT;    - -只有DBA用户可以连接


关闭数据库 
        使用 sqlplus 关闭数据库的操作如下
        (4) 以 oracle 用户执行命令
        $ sqlplus /nolog
        进入到 sqlplus 命令交互状态 提示符为"SQL>"
        (5) 在 sqlplus 命令交互状态下执行以下 sqlplus 命令
        SQL> connect /as sysdba
        (6) 在 sqlplus 命令交互状态下执行关闭数据库的命令
        SQL> shutdown
       
        使用 svrmgrl Server Manager 关闭数据库与使用 sqlplus 关闭数据库类似
        具体操作如下
        (1) 以 oracle 用户执行命令
        $ svrmgrl
         进入到 Server Manager 命令交互状态 提示符为"SVRMGR>"
        (2) 在 Server Manager 命令交互状态下执行以下 Server Manager 命令
        SVRMGR> connect internal
       
         (3) 在 Server Manager 命令交互状态下执行关闭数据库的命令
        SVRMGR> shutdown

另外
数据库关闭命令:
svrmgr> shutdown +
nomal;  正常退出。在所有用户已退出情况下使用
immediate; 立即关机。中断所有用户,并回退所有未保存命令。(推荐使用)
abort; 异常关机。只关闭实例,是一种危险关机。
transactional; 事物终结后关机。等待所有用户完成提交后关机。

oracle用户管理
创建用户、授权及修改用户等。

oracle用户管理:
一、创建profile文件。

SQL>Create  profile  文件名  limit
    FAILED_LOGIN_ATTEMPTS:指定锁定用户的登录失败次数
    PASSWORD_LOCK_TIME:指定用户被锁定天数
    PASSWORD_LIFE_TIME:指定口令可用天数
    PASSWORD_REUSE_TIME:指定在多长时间内口令不能重用
    PASSWORD_REUSE_MAX:指定在重用口令前口令需要改变的次数
    SESSIONS_PER_USER:限制用户并发会话个数
    CPU_PER_SESSION:限制会话所占用的CPU时间(百分之一秒)
    CPU_PER_CALL:限制每次调用所占用的CPU时间(百分之一秒)
    CONNECT_TIME:限制会话的总计连接时间(分钟)
    IDLE_TIME:限制会话的空闲时间(分钟));
   
   
   
二、创建用户(包括创建角色):

SQL>Create  user  用户名
    IDENTIFIED  BY  口令
    Default  tablespace  表空间名
    TEMPORARY  tablespace  临时表空间名
    Profile  profile文件名
    Quota  限制空间大小  on  表空间名;
并给用户授权:
SQL>grant  connect ,resource  to  用户名;


举例:
-- 创建角色
DROP ROLE ICDYW;

CREATE ROLE ICDYW NOT IDENTIFIED;

GRANT "DBA" TO "ICDYW";
GRANT "EXP_FULL_DATABASE" TO "ICDYW";
GRANT "IMP_FULL_DATABASE" TO "ICDYW";

-- 创建用户

DROP USER ICDMAIN CASCADE;

CREATE USER ICDMAIN IDENTIFIED BY icd
  DEFAULT TABLESPACE SERVICE_RPT_DAT
  TEMPORARY TABLESPACE SERVICE_TEMP
  PROFILE DEFAULT;

GRANT "ICDYW" TO "ICDMAIN" WITH ADMIN OPTION;

GRANT UNLIMITED TABLESPACE TO "ICDMAIN" WITH ADMIN OPTION;

GRANT SELECT ON SYS.V_$MYSTAT TO ICDMAIN;
GRANT SELECT ON SYS.V_$SESSION TO ICDMAIN;
GRANT SELECT ON SYS.DBA_JOBS TO ICDMAIN;

ALTER USER ICDMAIN DEFAULT ROLE ALL;

 

三. 改动用户: 

一.   修改用户各项参数:(除用户名外其它各项均可以修改)
SQL>Alter  user  用户名
    IDENTIFIED  BY  口令
    Default  tablespace  表空间名
    TEMPORARY  tablespace  临时表空间名
    Profile  profile文件名
    Quota  限制空间大小  on  表空间名;

将用户加锁:
SQL>Alter  user  用户名  ACCOUNT  LOCK;      - -加锁
                         ACCOUNT  UNLOCK;   - -解锁

强制用户修改口令:
SQL>Alter  user  用户名  password  expire;

四. 删除用户:
  
用户下没有实体时:
SQL>Drop  user  用户名;

用户已创建实体如表和数据时:
SQL>Drop  user  用户名  CASCADE;
注意:当前正连接的用户不得删除。
       使用CASCADE选项时,用户及实体马上被删除,应再进入数据文件进行物理删除。

五. 监视用户:

查询用户会话信息:(如果有两个用户以同一用户名登录,则可动态查询

SQL>Select  username  machine , sid , serial #
       From  V$ session;
  
删除用户会话:
SQL>Alter  system  kill  session  'sid , serial' ;

显示用户的SQL语句:
SQL>Select  user _name , SQL _text  From  V$ open _cursor;

 
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值