Background:
One advantage of the “Connection Manager” is that it can act as if a proxy server between the database client and the database server, especially when there is a firewall between the client and the server.
I installed Oracle Client 19c (only the “Connection Manager” and the “Oracle Net Listener” components):
Then I configured the connection manager by editing the $OH/network/admin/cman.ora file. Following are the main parameters that I changed:
cman_cmanhost.us.oracle.com =
(configuration=
# Listening address of the cman
(address=(protocol=tcp)(host=cmanhost.us.oracle.com)(port=1522))
(log_directory=/u01/app/oracle/cman/log)
(max_gateway_processes=8)
(min_gateway_processes=3)
(trace_directory=/u01/app/oracle/cman/trace)
Then I tried to start the connection manager as follows:
cmctl
admin
CMCTL:CMAN_cmanhost.us.oracle.com> startup
TNS-04012: Unable to start Oracle Connection Manager instance.
(LOG_RECORD=(TIMESTAMP=11-DEC-2020 17:34:46)(EVENT=Shared Memory Size)(BYTES=3576832))
(LOG_RECORD=(TIMESTAMP=11-DEC-2020 17:34:46)(EVENT=Failed to start listener process)(REASON=TNSLSNR for Linux: Version 19.0.0.0.0 – Production
Command-line specified parameter file is /u01/app/oracle/product/client_1/network/admin/cman.ora
Error listening on: (address=(protocol=tcp)(host=cmanhost.us.oracle.com)(port=1522))
TNS-12542: TNS:address already in use
TNS-12560: TNS:protocol adapter error
TNS-00512: Address already in use
Linux Error: 98: Address already in use
)(OPN=77)(NS1=12564)(NS2=0)(NT1=0)(NT2=0))
2020-12-11T17:47:18.018713+00:00
I reviewed the configuration again but I didn’t find any mistake.
I enabled the trace, by using: “set trace_level support” in the cmctl
I examined the trace file under the diag directory and I found the following error:
When I installed the CM , a listener with name LISTENER on port 1522 was started automatically:
[oracle@cmanhost bin]$ lsnrctl stat
LSNRCTL for Linux: Version 19.0.0.0.0 – Production on 11-DEC-2020 17:23:04
Copyright (c) 1991, 2019, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cmanhost.us.oracle.com)(PORT=1522)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 – Production
Start Date 11-DEC-2020 16:33:52
Uptime 0 days 0 hr. 49 min. 11 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/client_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/cmanhost/listener/alert/log.xml
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cmanhost.us.oracle.com)(PORT=1522)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1522)))
The listener supports no services
The command completed successfully
I stopped this listener and started the CM successfully, another listener with name “cman_cmanhost.us.oracle.com” was started with the CM on port 1522:
CMCTL:CMAN_cmanhost.us.oracle.com> startup
Starting Oracle Connection Manager instance CMAN_cmanhost.us.oracle.com. Please wait…
CMAN for Linux: Version 19.0.0.0.0 – Production
Status of the Instance
Instance name cman_cmanhost.us.oracle.com
Version CMAN for Linux: Version 19.0.0.0.0 – Production
Start date 11-DEC-2020 17:51:46
Uptime 0 days 0 hr. 0 min. 9 sec
Num of gateways started 3
Average Load level 0
Log Level OFF
Trace Level OFF
Instance Config file /u01/app/oracle/product/client_1/network/admin/cman.ora
Instance Log directory /u01/app/oracle/diag/netcman/cmanhost/cman_cmanhost.us.oracle.com/alert
Instance Trace directory /u01/app/oracle/diag/netcman/cmanhost/cman_cmanhost.us.oracle.com/trace
The command completed successfully.
[oracle@cmanhost trace]$ lsnrctl stat
LSNRCTL for Linux: Version 19.0.0.0.0 – Production on 11-DEC-2020 17:52:07
Copyright (c) 1991, 2019, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cmanhost.us.oracle.com)(PORT=1522)))
STATUS of the LISTENER
Alias cman_cmanhost.us.oracle.com
Version TNSLSNR for Linux: Version 19.0.0.0.0 – Production
Start Date 11-DEC-2020 17:51:46
Uptime 0 days 0 hr. 0 min. 20 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /u01/app/oracle/product/client_1/network/admin/cman.ora
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cmanhost.us.oracle.com)(PORT=1522)))
Services Summary…
Proxy service “cmgw” has 1 instance(s).
Instance “cman”, status READY, has 3 handler(s) for this service…
Service “cmon” has 1 instance(s).
Instance “cman”, status READY, has 1 handler(s) for this service…
The command completed successfully