This error is caused due to lack of proper privilege for the database link to work.
SQL> select * from dual@dplink; select * from dual@dplink * ERROR at line 1: ORA-28009: connection as SYS should be as SYSDBA or SYSOPER ORA-02063: preceding line from DPLINK
If the database link with sys user is not working , reproduce the error with another user. Check the username and password of source database not remote database. Specify the same username in remote database while creation of database link
--SOURCE database SQL> create user test identified by password; User created. SQL> grant dba,sysdba,connect,resource,create session,unlimited tablespace to test; Grant succeeded. SQL> alter user sys identified by password; User altered.
After specification of the correct username and password of source database in remote database link creation, the error got vanished
--REMOTE database SQL> create public database link dpl connect to test identified by "password" using 'DPPROD'; Database link created. SQL> select * from dual@dpl; D - X