Finding delays when interacting with sql server database? - sql-server

Lately, I've noticed delays in our sql server database when using the SQL Server management Studio GUI, when executing simple queries, and with web apps that interact with the DB.
For example, we have an asp.net application that uses this database. The web app and the sql server database are located in the same server. Lately, I've been seeing several The Wait operation timed out with different webforms in the page, and I know that the stored procedures invoked are not time-consuming. I don't want to increase the timeouts because I know it's not the stored procedures.
Another example: I use SQL Server management Studio. If I want to expand the Tables node, it takes an unusually long time to display all the tables. A few times I've gotten time out issues here.
Is there a way to see what the delays are? We have sufficient memory in the server and I've restarted the sql server installation and the server.
Our installation: Microsoft SQL Server 2016 (SP2-CU17) (KB5001092) - 13.0.5888.11 (X64) Mar 19 2021 19:41:38 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows Server 2019 Standard 10.0 (Build 17763: )

Related

Hangfire on Windows Server 2019 with SQL Server 2019 Express

I'm trying to move to a new hosting provider and I'm having real difficulty getting my web site to run. It uses Hangfire on application startup to run some background jobs, whilst also serving web pages on the main thread.
The website seems to work for the very first page load and then subsequent accesses fail to run a reasonably complex Entity Framework search query.
Here's the server's configuration on the existing machine, via SQL Server's select ##version command:
Microsoft SQL Server 2017 (RTM-GDR) (KB4583456) - 14.0.2037.2 (X64) Nov 2 2020 19:19:59 Copyright (C) 2017 Microsoft Corporation Standard Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: )
Shared operating system (not sure what this is)
SQL Server 2017 - Standard Edition
.NET Framework 4.8
Hangfire using SQL Server storage, with table's using the Hangfire schema
Other application tables, with tables using the dbo schema
Here's the server's configuration on the new machine, via SQL Server's select ##version command:
Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) Sep 24 2019 13:48:23 Copyright (C) 2019 Microsoft Corporation Express Edition (64-bit) on Windows Server 2019 Standard 10.0 <X64> (Build 17763: ) (Hypervisor)
Windows Server 2019
SQL Server 2019 - Express edition
.NET Framework 4.7,. (according to Plesk, although I've installed 4.8)
On the new server I have full RDP access, so can install whatever software I like on this machine. However, SQL Server Standard edition is extremely expensive for a little website like mine.
Is there something that is preventing the Entity Framework query running on the new Windows Server 2019 machine, with SQL Server Express? Does that combination not allow multiple schemas for the database, or is there some other restriction from this combination that I might not be aware of?
Running the website with SQL Server Express on my local Windows 10 machine runs fine.
I'd really appreciate any help with this, as I'm pulling what little hair I have left out of my head!
Thanks for trying to help, but in the end the problem was a lot simpler than I'd anticipated. I thought this was a permissions issue, but actually it's just a simple performance issue.
Running SQL Express on the new server failed because the machine didn't have enough RAM. It only had 4GB of RAM, and with Plesk and other software installed by the hosting provider, the free RAM was down to just a few hundred MBs.
Some simple queries that would take milliseconds to return on the old server could take over 2 minutes to return on the RAM limited new server.
Increasing the RAM to 8GBs fixed most of the issue, although using SQL Express is still significantly slower than the SQL Standard edition on the old server, and SQL Standard is alarmingly expensive to run just for this one website (the old server has a shared SQL Standard edition installation).

What is the best practice to upgrade TFS 2017 update 1 to Azure DevOps Server 2019 update 1.1?

I have both test and production enviroments with a TFS 2017 update 1 on premises running in a windows server 2012 virtual machine. In the same virtual machine is running SQL Server 2014 as TFS database. I used this configuration for 3 years without problems.
Now I want to upgrade to Azure DevOps Server 2019 update 1.1 on premises. Furthermore I want to change architecture with two virtual machines with windows server 2016: one for database tier with SQL Server 2016 and one for application tier with Azure DevOps Server 2019 update 1.1.
What is the best practice to perform upgrade above described. Maybe the correct way is to leave the original single virtual machine with TFS 2017, prepare two new virtual machine both with windows server 2016 (one for SQL Server 2016 and other for DevOps 2019) and finally perform a "move project collection" from SQL Server 2014 to SQL Server 2016. Does the move project collection works even if the source comes from TFS 2017 and the destination is Dev 2019?
Is there any official documentation provided by Microsoft about the scenario of upgrade described above?
think best approach is to setup the new VM´s (with TFS2017 and stuff), then create DB dumps of old one and integrate these in the "new" TFS2017. After i would recommend to update to TFS2018, then 2019 (AzDo Server).
Why? => In most updates there were also done some updates in TFS Warehouse DB´s and stuff.
In the past we also updated from e.g. 2015 to 2017 but had better feeling doing the updates "piece by piece" to be sure that all the Warehouse changes were done "in a clean way".

Unable to run Reporting Services 2017 on Azure instance running SQL Server 2017 Web edition

I'm running this version of SQL Server on an Azure instance:
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Aug 22 2017 17:04:49
Copyright (C) 2017 Microsoft Corporation
Web Edition (64-bit) on Windows Server 2016 Datacenter 10.0 <X64> (Build 14393: ) (Hypervisor)
Per the description for the instance ('SQL Server 2017 Web on Windows Server 2016'):
This image contains the Web edition of SQL Server 2017 on Windows Server 2016. This provides a low-cost database solution for medium-size web applications. It includes the core database engine and Management Studio for integrated administration and development. Also includes basic versions of Reporting Services for web reports, Integration Services for moving and transforming data, and Analysis Services for data mining. We recommend that you use a virtual machine size of DS12 or higher.
When I attempt to connect / configure using the 'Report Services Configuration Manager', I'm unable to 'find' the Report server instance in the 'Reporting Services Configuration Connection' dialog. I.e. the 'Report Server Instance' had not values to choose from.
I installed Microsoft SQL Server 2017 Reporting Services (note three editions were available - Eval, Developer, & Express - tried each edition - uninstalling each version before trying the next)
When I went to configure the Reporting Services using the 'Report Server Configuration Manager' I got to the 'Change Database' tab. At the point that I am assigning the database engine to the reporting services I get the error:
The database engine instance you selected is not valid for this edition of report server
Note I'm running the Web edition of SQL Server, but I'm not seeing an option to select that in the installation of the report services
Thoughts re what I'm missing?
I Ended up reverting back to SQL 2016 to go around the issue
I have been having a similar issue. I tried to get the SQL Server key from a PowerShell script as well, but they didn't work for SQL Server 2017 Web Edition.
So the solution was much easier than I expected.
Go to the C: drive of your VM. You will find SQL Setup there.
Run the setup to start a new standalone installation. When you will be on product key page it will display the License Key.
Copy that key and put it into your Reporting Services Installation.
I hope it will help someone.
The error is basically saying you cannot use the edition of your SQL Server Engine (in this case, Web edition) for SQL Server Reporting Services 2017. Can you try a different edition of SQL Server?
Update:
You can learn more about supported editions of Database Engine you can use for each different type of edition of Reporting Services 2017 at https://learn.microsoft.com/en-us/sql/reporting-services/reporting-services-features-supported-by-the-editions-of-sql-server-2016. While some of the content may not be applicable for SSRS 2017, the bits which are applicable are still accurate.

Possible to use SQL Server CE 3 (aka 2005 mobile edition) with merge replication to SQL Server 2008r2?

My client is retiring a server and wishes to move our application's data from SQL Server 2005 to SQL Server 2008r2. We use Merge Replication via IIS to synch the data to Windows Mobile 6.5 devices. The devices currently are running SQL Server CE3, and we'd rather avoid the cost of coding the application to use Sql Server CE 3.5, deploying the new version to hundreds of devices, etc.
Unfortunately, although we were able to get the server side replication conversion set up correctly using 90 schema for all pieces, the clients are not able to get to the server. They seem to be stopped when they hit IIS, reporting that they are not able to reach the publication.
IIS was not changed as part of the conversion, so there should be no configuration problem there. In fact the diagnostics for the IIS replication proxy (i.e SQLCESA30.dll?diag) report that all is well.
It's clear that the snapshot directory is configured correctly as well. It appears that the problem occurs specifically when IIS attempts to communicate via SQLCESA30.dll with SQL Server 2008 R2.
This leads me to believe that there is some basic incompatibility with SQL Server CE 3.0 and SQL Server 2008 R2. Can anybody confirm this is true or offer a workaround?
You will have to install the 3.5 agent, and that also means pointing all devices to a new URL:
https://yourserver/yourdir/sqlcesa35.dll
See this rather confusing blog post for more info: http://blogs.msdn.com/b/sqlservercompact/archive/2007/12/19/connectivity-cross-version-compatibility-sql-server-compact-3-5.aspx
Your scenario is: "2.1.2 SQL Server Compact versions 3.0 or 3.1 and SQL Server 2008 (D4)"
"... a single SQL Server Compact 3.5 Server Agent URL can be used by all SQL Server Compact version 3.x Clients."

sharepoint 2007 from sql server to oracle

I installed WSS 2007 on one of our test server to see if sharepoint is worth going forward for our group. The problem is, it installed a version of sql server and we are using oracle. So, I will need to move sharepoint from sql server to oracle. We can't use sql server we have to use oracle.
I have two questions:
1. sql server to oracle transition for sharepoint
2. Is there a performance drawback when we move from sql server to oracle with sharepoint.
I tried to look for resources on web but couldn't find much. Any ideas/help would be appreciated.
This is not possible - SharePoint can only run on SQL Server:
Installation Guide for Microsoft Office SharePoint Server 2007
The database server must be running
Microsoft SQL Server 2005 or Microsoft
SQL Server 2000 with the most recent
service pack.
Enterprise Sharepoint? – Port it to Oracle
I have concluded my only real problem
with SharePoint is that you can’t run
it on Oracle.
If you had shown me SharePoint, not
told me it was from Microsoft and said
you can use it with Oracle as a back
end, I am sure my reaction to it would
have been far different.

Resources