Skip to content
Home » Oracle Database » How to Resolve PRKO-2054 : Invalid command line syntax

How to Resolve PRKO-2054 : Invalid command line syntax

PRKO-2054 or PRKO-02054

Tried to list configuration of all virtual IP (VIP) in the cluster, but it failed with PRKO-02054.

[grid@primary01 ~]$ srvctl config vip
PRKO-2054 : Invalid command line syntax, mandatory options are either -node or -vip, but not both.

PRKO-2054 means that an additional option is missing from the command you issued, either -node or -vip should be specified to indicate which VIP you want to query.

Solutions

To solve PRKO-2054, we should add -node or -vip option to the command.

Add -node Option

The node name is the same as the server hostname you registered in DNS.

[grid@primary01 ~]$ srvctl config vip -node primary01
VIP exists: network number 1, hosting node primary01
VIP Name: primary01-vip
VIP IPv4 Address: 192.168.1.111
VIP IPv6 Address:
VIP is enabled.
VIP is individually enabled on nodes:
VIP is individually disabled on nodes:

A fully qualified domain name (FQDN) is also acceptable.

[grid@primary01 ~]$ srvctl config vip -node primary01.example.com
VIP exists: network number 1, hosting node primary01
VIP Name: primary01-vip
VIP IPv4 Address: 192.168.1.111
VIP IPv6 Address:
VIP is enabled.
VIP is individually enabled on nodes:
VIP is individually disabled on nodes:

Add -vip Option

If you don't know what VIP hostname is, you can do a reverse ip lookup.

[grid@primary01 ~]$ nslookup 192.168.1.111
111.1.168.192.in-addr.arpa      name = primary01-vip.example.com.

If /etc/hosts is being used, you can check the file.

[grid@primary01 ~]$ grep 192.168.1.111 /etc/hosts
192.168.1.111 primary01-vip primary01-vip.example.com

Let's see the content.

[grid@primary01 ~]$ srvctl config vip -vip primary01-vip
VIP exists: network number 1, hosting node primary01
VIP Name: primary01-vip
VIP IPv4 Address: 192.168.1.111
VIP IPv6 Address:
VIP is enabled.
VIP is individually enabled on nodes:
VIP is individually disabled on nodes:

Also, a fully qualified domain name (FQDN) can be used here.

[grid@primary01 ~]$ srvctl config vip -vip primary01-vip.example.com
VIP exists: network number 1, hosting node primary01
VIP Name: primary01-vip
VIP IPv4 Address: 192.168.1.111
VIP IPv6 Address:
VIP is enabled.
VIP is individually enabled on nodes:
VIP is individually disabled on nodes:

srvctl config command

According to conventional usage of srvctl config command, no option means "All". So theoretically, srvctl config vip should have worked fine, but somehow it refused to display the configuration of all virtual IP in this cluster.

Let's see more cluster objects.

srvctl config database

[grid@primary01 ~]$ srvctl config database
ORCLCDB

srvctl config listener

[grid@primary01 ~]$ srvctl config listener
Name: LISTENER
Type: Database Listener
Network: 1, Owner: grid
Home:
End points: TCP:1521
Listener is enabled.
Listener is individually enabled on nodes:
Listener is individually disabled on nodes:

srvctl config scan

[grid@primary01 ~]$ srvctl config scan
SCAN name: primary-scan, Network: 1
Subnet IPv4: 192.168.1.0/255.255.255.0/ens33, static
Subnet IPv6:
SCAN 1 IPv4 VIP: 192.168.1.83
SCAN VIP is enabled.
SCAN 2 IPv4 VIP: 192.168.1.82
SCAN VIP is enabled.
SCAN 3 IPv4 VIP: 192.168.1.81
SCAN VIP is enabled.
SCAN 4 IPv4 VIP: 192.168.1.84
SCAN VIP is enabled.

srvctl config scan_listener

[grid@primary01 ~]$ srvctl config scan_listener
SCAN Listeners for network 1:
Registration invited nodes:
Registration invited subnets:
Endpoints: TCP:1521
SCAN Listener LISTENER_SCAN1 exists
SCAN Listener is enabled.
SCAN Listener LISTENER_SCAN2 exists
SCAN Listener is enabled.
SCAN Listener LISTENER_SCAN3 exists
SCAN Listener is enabled.
SCAN Listener LISTENER_SCAN4 exists
SCAN Listener is enabled.

srvctl config asm

[grid@primary01 ~]$ srvctl config asm
ASM home:
Password file: +OCR/orapwASM
Backup of Password file: +OCR/orapwASM_backup
ASM listener: LISTENER
ASM instance count: 3
Cluster ASM listener: ASMNET1LSNR_ASM

As you can see, almost all srvctl config commands without specifying anything are valid. Don't you think Oracle should also support srvctl config vip?

Leave a Reply

Your email address will not be published. Required fields are marked *