创建 Oracle 数据源
NineData 支持将不同类型、不同环境的数据源添加到控制台中进行统一管理,您可以对已经添加后的数据源使用数据库 DevOps、备份与恢复、数据复制、数据库对比等功能。本文介绍如何将 Oracle 数据源添加到 NineData。
前提条件
已将 NineData 的服务器 IP 地址添加到数据源白名单。服务器 IP 地址的获取方式请参见下图。
具备空闲的数据源额度,否则无法录入数据源。您可以在 NineData 控制台页面右上方快速查看剩余配额。
操作步骤
登录 NineData 控制台。
在左侧导航栏,单击>。
- 单击页签,并单击页面上的,在弹出的数据源类型弹窗中,选择 > (需要添加的数据源类型),在页面根据下表配置参数。提示
如果您操作失误,可以单击页面上方的
图标重新选择。
配置数据源的各项参数:
参数 说明 输入数据源的名称,为了方便后续查找和管理,请尽量使用有意义的名称。 选择数据源的接入方式。支持通过、、SSH Tunnel 三种方式接入。 - :通过公网地址接入数据源。
- :NineData 提供的安全快捷的内网访问方式,需先将数据源所在主机接入,接入方式请参见添加网关。
- SSH Tunnel:通过 SSH 隧道接入数据源。
选择的配置项 :数据源的公网连接地址、端口、SID用于唯一标识具体的 Oracle 数据库实例。(Service Name用于识别和访问 Oracle 数据库实例的逻辑标识符,与具体的SID相关联,通过配置不同的 Service Name,可以实现多个逻辑标识符关联到同一个数据库实例。)。 选择的配置项 - :选择数据源所在主机中安装的 NineData 网关。
- :可以写成 localhost(数据源在本机)或者数据源所在主机的内网 IP,以及 SID(Service Name)。
选择 SSH Tunnel 的配置项 - :输入目标数据源所在服务器的公网 IP 或者域名,以及对应的端口号(SSH 服务的默认端口号为 22)。
- :选择 SSH 的认证方式。
- :通过 (即服务器的登录名)和(即服务器的登录密码)进行连接。
- :输入目标数据源所在服务器的登录用户名。
- :输入目标数据源所在服务器的登录密码。
- (推荐):通过 和进行连接。
- :输入目标数据源所在服务器的登录用户名。
- :单击上传私钥文件,即无后缀名的密钥文件。如果您还未创建,请参见生成 SSH Tunnel 密钥文件。
- :输入生成密钥文件时设置的密码。如果您在密钥生成过程中未设置密码,此处请留空。
说明:SSH 配置完成后,您需要单击右侧的,可能出现如下两种结果: - :通过 (即服务器的登录名)和(即服务器的登录密码)进行连接。
- 提示:表示 SSH Tunnel 已打通。
- 提示错误信息:表示连接失败,您需要根据提错误示排查故障原因并重试。
- :可以写成 localhost(数据源在本机)或者数据源所在主机的内网 IP,以及 SID(Service Name)。
输入 Oracle 的登录用户名。 输入 Oracle 的登录密码。 选择登录 Oracle 后使用的角色。 - Default(默认):包含基本权限,能够进行一般的数据库操作。
- SYSDBA:具有最高权限的角色,对数据库有完全控制权。
- SYSOPER:包含特定的数据库操作权限,例如启动和关闭数据库实例、备份和恢复数据库等。
选择离您的 Oracle 主机所在地最近的地域,可有效降低网络延迟。 根据该数据源的实际业务用途进行选择,作为数据源的环境标识。默认提供和环境,同时支持您创建自定义环境。
说明:在组织模式下,数据库环境还可应用于权限策略管理,例如,默认情况下的角色仅支持访问环境下的数据源,无法访问其他环境的数据源。更多信息,请参见管理角色。全部配置完成后,单击右侧的可以测试该数据源是否可以正常访问,提示即可单击,完成数据源的添加。否则请重新检查连接设置,直到连接测试成功为止。
附录:将 NineData 的 IP 地址加入 Oracle 数据库白名单
添加位于的数据源时,需要将 NineData 服务的 IP 地址添加到 Oracle 数据库白名单,以允许 NineData 提供服务。
本章节以 Oracle 12 版本为例,提供添加 IP 白名单的方法。该方法适用于 Oracle 9i 以上的所有版本。
用文本编辑器打开 Oracle 的配置文件
sqlnet.ora
,该文件通常位于 Oracle 安装目录的/network/admin/
中。示例:/opt/oracle/product/OraHome/network/admin/sqlnet.ora
。如果您无法找到该文件,可以通过在终端中执行find / -name sqlnet.ora 2>/dev/null
命令进行查找。在
sqlnet.ora
文件中修改tcp.validnode_checking
、tcp.invited_nodes
、tcp.excluded_nodes
几个参数,如下所示:tcp.validnode_checking = yes
tcp.invited_nodes = (127.0.0.1, <允许访问的 IP 地址或地址段>)
tcp.excluded_nodes = (<拒绝访问的 IP 地址或地址段>)提示- 如果没有找到上述参数,则直接新增。
tcp.validnode_checking
可选值为yes|no
,表示开启或关闭白名单,设置为no
则tcp.invited_nodes
和tcp.excluded_nodes
配置均失效。tcp.invited_nodes
参数中须保留127.0.0.1
,否则将无法从本地连接数据库。tcp.invited_nodes
和tcp.excluded_nodes
输入相同 IP 的情况下,则仍然表示允许该 IP 访问数据库。- 多个地址或地址段之间用英文逗号(,)分隔。
执行
lsnrctl reload
重新加载sqlnet.ora
文件使配置生效。提示- 如果此次的
sqlnet.ora
配置文件是手动创建,则需要先执行lsnrctl stop
,再执行lsnrctl start
命令重启 Oracle 数据库。 - 如果提示 lsnrctl 命令不存在,则可能是您目前没有在 Oracle 账户下,可以执行
su - oracle
命令切换到 Oracle 账户,再重新尝试。
- 如果此次的