SharePoint 2010-"Cannot connect to the configuration database" - sharepoint

I have TFS 2012 which integrated with SharePoint service, recently I duplicated the same machine for testing, and modified some parameters on the testing machine to avoid conflict due to they are in the same networking. They works well.
Today the production server's SharePoint site prompt "Cannot connect to the configuration database", but team foundation service works well, I doubt that something in the testing server cause this, and I shutdown testing server, the issue still exists.
Before I have experience for this issue, most of them are related with SQL server instance configuration like this "https://mikessharepoint.wordpress.com/2011/11/22/cannot-connect-to-the-configuration-database-error-of-central-administration/" or some authentications issue in the IIS application pool.
and here is the error event from event viewer:
"
Unknown SQL Exception 53 occurred. Additional error information from SQL Server is included below.
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
"
I doubt that something (probably SQL server instance name) on production server change to testing servers by some action, but I don't know where and how.
And I doubt that the new server cause the error, the reason is I find something incorrect in wss_config database of production server, the "ServerName" filed in table TimerJobHistory, some value are new server, some value are old server. But even I update all the value to old server and restarted the production server, it does not work.
I check all things I can googled, but nothing works, is there anybody could provide any help on this, appreciate for any kindly help.

Finally, I find the root reason, there is a table named "Objects" in the "Wss_config" DB, I find the new testing server name in "Name" filed, so I update the value to old server name-->Restarted IIS and SharePoint service (not sure if required)-->Bingo!
But I still don't know why the new server cause this error, so I have not power on the new server for now. Will update if any new detection.
Thanks all for your kindly help.

Related

Excel VBA Userform to SQLOLEDB Connection works Locally but not remotely - Run-time error '-2147467259 (80004005)': [DBNETLIB]

It's been a week of research now and I am still unable to fix this problem.
I have created an Excel VBA User form that inserts data into an SQLOLEDB Connection (SQLEXPRESS 2017) when a CommandButton (Called "Save") is clicked. Locally (localhost) it works like a charm. All of the data from the columns gets inserted into the SQL DB Table successfully. No errors whatsoever.
However, when any client attempts to perform the same action I get the Run-time error '-2147467259 (80004005)': [DBNETLIB](ConnectionOpen (connect()).]SQL Server does not exist or access denied.
This is what I have tried so far:
I have created a Login for the client in my SQL Server Management Studio.
I have granted Insert permissions to the client to the dbo.Table.
I have made sure "Allow Remote Connections to this Server" is checked in Connections in my server properties in SQL Server Management Studio.
I have added Inbound & Outbound Rules in my Windows Firewall to Open port 1433 in my Computer which is where the Server has been installed.
I have added Inbound & Outbound Rules in Windows Firewall to Open port 1433 in my client's Computer.
I have checked my ODBC Data Source Administrator (both 32 & 64-bit) and I found out I have SQL Server Native Client RDA 11.0 installed which my client does not have. I researched and it's no longer possible to install this version. I also found out about SQL Server Compact 3.5 which supposedly comes with a replacement to RDA called Synchronization Services for ADO.NET. I installed both 32 & 64-bit versions in both my computer and my clients.
I have also tried establishing a Remote Desktop connection with my own login info but when I test my user form or run my Tester. UDL to attempt to connect to this server I get the same error message.
This is the string I'm using to establish this connection:
conn.Open "Provider=SQLOLEDB;Data Source=PCNAME\SQLEXPRESS;Initial Catalog=DATABASENAME;Integrated Security=SSPI;Trusted_Connection=Yes"
conn.Execute "INSERT INTO dbo.TABLENAME (COLUMNNAME, COLUMNNAME2) values ('" & sColumnVariable & "', '" & sColumnVariable2 & "')"
My question will be:
How do I manage to allow clients to successfully insert into this SQL Database/Table?
Where does the problem lie?
Does it lie within my Computers Settings?
Does it lie within my Clients Computers Settings?
Does it lie within my SQL Server Management Studio (maybe wrong/missing permissions)?
I appreciate your help in advance!
Regards, Dave.
You have to use the IP address to connect, for example:
Data Source=101.101.101.101\SQLEXPRESS;
Open a DOS prompt on the machine where SQL Server Express is located and type ipconfig
Get IP address and use it in your connection string
LocalHost just refers you your own computer. So unless you have a SQL Express running on each of the client computers, it isn't going to work.
You need to use the proper computer name or an IP address.
Is SQL Express running on a Windows Server?
I'm pretty sure that this is a requirement if you want other computers to talk to your SQL Server Express database. It's fine to use to test locally, but you need to install SQL Server on an PC that is actually running Windows Server to be able to accept and route the connections properly. So while SQL Server Express if free, your going to have to pay for Windows Server if you don't already have one.
If not, I'd love to know to get around dealing with my IT department so I can get something done.
I was able to figure this out. It had to do with the IP. I used my Local Area Connection IP address ONLY, without \SQLEXPRESS along with a new user I created in SQL Server Management Studio in my connection string:
conn.Open "Provider=SQLOLEDB;Data Source=IPADDRESS;Initial Catalog=DATABASENAME;Integrated Security=SSPI;User ID=MySQLTest;password=myPassc0de;
I'm soooo happy.

SQLAzure database server - named pipes provider, error: 40 - the network path was not found

We access our database that is in SQL Azure, and every so often we hit this error while trying to connect. We connect from a corporate network, using SSMS or API.
The weird part is how it always successfully and instantly connects on retrying. We retry just 1 second after and it works.
We saw that the DTU Usage % was high and scaled our server up, but that did not help. We have employed a SqlAzureRetry policy while accessing the database from our API, which seems to be helping in mitigating the issue - but the root cause is still not identified.
Has anyone employed a configuration or strategy or faced a similar issue? (the underlying provider failed to open / network path not found).
Thanks!
The solution was to change the format of the server name to use TCP:
tcp:servername.database.windows.net,1433;
Also, if you're connecting from code, you should change to the above format in your connection string.

How to determine identity of missing LocalDB instance?

I have a small Web API app that runs fine under Visual Studio. When I try to deploy it under IIS, however, I get this:
A network-related or instance-specific error occurred while
establishing a connection to SQL Server. The server was not found or
was not accessible. Verify that the instance name is correct and that
SQL Server is configured to allow remote connections. (provider: SQL
Network Interfaces, error: 50 - Local Database Runtime error occurred.
The specified LocalDB instance does not exist. )
The app is using a sqllocaldb server, and the server is started and queries (via sqllocaldb info) as being alive and running. I have tried setting the app pool Identity to my userid vs using "ApplicationPoolIdentity", and have tried setting up and using a shared version of the server. Changing the userid produced a different but equally unhelpful message; using a shared server changed nothing.
I've also determined that I can provoke the same message running directly in VS if I use a bogus server instance name in the connection string.
It would be ever so slightly helpful if the error message positively identified which server instance it cannot find, but nowhere in the message (either in the browser or when examined by an attached Visual Studio session) does it name the missing server.
How can one identify the "does not exist" server?
Update:
A coworker solved my problem (without actually answering the above question). The solution was to open my applicationHost.config file (In Windows\System32\inetsrv\config) and edit the <system.applicationHost> <applicationPools> <add> item for the application pool containing my app and add (within the <processModel> element) loadUserProfile="true" setProfileEnvironment="true". Exactly what that hocus pocus does I don't know, but he found it here.

Pre-Login Handshake Error Connecting to SQL Server 2012 through VS 2012

So I'm simply trying to connect to a SQL Server 2012 instance running on a local server running Windows Server 2012 through Visual Studio 2012's SQL Server Object Explorer. I can connect to it through other computers, locally and remotely, perfectly fine, but for some reason my desktop gives me this lovely error:
"A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: SSL Provider, error: 0 - The wait operation timed out.) (Microsoft SQL Server, Error: 258) - The wait operation timed out."
I'm using SQL Server Authentication in SS2012, unencrypted, etc. I'm really not sure what information to include, I'm sure it's some stupid issue, but for the life of me I can't find a solution. All searches give me a bunch of old as hell results.
Have you tried Fully qualified domain name?
Looks like a DNS issue

[DBNETLIB][ConnectionOpen (SECDoClientHandshake()).]SSL Security error

Our ASP/IIS web server talks to a SQL 2005 db server.
Eventually, without a pattern, some pages start showing error instead of the page content:
[DBNETLIB][ConnectionOpen (SECDoClientHandshake()).]SSL Security error.
Rebooting web server resolves it.
Anyone know about it?
Some things you should look at:
Low bandwidth to the DB server (see http://support.microsoft.com/kb/322144)
Problematic certificates on the DB server, e.g. self-signed certificates
SQL Authentication mode - Windows only, or SQL and Windows
In case others happen to come across this when their certs expire and wonder why their SQL Server is giving SSL errors...
This worked for me after removing unwanted certs... setting Certificate=0 in registry:
HKLM\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib REG_SZ Certificate=0
Read more about it here:
http://blogs.technet.com/b/taraj/archive/2009/01/07/sql-server-the-best-database-server-to-work-on.aspx

Resources