This content has been marked as final. Show 11 replies
When connecting to the database from the host works (local) but not from another host (remote), could be several things causing the problem. And a specific error message is much more helpful than "it does not work ...". Can't help if we can't tell what you need help with.
The one that gets most folk are the firewall settings. Next most "popular" problem is some kind of incorrect client setup.
From the remote host, try a tnsping. This will test both possible problems, and also tell you where the client configuration files live. In a command box, a tnsalias should be set up in the client %ORACLE_HOME%/network/admin/tnsnames.ora
You have to tell your client who "xejoe" is, by specifying the connect details in tnsnames.ora or have an oracle naming service available, i.e. the tnsnames.ora method, add this stanza to the tnsnames.ora file:
tnsping xejoe ... Used parameter files: <drive:>network\admin\sqlnet.ora ... Attempting to contact (DESCRIPTION=... <connect string host:port:service_name info> ... OK (<n> msec) ... ... Or could say tns-<n> error or something *not* OK
And if you've added the port number exception to your firewall, it should be all good to go.
xejoe = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = <hostname or IP for xejoe instance>)(PORT = <port#>)) ) (CONNECT_DATA = (SERVICE_NAME = <service name>[.domain_name] ) ) )
To verify the correct SERVICE_NAME will require an actual sqlplus connection- tnsping only verifies if a host has an oracle listener running on that port.
On the database server, a `lsnrctl services` command reveals the SERVICE_NAME used for the database instance.
I am sorry. I get Invalid Login Credentials. I can't log in at all. :(
What is the URL you are using from the remote client ? Can you ping the database host from the remote client ?
Ahh. Apex? How about the system password set up by the installer ... I'd assume you used the "get started" shortcut, http://127.0.0.1:8080/apex/f?p=4950
I get Invalid Login Credentials.
So use the shortcut, login with the system credentials. Create an apex user. Workspaces aren't relevant ... unless you cant remember which one your apex user was assigned.
And that is a different port that needs to be added to the firewall exception list, see the ":8080" bit in the URL. Also note that using the localhost IP 127.0.0.1 takes firewall out of the equation.
did you follow the steps documented in the section [url http://docs.oracle.com/cd/E17781_01/install.112/e18802/toc.htm#BABIJBHJ]Making Oracle Database XE Available to Remote Clients of the Installation Guide?
Note: The link provided is intended for Linux installs. There is a similar section in the document for Windows.
The message "Invalid Login Credentials" is a bit surprising, though. Do you mean the state of your initial post (login is working on the local machine) is not true?
In that case, please provide the link you are calling to get a login screen and the username you enter there.
I mean that I can only login on the machine I set my account up on. I want to login on other machines with the same credentials and access what I have been working on; is this possible in XE?
Yes I used the shortcut. But if I set up XE on another machine the exact same way and use that shortcut, the password that I orignally created (on the first machine) will not go through on the newly setup machine. Is this normal?
Of course, it is possible to login to XE from other machines, as indicated by the documentation I referenced above.
Perhaps we have a little confusion here about which of the XE services you are trying to use:
- APEX Login?
- sqlplus login?
- SQL Developer login?
For APEX, I'd be very surprised to get your error message, so I conclude you are trying to connect with a database user using sqlplus or SQL Developer.
In that case, could you please post your connect parameters? For sqlplus for instance, you'll ususally have to configure TNS for your XE on the remote machine properly. While a local connect might work like
this usually won't work from a remote machine. You'll have to use
where TNS-Name is the configured "alias" (or actual TNS-Connect-String) for your XE instance.
No I am trying to use APEX. This is puzzling to me too as I was able to login at different workstation before.
Hmmmm. So, what's different? Are you trying the apex admin URL ...:8080/apex?p=4950 or trying to login to a workspace?
was able to login at different workstation before.
The database instance has database users, a host OS has OS users, two different things. And Apex credentials are also a different "animal" requiring a workspace as well as an Apex login and password. Not related to OS nor database credentials.
But for the apex admin URL it does take credentials for a database user, and as mentioned on the login page it should be a database user with the DBA role privilege, so that is where one uses the system login and the password setup in the installer. System is a database user, it can be confusing.
But for the apex admin URL it does take credentials for a database user, and as mentioned on the login page it should be a database user with the DBA role privilege, so that is where one uses the system login and the password setup in the installer. System is a database user, it can be confusing.I agree that it can be confusing. On the other hand, it's pretty well documented... And it can't be much different in that case: The XE management application/homepage/... (4950) uses an APEX authentication scheme based on database accounts, so you can (or precisely: have to) use your system user account there as well. One of the reasons for this is that you are encouraged to administer your APEX using that application, which means you have to have something to create an APEX workspace (and users for this workspace) before you can use APEX authentication. Of course it would be possible to direct a user straight to the APEX internal administration, but for XE it seems right to have everything (database and APEX administration) in one pre-build application. And on the other hand it seems suitable to use dba accounts to manage the database instead of "just" APEX users.
But what does this tell us about the issue? If you get "invalid login credentials" for the same user that can login locally, the best shot would be the remote machine has a different keyboard layout and the password you type is not what you think it is. Everything else would result in an error on your local machine as well, as the XE management application doesn't have any host-based access rules, and the other remote-related aspects have been eliminated already.