⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ͺ

📁 介绍了数据库方面的基础知识
💻
字号:
作者:一面湖水
日期:2000-1-23 4:35:58
支 持32 位 的ORACLE7 产 品-Sql*Net V2 的 安 装 与 应 用 

山 东 省 肥 城 市 肥 城 矿 务 局 中 心 医 院 刘 茂 忠 
---- 摘 要: 本 文 通 过 一 个 例 子, 详 细 介 绍 了UNIXSERVER 上 和WIN95 CLIENT 端( 网 络 协 议 为TCP/IP) 安 装32 位 支 持 的ORACLE7 产 品-Sql*Net V2 的 方 法, 并 介 绍 一 些 应 用 经 验。 

---- 1 前 言 

---- 在CILENT/SERVER 结 构 中 运 行 的ORACLE7 数 据 库, 它 们 之 间 的 连 接 多 是 通 过SQL*Net 建 立 和 撤 消 的, 它 将ORACLE 应 用 程 序 的 调 用 和 数 据 库 请 求 转 换 成 了 网 络 上 的 请 求, 并 支 持 多 种 通 信 协 议 之 间 的 转 移, 解 决 了 复 杂 环 境 中 的 网 络 连 接 问 题, 是ORACLE7 最 有 效 的 网 络 通 讯 工 具。 

---- 随 着ORACLE 产 品 的 不 断 升 级, 用 户 都 陆 续 地 安 装 上 了ORACLE7, 抛 弃 了 原 来 的 通 讯 工 具SQL*NET V1 产 品, 换 上 了SQL*NET V2。 而 用 户 以 前 安 装 的 客 户 端SQL*NET V2 产 品 多 是 支 持16 位 的, 因 为 当 时 的 操 作 平 台 多 为WINDOWS3.1/3.2, 不 支 持32 位 处 理。 随 着WIN95 平 台 的 普 及, 出 现 了 支 持32 位 的SQL*NET V2 产 品, 使 用 它 能 够 更 好 地 改 善 数 据 通 讯 性 能。 本 文 以UNIX 上 的ORACLE7 数 据 库 为 例( 网 络 协 议 为TCP/IP), 简 明 地 介 绍 一 下SERVER 端 和CLIENT 端32 位SQL*NET V2 的 安 装 与 应 用 方 面 的 知 识, 希 望 能 够 对 用 户 带 来 帮 助。 

---- 2 SQL*NET V2 的 安 装 

---- 2 .1 SERVER 端 的 安 装 

---- 在UNIX 操 作 系 统 下 安 装ORACLE7 时, 将SQL*NET V2 产 品 选 上, 装 入 就 行 了, 剩 下 的 工 作 是 配 置 两 个 文 件: 监 听 器 配 置 文 件listener.ora 和 连 接 描 述 符 文 件tnsnames.ora, 举 例 如 下: 

---- 进 入ORACLE 的" 家" 目 录 下( 比 如 说 是/u/oracle), 继 续 进 入 下 列 目 录: 

---- #cd network/admin 

---- 然 后 用vi 编 辑 器 编 辑 监 听 器 配 置 文 件listener.ora, 并 存 盘。 下 面 是 一 个listener.ora 文 件 的 例 子: 

LISTENER=
          (ADDRESS_LIST=
              (ADDRESS=
               (PROTOCOL=TCP)       -- 网 络 协 议
                (HOST=111.1.1.1)    -- 主 机 地 址
                  (PORT=1521)       -- 监 听 进 程 端 口
                     )
               )
STARTUP_WAIT_TIME_LISTENER=0
CONNECT_TIMEOUT_LISTENER=10
SID_LIST_LISTENER=
            (SID_DESC=
              (SID_NAME=ora72)
              (ORACLE_HOME=/u/oracle)
                )
TRACE_LEVEL_LISTENER=OFF
      再 编 辑 连 接 描 述 符 文 件tnsnames.ora,
 并 存 盘( 也 是 一 个 例 子):
snname1=       -- 服 务 器 一 的SQL*NET 服 务 器 名snname1
(DESCRIPTION=
        (ADDRESS=
               (PROTOCOL=TCP)
             (HOST=111.1.1.1)  -- 服 务 器 一 的 主 机 地 址
                  (PORT=1521)
       )
     (CONNECT_DATA=(SID=ora72))
)
snname2 =     -- 数 据 库 服 务 器 二
 的SQL*NET 服 务 器 名snname2
(DESCRIPTION=
        (ADDRESS=
               (PROTOCOL=TCP)
                (HOST=111.2.1.1)  -- 服 务 器 二 的 主 机 地 址
                  (PORT=1521)
       )
     (CONNECT_DATA=(SID=ora7))
)

---- 有 了 上 述 两 个 参 数 文 件 后, 还 要 查 看"/etc" 目 录 下 的services 文 件 中 是 否 有1521 端 口 的 说 明, 没 有 就 加 上, 举 例 如 下: 

# vi services 

orasrv          1525/tcp       oracle
listener        1521/tcp       oracle 

---- 然 后 启 动UNIX 和ORACLE 库,SQL*NET V2 就 可 以 在SERVER 端 启 动 了。 

---- 2 .2 在SERVER 端 启 动SQL*NET V2 

---- 进 入ORACLE 用 户, 键 入 下 列 命 令, 就 完 成 了SQL*NET V2 

---- SERVER 端 的 启 动 工 作。 

---- $ lsnrctl start 监 听 器 名 

---- 一 般 情 况 下, 监 听 器 名 就 设 为 默 认 的 名 字listener, 所 以, 直 接 键 入 下 列 命 令 就 可 以 启 动: 

$ lsnrctl start
    可 用 下 列 命 令 检 测SQL*NET V2 的 运 行 状 态:
$ lsnrctl stat

---- 2 .3 在CLIENT 端 安 装32 位 的SQL*NET V2 

---- ORACLE7 产 品-Oracle Developer 2000 和 Oracle Enterprise 

---- Manager 都 提 供 了CLIENT 端32 位SQL*NET V2 的 安 装 程 序, 这 里 以 用Oracle 

---- Enterprise Manager 为 例, 具 体 地 说 明 一 下 安 装 过 程: 

---- 2 .31 安 装 程 序setup.exe 

---- 需 要 选 择 的 产 品 是:SQL*Net 2.3.3.0.0 

---- 网 络 协 议 选 择TCP/IP, 按 提 示 说 明 向 下 进 行。 

---- 2 .32 建 立 数 据 库 别 名, 便 于 用SQL*NET 通 讯 

---- 运 行SQL*NET Easy configuration 

---- 选 择:Add Database Alias:snname1 

---- 然 后 输 入 选 用 的 数 据 库 服 务 器 信 息: 

---- TCP/IP Host Name:111.1.1.1 

---- Database Instance:ora72 

---- 正 常 退 出 后,SQL*NET V2 就 能 够 工 作 了。 

---- 如 果 存 在 字 符 集 选 择 错 误 的 问 题, 会 出 现 汉 字 显 示 成 乱 字 符 的 现 象, 还 要 做2 .33 的 工 作。 

---- 2 .33 从 注 册 表 中 选 择 正 确 的 字 符 集 

---- 在WIN95 下 运 行REGEDIT, 选 择HKEY_LOCAL_MACHINE, 再 选 择SOFTWARE, 再 选 择ORACLE, 然 后 选 择NLS_LANG( 语 言 的 国 际 支 持), 键 入 和 服 务 器 端 相 同 的 字 符 集。 例 如 服 务 器 端 的 字 符 集 为AMERICAN_AMERICAN.US7ASCII, 在 此 也 输 入 此 项 就 行 了。 

---- 至 此,TCP/IP 网CLIENT 端WIN95 下 的32 位ORACLE7 SQL*NET V2 安 装 完 毕。 

---- 2 .34 CLIENT 端SQL*NET V2 的 应 用 

---- CLIENT 端 通 过Sql*Net V2 和SERVER 上 的ORACLE 库 连 接, 命 令 格 式 如 下( 以scott/tiger 用 户 为 例): 

---- scott/tiger@snname1( 假 定 据 库 服 务 器 的SQL*NET 

---- 服 务 器 名 为snname1), 即 连 通snname1 所 标 识 的ORACLE 库。 如 果 另 一 台ORACLE7 SERVER 上 也 启 动 了 监 听 进 程, 假 定 数 据 库 服 务 器 的SQL*NET 服 务 器 名 为snname2, 那 么, 执 行scott/tiger@ snname2 命 令, 则 和snname2 所 标 识 的ORACLE 库 连 通。 

---- 3 几 点 说 明 

---- 3 .1 CLIENT 端SQL*NET V2 

---- 安 装 完 毕 后, 自 动 生 成 如 下 连 接 说 明 文 件tnsnames.ora( 一 般 为c:\orawin95\network\admin\tnsnames.ora), 该 文 件 不 能 乱 动, 否 则 会 导 致 连 接 失 败: 

#c:\orawin95\network\admin\tnsnames.ora:
#This is a SQL*Net Configuration 
file generated by SQL*Net Easy 
Configuration.
#Attention: Do not modify this file yourself.
#If you do, your SQL*Net Easy 
Configuration may not function properly.
。。。
snname1.world = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
        (ADDRESS = 
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = 111.1.1.1)
          (Port = 1521)
        )
        (ADDRESS = 
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = 111.1.1.1)
          (Port = 1526)
        )
    )
    (CONNECT_DATA = (SID = ora72)
    )
  )

---- 3 .2 安 装 了32 位 的SQL*NET 

---- V2 后, 相 应 的 软 件 开 发 工 具 要 随 着 更 新。 比 如 说,POWERBUILDER 要 安 装 支 持32 位 的, 用 支 持16 位 的 开 发 工 具 将 不 能 在ORACLE 库 上 做 开 发。 

        Sun, 25 Oct 1998 
        "houston houston" houston971202@hotmail.com

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -