如何通过网络访问Oracle数据库?
How to access Oracle database over network?
我正在尝试通过网络访问我的 Oracle 数据库。我有很多 Google 并找到了很多解决方案,但这些对我不起作用。
The problem is that, I want to access my Oracle Database from One Computer to another Computer over my Local Network.
我做的是....
- 我找到了用
修改 listener.ora 文件的解决方案
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbp.devProject.com)(PORT=1521)))
当我修改此文件并尝试 运行 并访问数据库时,什么也不会发生,它会抛出错误,您指定的端口号已被另一个侦听器使用,因此我更改了端口号但我无法访问数据库。
2. 我在 oracle 的工具 Net Manager 的帮助下配置了一个新的监听器,它为我创建了一个监听器,但它不能通过网络访问数据库。
这里是一些必需的结果。
- lsnrctl status : Listener using listener name LISTENER has already been started.
- Connection String : jdbc:oracle:thin:@dbp.devProject.com:4541:myDB
- Database Version :
- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
- PL/SQL Release 11.2.0.1.0 - Production
- CORE 11.2.0.1.0 Production
- TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
- NLSRTL Version 11.2.0.1.0 - Production
status 告诉我这个。
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
Alias : LISTENER
Version : TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
Start Date : 14-MAY-2015 11:58:05
Uptime : 0 days 2 hr. 29 min. 50 sec
Trace Level : off
Security : ON: Local OS Authentication
SNMP : OFF
Listener Parameter File : product.2.0\dbhome_1\network\admin\listener.ora
Listener Log File : \listener\alert\log.xml
Listening Endpoints Summary...
1. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.\pipe\EXTPROC1521ipc)))
2. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
有人请帮助我。
感谢您的帮助..
在您尝试连接到数据库的系统上的 TNSNAMES.ORA 文件中创建一个条目。 (TNSNAMES.ORA 位于 ORACLE_INSTALLATION_PATH/Network/Admin/ 文件夹)
示例条目:
DB_HOST_NAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = DB_HOST_NAME)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
如果您安装了多个 Oracle 客户端,您可能需要在所有这些客户端中更新此 TNSNAMES.ORA
每当您在为数据库创建远程访问时遇到此类错误,请先执行以下操作。
- 使用 Oracle 的 Net Manager 工具或手动创建监听器。
- 生成Listener后,查看"listener.ora"
[位于:ORACLE_INSTALLED_DIR\product.2.0\dbhome_1\NETWORK\ADMIN]
文件,供您输入。 (是否有您之前创建的监听器的任何条目。如果您找到了您的条目,然后执行下一步,否则从第一步开始。)
- 如果找到侦听器的条目,请打开命令提示符并启动命令
lsnrctl status
。这将为您提供当前所有 运行 个听众列表,找出您之前创建的那个。
- 查看您的听众的
Host Name
和 Port Number
。
- 根据您在
lsnrctl status
中找到的详细信息生成连接字符串
- 连接数据库,您可以从网络中的任何地方访问数据库。
享受事物,有些挑战需要努力,一旦退缩,就永远无法解决。
我真的很感谢所有回答和评论这个问题的人,这一切 Material 让我的挑战变得简单..
谢谢@Alex、@Lalit、@TenG 和@S.Krishna
非常感谢你们。
如果您的主机名和端口号是侦听器,那么您可以通过在防火墙设置中启用端口号来尝试此选项。
在 Windows 防火墙中打开端口
- 打开控制面板。 ...
- 打开Windows防火墙。 ...
- 单击“高级设置”link。 ...
- Select"Inbound Rules"。 ...
- 在 "Inbound Rules" 下创建 "New Rule"。 ...
- Select "Port" 来自向导的第一个屏幕。 ...
- 选择 TCP 或 UDP。 ...
- 输入端口范围。 ...
- 完成向导。
我正在尝试通过网络访问我的 Oracle 数据库。我有很多 Google 并找到了很多解决方案,但这些对我不起作用。
The problem is that, I want to access my Oracle Database from One Computer to another Computer over my Local Network.
我做的是....
- 我找到了用 修改 listener.ora 文件的解决方案
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbp.devProject.com)(PORT=1521)))
当我修改此文件并尝试 运行 并访问数据库时,什么也不会发生,它会抛出错误,您指定的端口号已被另一个侦听器使用,因此我更改了端口号但我无法访问数据库。 2. 我在 oracle 的工具 Net Manager 的帮助下配置了一个新的监听器,它为我创建了一个监听器,但它不能通过网络访问数据库。
这里是一些必需的结果。
- lsnrctl status : Listener using listener name LISTENER has already been started.
- Connection String : jdbc:oracle:thin:@dbp.devProject.com:4541:myDB
- Database Version :
- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
- PL/SQL Release 11.2.0.1.0 - Production
- CORE 11.2.0.1.0 Production
- TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
- NLSRTL Version 11.2.0.1.0 - Production
status 告诉我这个。
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
Alias : LISTENER
Version : TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
Start Date : 14-MAY-2015 11:58:05
Uptime : 0 days 2 hr. 29 min. 50 sec
Trace Level : off
Security : ON: Local OS Authentication
SNMP : OFF
Listener Parameter File : product.2.0\dbhome_1\network\admin\listener.ora
Listener Log File : \listener\alert\log.xml
Listening Endpoints Summary...
1. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.\pipe\EXTPROC1521ipc)))
2. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
有人请帮助我。 感谢您的帮助..
在您尝试连接到数据库的系统上的 TNSNAMES.ORA 文件中创建一个条目。 (TNSNAMES.ORA 位于 ORACLE_INSTALLATION_PATH/Network/Admin/ 文件夹)
示例条目:
DB_HOST_NAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = DB_HOST_NAME)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
如果您安装了多个 Oracle 客户端,您可能需要在所有这些客户端中更新此 TNSNAMES.ORA
每当您在为数据库创建远程访问时遇到此类错误,请先执行以下操作。
- 使用 Oracle 的 Net Manager 工具或手动创建监听器。
- 生成Listener后,查看"listener.ora" [位于:ORACLE_INSTALLED_DIR\product.2.0\dbhome_1\NETWORK\ADMIN] 文件,供您输入。 (是否有您之前创建的监听器的任何条目。如果您找到了您的条目,然后执行下一步,否则从第一步开始。)
- 如果找到侦听器的条目,请打开命令提示符并启动命令
lsnrctl status
。这将为您提供当前所有 运行 个听众列表,找出您之前创建的那个。 - 查看您的听众的
Host Name
和Port Number
。 - 根据您在
lsnrctl status
中找到的详细信息生成连接字符串 - 连接数据库,您可以从网络中的任何地方访问数据库。
享受事物,有些挑战需要努力,一旦退缩,就永远无法解决。
我真的很感谢所有回答和评论这个问题的人,这一切 Material 让我的挑战变得简单..
谢谢@Alex、@Lalit、@TenG 和@S.Krishna 非常感谢你们。
如果您的主机名和端口号是侦听器,那么您可以通过在防火墙设置中启用端口号来尝试此选项。
在 Windows 防火墙中打开端口
- 打开控制面板。 ...
- 打开Windows防火墙。 ...
- 单击“高级设置”link。 ...
- Select"Inbound Rules"。 ...
- 在 "Inbound Rules" 下创建 "New Rule"。 ...
- Select "Port" 来自向导的第一个屏幕。 ...
- 选择 TCP 或 UDP。 ...
- 输入端口范围。 ...
- 完成向导。