Are these files used by any database processes, or only by client programs like SQL*Plus?
Yes, these files are used by Oracle processes while connecting to the database, once the connection is established they don't need these files.
For example,
If you have specified the following parameter in sqlnet.ora
file on server side.
tcp.validnode_checking = yes
tcp.invited_nodes =<list the valid nodes here>
The Oracle server process will check whether the incoming connection request is valid or not. Once it finds the node is valid it will proceed ahead and it no longer needs the sqlnet.ora
file.
Similarly, Oracle client process will look up TNS Name on tnsnames.ora
file for the connection string. Once it finds the connection details to make connection it also no longer needs the tnsnames.ora
file.
If these files became unavailable, would existing client connections be affected, or only new connections?
Only the new connection will be impacted because existing connections have already used these files during the connection initiation.
Would database links using the TNS aliases be broken while the tnsnames.ora
file is unavailable?
If you are middle of the transaction using that database link and the tnsnames.ora
is missing then it will not impact the on going transaction. However, next session which uses the TNS Name in database link will fail.
ORA-12154: TNS:could not resolve the connect identifier specified
sqlnet.ora
file have default values, check them from Parameters for the sqlnet.ora File