Archives December 2021

ORA-28000: The account is locked. The Connect Descriptor was

While adding the target manually in OEM, the OEM admin user account(sysman) in either target or OEM repository database is locked

Either configure password from OEM itself or use SQLPLUS

Set the passwords


--on target database
SQL> alter user DBSNMP identified by oracle123 account unlock;

User altered.

--on repository
SQL> alter user DBSNMP identified by oracle123 account unlock;

User altered.

Connection is successful after user authentication

No route to host

Cause:

This error may be due to network connectivity from source to destination host

-bash-4.2$ telnet 192.168.1.123 4903
Trying 192.168.1.123...
telnet: connect to address 192.168.1.123: No route to host

Solution:

1)Ping the server to check if the destination host is reachable or not via icmp packets

-bash-4.2$ ping oem
PING oem (192.168.1.123) 56(84) bytes of data.
64 bytes from oem (192.168.1.123): icmp_seq=1 ttl=64 time=0.649 ms
64 bytes from oem (192.168.1.123): icmp_seq=2 ttl=64 time=0.525 ms
64 bytes from oem (192.168.1.123): icmp_seq=3 ttl=64 time=0.471 ms
64 bytes from oem (192.168.1.123): icmp_seq=4 ttl=64 time=0.442 ms

2)If ping is fine, then network connection is fine. Check for the port as the next focus

If port is open on the destination server

[root@oem log]# netstat -tuplan|grep '4903'
tcp6       0      0 :::4903                 :::*                    LISTEN      7542/httpd

3) If still issue persist, then error should be related to firewall blockage issues

Check iptables and stop it

[root@orcl19x oracle]# service iptables stop
Redirecting to /bin/systemctl stop  iptables.service
Failed to stop iptables.service: Unit iptables.service not loaded.

Check if the port status is “established” from the source ipaddress. If not, then firewall block the incoming connection. In the below output , we dont see established and hence connectivity is blocked by firewall

[oracle@oem ~]$ netstat -tuplan|grep '4903'
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp6       0      0 :::4903                 :::*                    LISTEN      8235/httpd

Check if firewalld is running on (disable firewall)

[root@oem oracle]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-12-01 14:42:49 IST; 3h 43min ago
     Docs: man:firewalld(1)
 Main PID: 802 (firewalld)
    Tasks: 2
   CGroup: /system.slice/firewalld.service
           └─802 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid

[root@oem oracle]# systemctl stop firewalld


[root@oem oracle]# firewall-cmd --permanent --add-port=22/tcp
FirewallD is not running

Check if selinux is enabled (–disable it if enabled)

-bash-4.2$ getenforce
Disabled

Atlast telnet should be connecting fine

-bash-4.2$ telnet 192.168.1.123 4903
Trying 192.168.1.123...
Connected to 192.168.1.123.
Escape character is '^]'.
CREATE AND GRANT ACCESS TO DIRECTORY IN ORACLE

Create a logical directory on database

SQL> create directory dpexp as '/home/oracle';

Directory created.

Grant the both read and write privileges to access the directory for a user

SQL> grant read,write on directory dpexp to hr;

Grant succeeded.

To modify the path of the existing directory

SQL> create or replace directory dpexp as '/home';

Directory created.