Avviso

Tutto il materiale, le guide e i suggerimenti che trovate in questo sito sono forniti senza alcuna garanzia, dato che rappresentano soltanto appunti e note personali pubblicate nella speranza che possano essere utili a qualcuno.

mercoledì 24 febbraio 2010

Macchina virtuale che consuma CPU in Idle: colpa di mscorsvw.exe?

Ieri mi e' capitato di accorgermi che la mia virtual machine, in idle, consumava piu' CPU che durante il normale utilizzo!

Credevo fosse un problema di driver della VM, invece era colpa di mscorsvw.exe. Questo servizio e' schedulato per girare nei momenti, appunto, di idle del sistema, e il suo scopo e' quello di compilare in background le librerie del framework .NET di Microsoft.

Quindi se avete installato qualche .NET framework, Visual Studio oppure SQL Server (sia Standard che Express) puo' darsi che stia "lavorando per voi".

Il file che gescisce questi processi si chiama

NGEN.exe. Si trova in C:\Windows\Microsoft.NET\Framework\v2.0.50727 (ma in Windows 7 e' solo un alias per quello che si trova anche sotto la directory \V4.xxxxxx ).Andate quindi in quella directory (con un prompt dei comandi che abbia privilegi di amministratore) e digitate

NGEN executequeueditems

Sappiate che ci mettera' un po' di tempo, a seconda di quanti CLR deve ancora compilare.

Per vedere lo stato dei lavori digitate:

NGEN queue status

E infine per vedere il log,

NGEN display

giovedì 18 febbraio 2010

ODBCAD32 Amministrazione ODBC Windows 7 64-bit e Error 193

Un paio di dritte per risolvere i vostri (e i miei) problemi con ODBC in Windows 7 e Windows Vista a 64-bit.

Prima cosa: se avete importato i vostri dati tramite Migrazione dati di Windows da una versione a 32bit, sappiate che nel registro i vostri DSN Utente e DSN di sistema se funzionavano con driver a 32bit (molto probabile nel caso di Mysql o Oracle) non funzioneranno più, e vi daranno l'errore 193 (in pratica il sistema non riesce a caricare le DLL corrette).

Soluzione: aprite Regedit, cercate il nome dei vostri DSN, e trovateli (saranno in una cartella dal nome ODBC.INI).

Dovete spostarli nella stessa chiave HKLM\Software\ ma stavolta sotto la voce Wow6432Node\ODBC !!!

Quindi diventa HKLM\Software\Wow6432Node\ODBC.... etc

Per farlo, esportate il vecchio ODBC.INI in un file .REG, apritelo con notepad, sostituite i percorsi e poi re-importatelo.

Ultima ma FONDAMENTALE accortezza!! Quando aprite il tool per la gestione ODBC, non aprite semplicemente Start-> Esegui -> ODBCAD32.exe perchè è quello che si trova sotto c:\windows\system32 e quello lavora con i driver ODBC a 64-bit!!!!

Per lavorare a 32-bit eseguite c:\Windows\SysWow64\odbcad32.exe !!!!

lunedì 1 febbraio 2010

Eccezioni di Windows Firewall per SQL SERVER 2008

http://msdn.microsoft.com/en-us/library/ms175043.aspx

Invece di lavorare sulle porte, conviene aggiungere il programma alle eccezioni.

In particolare:

C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe.

Se invece preferite lavorare sulle porte, aprite 1433 TCP e 1434 UDP, se desiderate anche avere Named Pipes disponibili e' necessario anche abilitare "File and Printer Sharing" come eccezione del firewall