I know this error message has been asked several times, but it is a little bit different here.
This is a newly provisioned database, the error message "table or view does not exist" showed up when I queried DBA_INDEXES, DBA_SEGMENTS (any DBA* tables) using a randomly created user account (lets call it DBAUser). I can understand it may be because the account DBAUser does not have the privileges. Without granting this DBAUser any privileges, I connected to the database as an admin and do the same query on DBA* using the admin account and everything was perfect. After that, please notice that I still do not grant any privileges to DBAUser, I connected to the database and query DBA* as DBAUser: DBA* tables just showed up!
I am not sure if the connecting as admin did any magic thing here? Thanks~