This is expected behavior.
Compiling the PL/SQL block we require internal structures of the table, which is not yet generated in the read only database.
This has been identified in:
Bug 2798026 ORA-6550 / PLS-905 WHEN RUNNING PL/SQL OVER DBLINK TO READ ONLY STANDBY DATABASE
Workaround:
1. Populate internal structures by running PL/SQL before making remote Database READ ONLY
or
2. Or create a view in local database against the remote TABLE as:
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29032948/viewspace-1684726/ ,如需转载,请注明出处,否则将追究法律责任。