Oracle 配置远程访问教程可以分为以下几个步骤:
1. 修改监听器配置
- 打开 cmd 或者是 PowerShell ,输入
lsnrctl status
查看当前监听器的状态。 - 如果状态为
ready
,则输入lsnrctl stop
停止监听器,如果是start
,则可以直接进行下一步操作。 - 在 cmd 或者是 PowerShell 中输入
netstat -an
查看当前监听端口,找到LISTENING
状态的端口号。(如果已经知道端口号可以不进行此步) - 打开监听器配置文件
listener.ora
,一般路径为%ORACLE_HOME%\network\admin\listener.ora
。 - 找到
SID_LIST_LISTENER
条目下的SID_LIST
,在其中添加一个SID
,例如:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = E:\app\oracle\product\11.2.0\server)
)
)
这里的 orcl
就是我们要配置的数据库的 SID。
- 找到 LISTENER
条目下的 ADDRESS_LIST
,在其中添加一个 ADDRESS
,例如:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
)
)
这里的 HOST
需要填写外部可访问的 IP 地址,我这里填写了 0.0.0.0
,表示允许任何 IP 地址访问。
2. 修改 tnsnames.ora 文件
- 打开
tnsnames.ora
文件,一般路径为%ORACLE_HOME%\network\admin\tnsnames.ora
。 - 添加一个
tns
条目,例如:
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 远程主机IP地址)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
这里的 远程主机IP地址
需要填写外部可访问的IP地址,和上面监听器配置中的 HOST
是一致的。
示例
- 假设我们的本机 IP 地址为
192.168.1.2
,Oracle 数据库的 SID 为orcl
,监听的端口为1521
,那么我们需要在监听器配置文件listener.ora
中添加:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = E:\app\oracle\product\11.2.0\server)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
)
)
然后保存文件,并使用命令 lsnrctl start
启动监听器。现在,我们就可以通过 192.168.1.2:1521
访问到 Oracle 数据库了。
- 假设我们要从另一台计算机上的 Oracle 客户端连接到上面的 Oracle 数据库,那么我们需要在客户端中修改
tnsnames.ora
文件,添加如下条目:
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
这里的 192.168.1.2
是 Oracle 数据库运行的计算机的 IP 地址。然后我们可以在客户端的命令行中输入 sqlplus 用户名/密码@orcl
来连接到 Oracle 数据库。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Oracle 配置远程访问教程 - Python技术站