2014-12-27
Microsoft ogłosił wycofanie szkoleń z SQL 2012 i zastąpienie ich nowymi szkoleniami z SQL 2014. Oto skopiowana z artykułu tabelka ze starymi i nowymi szkoleniami:
| SQL Server 2012 Course# |
SQL Server 2012 Title |
SQL Server 2014 Course# |
SQL Server 2014 Title |
SQL Server Exam (in market) |
| 10774A |
Querying Microsoft SQL Server 2012 |
20461C |
Querying Microsoft SQL Server |
70-461 |
| 10775A |
Administering Microsoft SQL Server 2012 Databases |
20462C |
Administering Microsoft SQL Server Databases |
70-462 |
| 10777A |
Implementing a Data Warehouse with Microsoft SQL Server 2012 |
20463C |
Implementing a Data Warehouse with Microsoft SQL Server |
70-463 |
| 10776A |
Developing Microsoft SQL Server 2012 Databases |
20464C |
Developing Microsoft SQL Server Databases |
70-464 |
| 20465B |
Designing Database Solutions for SQL Server 2012 |
20465C |
Designing a Data Solution with Microsoft SQL Server |
70-465 |
| 10778A |
Implementing Data Models and Reports with Microsoft SQL Server 2012 |
20466C |
Implementing Data Models and Reports with Microsoft SQL Server |
70-466 |
| 20467B |
Designing Business Intelligence Solutions with Microsoft SQL Server 2012 |
20467C |
Designing Self-Service Business Intelligence and Big Data Solutions |
70-467 |
http://pages.email.microsoftemail.com/page.aspx?QS=38dfbe491fab00ea2a47f1ea8bd86c9a9fbfdac1c1554482f65d74c18d68d0fb&ArticleID=b9d251d5-598b-4b59-9e46-36dc33c437d0
2014-12-24

W Windows Server 2008 można było zmienić konfigurację Terminal Services tak, aby w przypadku braku aktywności użytkownika pulpitu zdalnego sesja nie została wylogowana, a wraz z tym, aby nie zostały pozamykane programy otwarte w tej sesji. Sesja mogła przejść w stan disconnected, aż wreszcie po upływie jeszcze dłuższego czasu mogło dojść do rzeczywistego wylogowania nieaktywnego użytkownika.

Narzędzie pozwalające na wykonanie takiej konfiguracji to Remote Desktop Session Host Configuration. Niestety w Windows Server 2012 to narzędzie zniknęło. Czytaj dalej »
2014-12-23
Aplikacja .NET C# powinna przeczytać i wyfiltrować zdarzenia z EventLog systemu lokalnego i zdalnego. Pomysł prosty, może można lepiej, ale składam zapytanie WMI, które następnie jest uruchamiane przez System.Management.ManagementObjectSearcher. Wygląda to mniej więcej tak (daty i inne wartości filtra zostawiam celowo „na sztywno”):
scope = new ManagementScope(„\\\\”+serverName+”\\root\\cimv2”);
scope.Connect();
query = „Select * from Win32_NTLogEvent Where Logfile = 'System’ AND TimeWritten >= '2014-12-01′ AND TimeWritten <=’2015-01-01′”;
query += ” AND EventCode = 7040 ” ;
query += ” AND SourceName = 'Service Control Manager”;
query+= ” AND Message LIKE '%SQL%'”;
Potem uruchomienie zapytania:
queryObj = new ObjectQuery(query);
eventsWMI = new System.Management.ManagementObjectSearcher(scope,queryObj);
foreach (System.Management.ManagementObject e in eventsWMI.Get())
{ //….
}
I…. błąd! Probemem okazały się daty. Niektóre systemy nie potrafią zrozumieć daty podanej napisami, tak jak zrobiłem to powyżej. Zmiana polega na wcześniejszym skonwertowaniu dat:
string wmi_startDate = System.Management.ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now.AddDays(-10));
string wmi_finishDate = System.Management.ManagementDateTimeConverter.ToDmtfDateTime(DateTime.Now);
Teraz zapytanie zmianiam na:
query = „Select * from Win32_NTLogEvent Where Logfile = 'System’ AND TimeWritten >= '” + wmi_startDate + „’ AND TimeWritten <='” + wmi_finishDate + „'”;
i to działa…. Super!
Pomogło: http://powershell.com/cs/blogs/tips/archive/2009/03/11/filtering-events-by-date-and-time.aspx
2014-12-17
Chcesz „na żywo” dzielić się kodem?
Wejdź na stronę:
http://www.codeshare.io/
Zostaniesz przekierowany na nieco inny adres, np. http://www.codeshare.io/7xwPk
Podaj ten adres tym, którzy razem z tobą tworzą kod i od tej pory macie wspólną „tablicę”, na której można wklejać kod!. Super!
2014-12-13
Aby włączyć lub wyłączyć synchronizację czasu z Internetem kliknij zegar wyświetlany na pasku zadań i wybierz „Zmień ustawienia daty i godziny”. Na ostatniej zakładce „Czas z Internetu” kliknij „Zmień ustawienia” i zaznacz lub odznacz pole „Synchronizuj z internetowym serwerem czasu”.

Domyślnie czas będzie synchronizowany co 7 dni czyli co 604800 sekund. Jeżeli chcesz zmienić ten interwał wpisz odpowiednią ilość sekund w rejestrze do klucza SpecialPollInterval w HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\W32Time\TimeProviders\NtpClient:

2014-12-12
Oj zdarzało się walczyć z tym błędem… Ale dopiero teraz trafiłem na jakikolwiek opis znaczeń numerycznych kodów tego błedu. Znajduje się on na http://blitzkrieged5.rssing.com/chan-3991667/latest.php Żeby „nie uciekły” zamieszczam je niżej: Czytaj dalej »
2014-12-12
Paczka SSIS miała właśnie wykonać pewną czynność wymagającą założenia locka exclusive na całej tabeli, co zwykle trwało kilka chwil. Niestety tym razem proces zatrzymał się i stoi już tak od 20 minut… Rzut oka w Activity monitor, a może lepiej w sys.dm_exec_connections lub sp_who2 i już wiadomo co się dzieje. Proces zablokowany przez proces ze spid=18. No ale hola hola… przecież SPID<51 to system! Czy możemy tak po prostu killować proces systemowy!? Osobiście nie polecam takiego postępowania.
Baza danych miała ustawione Auto Create Statistics i Auto Update Statistics na true. Ponieważ tabela nie była mała, przeliczanie statystyk trochę serwerowi zajęło. Trzeba było po prostu cierpliwie poczekać.I tu widać, że Auto Update Statistics warto w takim przypadku wyłączyć, tym bardziej, jeśli administrator zaplanował przeliczanie statystyk jako job w Agencie.
Najtrudniejszym krokiem w tym przypadku było stwierdzenie, że blokującym procesem są rzeczywiście statystyki. Można to było wywnioskować po:’
- dużej liczbie odczytów zapisów do danego pliku z tego procesu
- sesji profilera łapiącej zdarzenia związane ze statystykami.
Pamiętajmy, że można pozwolić SQL na utrzymywanie statystyk małych tabel automatycznie, duże zaś oznaczyć jako NORECOMPUTE i utrzymywać w nich statystyki ręcznie. Dokkładniej opisuje to np http://www.mssqltips.com/sqlservertip/1056/norecompute-option-of-update-statistics-in-sql-server/
A tu też ładne demo o statystykach: https://www.simple-talk.com/sql/performance/managing-sql-server-statistics/