cancel
Showing results for 
Search instead for 
Did you mean: 

SQL server doesn't exist or access denied || SAP NW 7.4 installation || Distributed environment

Former Member
0 Kudos

Hello Experts,

We're installing SAP NW 7.4 Gateway in a distributed environment (Windows server 2012) where APP server resides on SAPDEVNGAPP1 and DB server resides on SAPDEVNGDBS1. We are using the APP server for both ASCS and PAS instances.

I'm able to install the SQL db 2012 on DB host and also ASCS instance is installed successfully on APP server. I'm unable to install the PAS instance because it is not able to connect to the SQL database. Below is the error that I am facing:

Small background on the environment:

-> App server {APP zone} is in different zone than DB server {DB zone}.

-> Both servers are not assigned to same domain (they are put up on WORKGROUP). Can this be the cause that both are not under same domain?

-> Ping <dest IP/hostname> from APP to DB and vice-versa are successful.

-> Telnet <dest IP> <port> are not successful in both servers.

-> I'm performing the installation using Administrator user ID.

-> SQL Database has been installed using setup.exe. We didn't use SWPM (I guess this will not cause a problem).

Here is the warning/error captured in the sapinst.log file:

WARNING 2015-07-30 18:38:11.658 (SAPDEVNGAPP1\Administrator) id=dbmodmssql.odbcdll.connection

Cannot connect to the database server. Errors returned: [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.

[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).

Call your SAP Support.

Here is the warning/error captured in the sapinst_dev.log file:


TRACE      2015-07-30 18:37:29.517 (SAPDEVNGAPP1\Administrator) [csistepexecute.cpp:1109]

Execution of preprocess block of |NW_ABAP_CI|ind|ind|ind|ind|0|0|NW_GetSidFromProfilesPartial|ind|ind|ind|ind|getSid|0|NW_getDBInfo|ind|ind|ind|ind|db|0|NW_MSS_DBINFO|ind|ind|ind|ind|mss|0|MssLoginInfo|ind|ind|ind|ind|login|0|dCheckGivenServer returns TRUE

TRACE      2015-07-30 18:37:29.564 (SAPDEVNGAPP1\Administrator)

t_MssLogin.remove(WHERE Key='std')

WARNING    2015-07-30 18:38:11.658 (SAPDEVNGAPP1\Administrator) [iaxmbcom.cpp:120] id=dbmodmssql.odbcdll.connection CMssLogger::logMessage

Cannot connect to the database server. Errors returned: [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.

[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).

Call your SAP Support.

TRACE      2015-07-30 18:38:11.658 (SAPDEVNGAPP1\Administrator) [tablecpp.cpp:286] TableCpp::insertRow()

Table(t_MssLogin).insertRow({

  Host:SAPDEVNGDBS1

  Key:std

  LoginType:WIN

  MachineName:SAPDEVNGDBS1

}, WHERE 1=1)

inserting

TRACE      2015-07-30 18:38:11.658 (SAPDEVNGAPP1\Administrator)

MSSTRC: odbc driver is installed.

TRACE      2015-07-30 18:38:11.658 (SAPDEVNGAPP1\Administrator)

t_MssMessages.remove(WHERE 1=1)

WARNING    2015-07-30 18:38:32.705 (SAPDEVNGAPP1\Administrator) [iaxmbcom.cpp:120] id=dbmodmssql.odbcdll.connection CMssLogger::logMessage

Cannot connect to the database server. Errors returned: [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.

[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).

Call your SAP Support.

TRACE      2015-07-30 18:38:32.705 (SAPDEVNGAPP1\Administrator)

Cannot connect to SAPDEVNGDBS1

SQL Server does not exist or access denied.

Accepted Solutions (1)

Accepted Solutions (1)

former_member415447
Discoverer
0 Kudos

Hi Hardeep,

Have you installed SQL Server Native Client on your application server? You'll need it in order for SAP and SQL Server to communicate with each other. On our distributed systems we also install the SQL Command Line Tools on the application servers. Make sure the versions for these match the service pack/patch state of your SQL Server install.

What do you mean by "SQL Database has been installed using setup.exe"? Do you mean the Microsoft installer for the SQL Server engine? Or sapinst.exe (for whatever installer version you used)? You should install SQL Server on the database server and the client tools on the application server first, then do the SAP install and let the SAP installer create the database so it can set the permissions it wants.

What steps did you use for the install? We don't have an ASCS instance on our distributed systems because they pre-date it and use either global host preparation or SCS instance install instead, but the order should be:

1. Install ASCS instance (on the app server) - or global host preparation if not using ASCS

2. Install SCS instance (on the app server) - if required

3. Install database instance (on the database server)

4. Install central instance (on the app server)

When prompted for the profiles for the system you'll need to use UNC paths (\\appserverhostname\sapmnt\SID\SYS\profile for the later stages. The ASCS/global host preparation install should have set up the shares for you, so if the installer can see the profiles then the two servers are basically talking to each other. Obviously port blockages from firewalls can still cause problems, but you'd expect to get an error message complaining about not being able to talk to port x if so.

Julie

Former Member
0 Kudos

Hi Julie

Please check my reply to Nilesh's above message. In addition to that, I uninstalled database and then tried installing SQL db using sapinst.exe in DB server during which it asked for system profile path and I gave the APP server's path: (\\appserverhostname\sapmnt\SID\SYS\profile)

This time DB server was not able to recognize the APP server (SAPDEVNGAPP1)

1. I've asked network team to put servers on same domain and gave a list to open some of the standard ports if they're not open. I'll again try the installation once this is done.

2. Also, I found your suggestion quite logical.. I'll give a try by installing SQL client tools on APP server. Shall I perform the steps mentioned in below link for this ?

http://sqlserverstore.blogspot.sg/2012/01/in-order-to-install-sql-server-client.html

Thank you for your expert views!

Regards

Hardeep

former_member415447
Discoverer
0 Kudos

Hi Hardeep,

No that's not the right client tools install (though it may include the right bits as well as stuff you don't need, of course.

The documents you want to look at are:

Note 1676665 (Setting Up Microsoft SQL Server 2012) - there's not much there that's relevant to your situation, but it points to the path for the main install documentation

and the SQL Server Upgrade/Installation Guide for 2012 at:

http://service.sap.com/instguides -> Database Upgrades -> MS SQL Server

In that you'll find the information you need for doing the SQL Server install manually with *just* the required components SAP needs (section 4.2) and also the Native Client install for the application server (section 4.4).

I'd do the SQL Server install manually before running sapinst.exe for the database part of the distributed system install. And, obviously, you'll need to do the Native Client install on the other server before you run that phase as well.

Answers (7)

Answers (7)

Mofizur
Contributor
0 Kudos

Hi SIngh,

I had the same issue today and the fix was "The user (who is running SWPM) should be sys admin in the DB instance"

Thanks,

Mofizur

Former Member
0 Kudos

Hi M. Rahaman

Yes, I used "Administrator" user in both APP and DB servers having system admin rights. Shall I use another user ID than this ?

Regards

Hardeep

Former Member
0 Kudos

Dear Hardeep,

Did you install SQL client in your app server??

Regards,

Nilesh

Former Member
0 Kudos

Hi Nilesh

No, I did not install SQL client on APP server.

1. I just installed ASCS instance using sapinst.exe (SWPM) on APP server.

2. Then installed SQL database on DB server using setup.exe (MS SQL Setup executable file).

3. And then tried installing PAS instance on APP server during which I'm facing this error (PAS instance installation looks for database, it tries to search for SAPDEVNGDB1 during PAS instance but unable to recognize).

As mentioned in above replies by Husin, I installed only SQL Management Studio in APP server and tried to login to DB server from there (screenshot attached in my reply to Husin above). But, it was unable to recognize DB.

Shall I install the SQLserver client tools as mentioned in this link -

http://sqlserverstore.blogspot.sg/2012/01/in-order-to-install-sql-server-client.html

Thanks for your response. Really helpful in troubleshooting!


Regards

Hardeep

Former Member
0 Kudos

Dear Hardeep,

Please install SQL client on your App server.

It is a easy step, you can use both setup.exe or u can use VB script SQL4SAP for the installation. Please find the screen shot in which you can see the client installation option using SQL4SAP tool.

Please check the second option and you can instal client with that option on the APP server.

Regards,

Nilesh

Former Member
0 Kudos

Hello Hardeep,

For first check, you can install SQL management studio on your app server then try to connect remotely to the database on database server. if the connection is established, it should be not port or network problem.

Related with SQL Server does not exist or access denied. error can be caused by many things. I have experience with this issue in solman and solved by:

1. when specify the database, we should put hostname\dbname example SAPDEVNGDBS1\DEV

2. User that you used as remote user should as sysadmin and has db_owner server role in that DB (you can configure this via SQL management studio).

Hope this can help you to solve the problem.

Thanks & regards,

Husin

Former Member
0 Kudos

Hello Usin

This is good idea.. And I've installed SQL Mgt studio in APP server but I'm unable to connect to DB server from there. I get below error (don't get confused with DB name SAPDEVNGDB1, this is correct one):

Sriram2009
Active Contributor
0 Kudos

Hi Singh

1.  On both servers add the local host enters IP address = DB host & IP  = App Server.

2. Check the Sql DB server connection from App Server using the Windows Authorization.

3. Check the link how to disable the UAC on your both windows severs.

Turn User Account Control on or off - Windows Help

Regards

SS

Mofizur
Contributor
0 Kudos

Hi Singh,

Please try to
1) install SQLCMD on apps server
2) Set PATH variable to SQLCMD exucutable.
3) Logoff and login

Also try to do a R3trans -x from your apps if possible

Thanks,
Mofizur

Former Member
0 Kudos

Hello Hardeep,

Did you disable the firewall when tried to login through SSMS? i suggest you to turn off any firewall for testing purpose and validate administrator that you used to login is SQL user instead of windows user.

Thanks,

Husin

Former Member
0 Kudos

Hi Sriram

Thanks for your quick response. I had maintained the host file entries and tried to RDP the DB server from APP and vice-versa. RDP was failing in both cases (Is there any other way to check Windows Authentication ?)

I'll check the UAC part (but I don't think it's the cause). I'll update the post with updates.

Thank you for your constant support. Appreciable..

Regards

Hardeep

Former Member
0 Kudos

Hello Husin

Yes firewall is completely disabled on both servers .

I had made Administrator and few other users as SQL users while installing the DB. None is able to connect to DB (Actually APP server is not able to recognize the DB server, user ID authentication should be the next part as per my understanding).

Regards

Hardeep

Reagan
Advisor
Advisor
0 Kudos

Assuming that you are doing a local installation and if yes your issue is most likely due to that. For distributed installations you need to do a domain installation. It appears to me that the systems are able to reach but fails to continue possibly due to access related issues. I would try to create or set the Administrator user with the same password like on the SAP node and see if that helps.

Former Member
0 Kudos

Hello Reagan.. Agree that SAP strongly recommends Domain installation but since the servers are not put up on same domain (they're on WORKGROUP). So, not sure whether domain installation will work or not. Kindly suggest ?

Sriram2009
Active Contributor
0 Kudos

Hi

1. Have you disable the firewall and UAC on App server?

2. If possible do the full system restart and then try again in the same phace

BR

SS

Former Member
0 Kudos

Hi Sriram.. Yes, firewall is disabled.. but I'm unable to take the remote desktop from any of the server to the another.!

Sriram2009
Active Contributor
0 Kudos

Hi Singh

1. What about UAC? have you enable the RDP on your server?

2. Are you able to ping the host from DB or CI to CI or DB host?

BR

Former Member
0 Kudos

Hi Sriram

1. RDP is disabled (i can't RDP the App server from DB and vice-versa). What needs to be done for UAC ?

2. Yes Ping <destination IP> is successfull from App to DB and vice-versa.

Regards

Hardeep

0 Kudos

Hi Hardeep,

As you said telnet is not working from APP server to DB sever SQL port means there is some issue with connectivity.

Please get this fixed and try again.


Regards,

Ajay

Former Member
0 Kudos

Thanks for the reply Ajay.. Yes, even I thought the same.. But when I checked one other similar working environment, there also telnet is not working (but the App server is communicating to DB). I guess telnet is not the issue here though I'm trying to get this fixed.

Former Member
0 Kudos

Hi Hardeep,

I belive APP server is not able to communicate with DB server. According to my understanding required ODBC drivers is not enabled. Can do the follwoing in your DB server.

under SQL server configuration -- enable the TCP/IP communication and repeate it again.

Go to SQL server configuration Manager.

Open SQL Server Network Configuration >> Protocols for SQLEXPRESS.

Enable TCP/IP (disabled by default).

Restart SQL Server service.

Regards,

Pavan Gunda

Former Member
0 Kudos

Thanks Pavan for the info. Good point actually.. But unfortunately I had enabled it already.