Can't See 64-bit FTS Performance Counters From 32-bit Application
Aug 24, 2007
I have a 32-bit application which sometimes runs against 64-bit servers. When it does, I can't read the performance counters published by the FTS service because they're 64-bit only. I get event #1022 from PerfLib in the event log:
Windows cannot open the 64-bit extensible counter DLL msftesqlFD in a 32-bit environment. Contact the file vendor to obtain a 32-bit version. Alternatively if you are running a 64-bit native environment, you can open the 64-bit extensible counter DLL by using the 64-bit version of Performance Monitor. To use this tool, open the Windows folder, open the System32 folder, and then start Perfmon.exe.
Does Microsoft make available 32-bit counter libraries for 32-bit clients of the 64-bit FTS? How do I obtain those bits?
I am running MSSQL v7.0 with Service Pack 2. I just realized that I have no sql server performance counters on this machine. Does anyone know how to install these performance counters without reinstalling the SQL Server software?
Hi all, I have sql 2000 enterprise. From performance monitor, the sql counters are missing. During installation I've made sure that the sqlcounters are installed. The sqlctr80.dll is installed. But still the counters are not showing.
Has anybody come across this, not sure what to do next
On 32 bit SSIS installations, both of the following performance counter objects are visible in perfmon.
SQLServer:SSIS Service
SQLServer:SSIS Pipeline
On 64 bit SSIS installations, only the following is available.
SQLServer:SSIS Service
The SQlServer:SSIS Pipeline counters are nowhere to be found.
Should I re-install? Is this a known issue with 64 bit SSIS?
P.S. Remote or local access administrative access with perfmon makes no difference, the "SQLServer:SSIS Pipeline" performance counters don't appear in the listbox when connecting to Windows 2003 x64 server.
We have SSIS installed and everything is working great. We are now to the point of wanting to tune one of our longer running packages and the Performance counters are not working. At all. They show up ok but the counter is always at 0. Is there anything special I have to do to get this to work.
One comment I fould was that the Performance Logs and Alerts service needs to be running to see these counters. I tried to start it and it immediately quit. I set it to automatic startup up and run a package. The counter still read 0.
Is there anything else out there I can try to get these counters to return somthing. Thanks.
The SQL server perfmon counters are missing from one of my MSSQL 7.0 servers - they do appear in others just fine.
Can anyone tell me what is wrong and/or how I can add the counters? I have seen archieve notes on this topic but can't access them for some reason (page appears blank when I click on link)
I am using perfmon to remotely monitor the problem server. My login has sysadmin permissions and is an NT admin. on both the server and the monitoring client. The login account for MSSQL server and SQL Agent services are both sysadmins.
Im missing all SQL Server counters in the Performance Monitor
and have looked at article: http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q196/6/57.ASP&NoWebContent=1
but this article refers to SQL 7...I have 2K with SP3 and MS03-031
Does any one know, how I can add SQLServer performance monitoring counters back on my NT server. For some reason I am missing these counters. I really do not want to reinstall either the NT OS or SQL OS if there is anyway to aviod this. Thanks
On some of my database servers, there are SQL Server counters in Performance Monitor. On other servers these are not present. How can I turn these on?
I know with the disc counters you need to explicitly enable them: diskperf -yv
Is there a parallel for SQL Server? I don't remember doing anything to get them working on the servers that have them. All online articles seem to assume that they just exist.
I have been collecting information about 20 performance counters (memory, IO, cpu, SQL) that refresh every 15 seconds, would that have any performance hit in the server? what are best practices when collecting information via performance counters?
I've always assumed SQL Server performance monitor counters get automatically installed when SQL Server is installed. I recently installed SQL Server on a remote server and noticed the SQL Server performance monitor counters do not appear in Perfmon. Aren't these counters automatically installed during setup?
SQL 6.5 had counters for monitoring SQL licenses. Where did Microsoft hide them in SQL 7.0? Or did they just disappear? If they are gone, is anyone doing anything to monitor the licenses with something like perfmon? User Connections doesn't help because the application takes several and not always the same number of user connections for one license.
I want to automate the offloading of SQL Server 6.5 logs before they become full. I've set this up 'manually' by triggering a job to run when the LogSpaceUsed threshold of the SQLServerLOg counter exceeds a certain value, but what I want to do now is to automate the starting of this performance counter. Ideally what I'd like is to (1) Start the counter once SQL is up, having (2) first ensured a particular instance of the counter isn't already executing (3) have some means of detecting whether this counter ever stops running in which case we'd have to restart it. This is probably more of an NT question than anything but if anyone has experience of this please let me know....I have tried trying to get SQlServer to start the performance counter as it starts up. I used sp_makestartup to define a stored procedure which runs on startup, this uses xp_cmdshell to call a CMD file which calls the saved counter definition (a .pmw file, performance monitor workspace) I thought this should work but the counter wasn't loaded......this doesn't check whewther an existing version of the counter is already running anyway.
My Performance Counters for SQL Server 2005 are corrupted. How do I repair them ?
Any help would be appreciated. Thanks.
Salyx
Specs Windows 2003 Standard, AMD x64. SQL Server 2005; x64; 9.00.3042.00; SP2 Standard Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2) This is a new install, so no "upgrade from SQL 2000". This is a production server, so "reboot" is hopefully not part of the suggested repair.
Symptom Open Performance Monitor. Open Add Counters. Open Dropdown "Performance Object". Instead of the SQL Server Performance Counter names, a list of 4-digit numbers appears. Other Performance Counters, eg, Processor, work as normal.
Attempted repair 1 - Recovery of system performance counters Open Command Prompt CD WindowsSystem32 lodctr /R This failed to restore the full set of performance counters for an unknown reason.
Attempted repair 2 - Recovery from a backup file from a second host I used the performance counter backup file from a second host which has an identical windows install. This properly restored the system performance counters, but failed to restore the SQL Server ones. This seems odd, because both system have - as much as I can tell - the same applications installed.
Open Command Prompt CD WindowsSystem32 REM Load backup file from second host lodctr /R:c:PerfStringBackup.INI
Attempted repair 3 - Recover SQL Server - specific counters Open Command Prompt CD WindowsSystem32 REM Load backup file from second host lodctr /R:c:PerfStringBackup.INI REM Clear and re-load MSSQLServer counters... unlodctr MSSQLServer lodctr "/R:C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLBinnsqlctr.ini"
Executing this pretty much wiped most performance counters. Only a small sub-set is now available.
More Info SQL Server 2005 and later SP2 were installed under the administrator account. MSSQLServer service runs under its own Windows Account (permission issues ??) I get Event Log entries regarding x86 vs x64 Performance Counter Libraries. These, however, do not refer to ASP, not SQL Server. I have 2 (virtually) identical hosts (same install sequence of apps). The Performance Counters on the second host work fine. Exctrlst.exe lists MSSQLSERVER service, but I don't know how to diagnose the details.
I have 2 SQL Server 7 databases installed on 2 Windows 2000 servers. One box shows all the SQL performance counters with in performance monitor, the other one doesn't. Is there a way to register those SQL counters in performance monitor?
There are so many to choose from, which ones are the most important to monitor?
Also if you have your data files and trans logs set to grow automaticlly and would like to change this to a fixed number is there a way to determine how large you should set them at? Thanks in advance. :confused:
I have an Alwayson group with 2 Nodes. The SQL Performance counters are always showing on the secondary, but the primary is inconsistent.
I loaded the counters on the primary (unlodctr and lodctr ), restarted the SQL service, and confirmed that the counters were there. 2 days later the counters were gone again. I loaded them again. A week later we had maintenance, failed over to the secondary, and when we failed back to the primary - the counters were gone again….
Does anyone know how to make the ODBC Connection Pooling performance counters work? I read http://support.microsoft.com/default.aspx?scid=kb;en-us;216950 to enable the performance counters, but they still all report 0s.
I have a SQl server on a Win2000 box. The server is located behind a screened subnet, and has no access to the outside world except for 1433 and 445 inbound from a webserver located in a DMZ, forward of the internal firewall. Rules are very tight, and the IIS box is patched and has been hardened further including running urlscan. (allowed verbs=get,head,post. all executable and script types disallowed, permissions very tight) I have written an appication that monitors bad http requests in real time to check that the URL scan is working, and it seems to be. The only way to get to the SQL box, would be running injection on page code (majority written by myself no raw sql) on the web server or launching an exploit over HTTP against known ADODB flaws on the web server. The SQL server is a domain member, the IIS server is a standalone. If theres a way to compromise the SQL box without first breaching both firewalls, or first compromising the IIS server, I dont know how to do it. Still, the sql box began acting up, refusing to accept a terminal services connection (the error stated that there was a failure to load Win32.sys) No sign that the machine had been compromised. I restored from a complete back up, which seemed to fix the terminal services problem, but now the sql performance counters fail to load. Specifically MQPERF.dll. Any ideas on what may have caused the server to have 'issues' (prevailing theory centers around evil spirits), and what can I do to get the performance counters to load. Tried replacing the library.
In the past, I've combined server side traces with Perfmon successfully, which is pretty useful, I know that. I would like to do the same with Extended Events, so I can correlate and analyze the server side as well.
This is related to an earlier post, but I found out that I was able to see SQL Server counters in Performance monitor before applying the patch, but the counters were not present afterwards....
I'm currently receiving the following error message whilst attempting to install SQL Server 2005 Standard Edition on Windows Server 2003 (32 Bit): Error 29528. The setup has encountered an unexpected error while Installing performance counters. The error is: The system cannot find the file specified.
This server already has an install of SQL Server 2000 as the default instance. I'm attempting to install a new named instance of SQL Server 2005.
Extract from log:
<Func Name='LaunchFunction'> Function=Do_sqlPerfmon2 <Func Name='GetCAContext'> <EndFunc Name='GetCAContext' Return='T' GetLastError='0'> Doing Action: Do_sqlPerfmon2 PerfTime Start: Do_sqlPerfmon2 : Tue Jun 12 10:20:02 2007 <Func Name='Do_sqlPerfmon2'> <EndFunc Name='Do_sqlPerfmon2' Return='0' GetLastError='2'> PerfTime Stop: Do_sqlPerfmon2 : Tue Jun 12 10:20:02 2007 MSI (s) (4C:FC) [10:20:02:833]: Executing op: ActionStart(Name=Rollback_Do_sqlPerfmon2.D20239D7_E87C_40C9_9837_E70B8D4882C2,Description=Removing performance counters,) <EndFunc Name='LaunchFunction' Return='0' GetLastError='0'> MSI (s) (4C:FC) [10:20:02:849]: Executing op: CustomActionSchedule(Action=Rollback_Do_sqlPerfmon2.D20239D7_E87C_40C9_9837_E70B8D4882C2,ActionType=1281,Source=BinaryData,Target=Rollback_Do_sqlPerfmon2,CustomActionData=100Removing performance counters200000DTSPipelineC:Program FilesMicrosoft SQL Server90DTSBinnDTSPERF.INI) MSI (s) (4C:FC) [10:20:02:849]: Executing op: ActionStart(Name=Do_sqlPerfmon2.D20239D7_E87C_40C9_9837_E70B8D4882C2,Description=Installing performance counters,) MSI (s) (4C:FC) [10:20:02:849]: Executing op: CustomActionSchedule(Action=Do_sqlPerfmon2.D20239D7_E87C_40C9_9837_E70B8D4882C2,ActionType=1025,Source=BinaryData,Target=Do_sqlPerfmon2,CustomActionData=100Installing performance counters200000C:Program FilesMicrosoft SQL Server90DTSBinnDTSPERF.INIC:Program FilesMicrosoft SQL Server90DTSBinnDTSPERF.HC:Program FilesMicrosoft SQL Server90DTSBinnDTSPipelinePerf.dllDTSPipeline0DTSPipelinePrfData_OpenPrfData_CollectPrfData_Close) MSI (s) (4C:94) [10:20:02:864]: Invoking remote custom action. DLL: C:WINDOWSInstallerMSI1683.tmp, Entrypoint: Do_sqlPerfmon2 <Func Name='LaunchFunction'> Function=Do_sqlPerfmon2 <Func Name='GetCAContext'> <EndFunc Name='GetCAContext' Return='T' GetLastError='0'> Doing Action: Do_sqlPerfmon2 PerfTime Start: Do_sqlPerfmon2 : Tue Jun 12 10:20:02 2007 <Func Name='Do_sqlPerfmon2'> <EndFunc Name='Do_sqlPerfmon2' Return='2' GetLastError='2'> PerfTime Stop: Do_sqlPerfmon2 : Tue Jun 12 10:20:02 2007 Gathering darwin properties for failure handling. Error Code: 2 MSI (s) (4C!F0) [10:23:46:381]: Product: Microsoft SQL Server 2005 Integration Services -- Error 29528. The setup has encountered an unexpected error while Installing performance counters. The error is: The system cannot find the file specified.Error 29528. The setup has encountered an unexpected error while Installing performance counters. The error is: The system cannot find the file specified.
You can ignore this and it will complete the installation, but subsequently trying to patch with SP2 will fail on the same sections - Hotfix.exe crashes whilst attempting to patch Database Services, Integration Services and Client Components (3 separate crashes).
I've removed SQL Server 2005 elements and tried to re-install, but it's not improved the situation.
Basically, I have a web-based application that queries aggregates from several big tables that grow rather quickly. I feel I am fairly accomplished at tuning individual queries and have optimized these particular stored procedures as much as I can and often see great results for a period of time. However, after time passes, it seems the stored procedures begins performing really badly. What's frustrating is that I have traced the server, located a stored procedure that consistently executes with an abnormally high duration, but when I run the exact same text directly against the sql server it returns instantly.
If I recompile the stored procedure using my direct connection by including the WITH RECOMPILE clause to the EXEC statement, the problem remains for the web-app. However, if I add the WITH RECOMPILE to the actual stored procedure, it is instantly resolved. I can then remove the WITH RECOMPILE from the stored procedure text and things will remain speedy for a period of time before they again slip back.
I'm curious as to what I can do from a SQL standpoint to correct for this. For now, the app team is setting a counter for each execution and then issuing a WITH RECOMPILE when the counter limit is exceeded.
I apologize if this question has most been asked before and I have attempted a review of the forums but was unable to find any material. Any suggestions, advice, links or general assistance would be most appreciated.
Dear Experts, I'm a DBA, Working for a Product based company. We are implementing our product for a certain client of huge OLTP. our reports team is facing problem (error: all the reports are timed out).though the queries are written properly, Each query is taking some minutes of time. I've given the command DBCC DROPCLEANBUFFERS. the time immediately dropped to 10 sec.
now my question is : please suggest me the DBCC commands or any DBA related commands to improve the performance of the application for my reports team.
Hello all,I've been recruited to assist in diagnosing and fixing a performance problemon an application we have running on SQL Server 7.The application itself is third party software, so we can't get at thesource code. It's a Client Management system, where consultants all overthecountry track their client meetings, results, action plans, etc. , and hasapparently been problematic for a long time now. I came into thisinvestigationin mid-stream, but here's the situation as I understand it:We have users reporting it's slow, with no discernable pattern with respectto what part of the application they're using or now particular time of day.I am told that it doesn't appear to be a bandwith or computer resourceproblem. They apparently added two app servers a year or so ago, whichtemporarilyimproved the performance. We're using a nominal percentage of CPU andmemory.There are three large tables (approx 8 million rows) that are queried often,as users click to see their calendar of appointments or review past meetingswith a client, etc. The activity on these tables is over 90% reads(SELECTS) with about 10% INSERTS/UPDATES. We have attempted to run the IndexAnalyzer Wizard twicebut so far it just seems to hang (it could be that the workload file is toobig?) . So, what we're doing now is isolating the SELECT statements thattake a long time to run and manually comparing them to the indexes thatexist on these large tables. Since we can't alter the SQL source code,we're trying to alter the indexes to improve performance.What I would like to know is, is there a good way to get benchmarkmeasurements so we can explicitly measure any performance changes? Also, doyou thinkwe're going about this the right way, or is there some other avenue we couldbe looking at to improve performance?I recognize that performance questions are tricky to post/answer in anewsgroup, because usually you need more information than is provided. Theproblem isthat this is a high profile investigation (they're hauling us into meetingsevery two days to report our progress) and I need to be able to convincinglystate that we have either improved performance by X% , or that it is theapplication itself that's the problem and we're stuck with it.Any thoughts would be deeply appreciated.Thanks and best regards,Steve
We have Oracle-based enterprise resource planning (ERP) application that facilitates order entry, invoicing, dispatch, stock management, and purchasing. However, it took as much as 30 seconds to perform queries from the remote offices, which were linked via Frame Relay.
Any experiences or ideas shared will be greatly appreciated.
Hi everyone I am analyzing the performance on my SQL Server and need some advice on why I am seeing the results that I am.
One of my problems is that the SQL Server takes an extremely long time to execute the following command 'exec sp_spaceused' on my tempdb. This command usually displays how much free space is remaining on the selected server.
My other problem is that one of the applications that use SQL Server as a back end is acting extremely slugish. Navigating through screens, performing functions and refreshing grids take some time to execute however when I do a trace in SQL Profiler the queries seem to be executing instantly. My first thought was that the queries executed by the application needed to be optimized, but when I do a trace on the queries spawned by the application they seem fine. Does this mean that I have a network bottleneck problem or possibly a PC problem? The PC that we use to do our testing is a P4 3.0 with 512MB of ram running on Windows 2000. The SQL Server is running on Windows 2003 Server with a Raid 5 configuration 4 zeon 3.0 processors with 4 GB of ram. I feel that our desktop PC are sufficient to run any application but have received suggestions that I should upgrade my client PC's to at least 1GB of ram or move to a Citrix server, configure my SQL Server for Raid 10, try file splitting, use gigabit connections from the SQL Server to the desktops etc.
Given the facts above can someone give me advise on the most logical way to resolve my performance issue. Is my problem on the application end of things or do I need to change my network architecture and or hardware?
After installation of MS SQL 7.0 on NT Server computer counters on SQL server didn't available. On other machine all ok. What can I do for resolving this truble?