piątek, 25 listopada 2016

Strojenie baz danych MSSQL cz.1 - sprzęt

Dobór konfiguracji sprzętowej dla serwera bazy danych

parametry do uwzględnienia dla poprawy wydajności:


  • Pamięć RAM (ilość)
  • Procesor Architektura 64 bit odgrywa mniejsze znaczenie, powinien zawierać rdzenie nowej generacji  i taktowaniu przynajmniej 2 GHz. 
  • Nie wirtualizować np HyperV
  • Raid 1 (mirror) dla wolumenu obsługującego system
  • Raid 10 dla wolumenu przechowującego dane
  • Zastosowanie dysków SSD
Przydzielenie pamięci dla MS SQL server

Opcje ustawień parametru Maximum Server Memory przy założeniu, że na serwerze nie pracują dodatkowe aplikacje oraz inne moduły serwera SQL . Nie dotyczy to wersji Express.

Physical RAM                        MaxServerMem Setting 
2GB                                           1500 
4GB                                           3200 
6GB                                           4800 
8GB                                           6400 
12GB                                         10000 
16GB                                         13500 
24GB                                         21500 
32GB                                         29000 
48GB                                         44000 
64GB                                         60000
72GB                                         68000
96GB                                         92000
128GB                                       124000

źródło link


środa, 20 lipca 2016

Wordpress optymalizacja cz.2 kompresja zdjęć

Analiza strony pod względem wydajności 

https://tools.pingdom.com

Wykorzystałem program Caesium do masowej redukcji rozmiaru zdjęć

link do opisu 

Ustawienia programu






wtorek, 12 lipca 2016

Optymalizacja Wordpress cz.1 INODE i wtyczki

INODE

dotyczy systemów Unix  podobnych

W systemie UNIX/Linux dane przechowywane są w hierarchicznym systemie plików zawierającym pliki różnych typów, "inode" jest strukturą danych przechowującą informację o pliku lub katalogu.

Gdy na serwerze jest setki tysięcy plików, to znacznie obniża ogólną wydajność dysku, ponieważ każdy plik na dysku jest śledzony/indeksowany. Należy usunąć tzw. pliki osierocone.

Zastosowanie wtyczek

Wtyczka WP Sweep i WP Clean UP

Zadanie
Oczyszcza bazę danych z duplikatów, nieużywanych elementów, itp. 

Darmowe wtyczki pozwalają na szybkie kasowanie takich elementów jak szkiców, skasowanych komentarzy, niezatwierdzonych komentarzy, komentarzy spamu, plików meta dla wpisów i komentarzy, osieroconych terminów, duplikatów plików meta.




piątek, 9 października 2015

środa, 7 października 2015

Usuwanie zestawów dokumentów w programie Płatnik ZUS zapytania SQL


Wykonaj standardową procedurę archiwizacji danych Płatnika bez usuwania zestawów dokumentów z bazy

Przykład 1
Usuń zestawy np o numerze id 58,57,56 stosując zapytanie SQL

DELETE FROM ZESTAW_DOKUM WHERE [id_zestaw] IN (58,57,56)
go
DELETE FROM [ZESTAW] WHERE [ID] IN (58,57,56)
go


Przykład 2
Usunięte zestawy o podany zakres i kontekst Płatnika składek. Dla bezpieczenstwa nie wykonujemy polecenia delete na tabeli ZESTAW_DOKUM nadajemy kolejne numery nowym zestawom gdy usuniemy może pojawić się problem z przywróceniem archiwum które pamięta stare numery zestawów

DELETE FROM ZESTAW_DOKUM WHERE ID_ZESTAW BETWEEN 50 AND 52
go
DELETE FROM ZESTAW WHERE ID BETWEEN 50 AND 52 AND ID_PLATNIK = 2
go

piątek, 28 sierpnia 2015

Usuwanie zestawów dokumentów z pominięciem usunięcia dokumentów w zakładce Wszystkie dokumenty

Poniżej skrypt, który usuwa zestawy dokumentów nie usuwa dokumentów w zakładce Wszystkie dokumenty nie archiwizuje przykładowe zestawy 58,57,56 aby zarchiwizować trzeba zmienić statuspt na P lub H
Pobierz

czwartek, 20 sierpnia 2015

Optymalizacja Płatnika ZUS

Zapytanie SQL wyświetlające rozmiar tabel

SELECT  so.name AS TableName, MAX(si.rows) AS rc FROM sysobjects AS so INNER JOIN sysindexes AS si ON OBJECT_ID(so.name) = si.id WHERE so.xtype = 'U' GROUP BY so.name ORDER BY rc desc

Odbudowa indeksów w bazie Płatnik ZUS

SELECT  so.name AS TableName, MAX(si.rows) AS rc FROM sysobjects AS so INNER JOIN sysindexes AS si ON OBJECT_ID(so.name) = si.id WHERE so.xtype = 'U' GROUP BY so.name ORDER BY rc desc
DBCC DBREINDEX (DOKUMENT,'',0)
DBCC DBREINDEX (UBEZP_ZUSRCA,'',0)
DBCC DBREINDEX (UBEZP_ZUSRZA,'',0)
DBCC DBREINDEX (UBEZP_ZUSRSA,'',0)
DBCC DBREINDEX (BLAD_DOK,'',0)
DBCC DBREINDEX (UBEZP_ADRES,'',0)
DBCC DBREINDEX (DZIENNIK,'',0)
DBCC DBREINDEX (ZUSZWUA,'',0)
DBCC DBREINDEX (ZESTAW_DOKUM,'',0)
DBCC DBREINDEX (ZUSZZA,'',0)
DBCC DBREINDEX (MIEJSCE,'',0)
DBCC DBREINDEX (ZUSZUA,'',0)
DBCC DBREINDEX (UBEZP_IDENT,'',0)
DBCC DBREINDEX (UBEZPIECZONY,'',0)
DBCC DBREINDEX (UBEZP_INNE,'',0)
DBCC DBREINDEX (ZESTAW,'',0)
DBCC DBREINDEX (BLAD_MIEDZY,'',0)
DBCC DBREINDEX (ARCHIWUM_O,'',0)
DBCC DBREINDEX (ZUSDRA,'',0)
DBCC DBREINDEX (ZUSRCA,'',0)
DBCC DBREINDEX (ZUSRSA,'',0)
DBCC DBREINDEX (ZUSRZA,'',0)
DBCC DBREINDEX (ZUSZCZA,'',0)
DBCC DBREINDEX (ZUSZCNA,'',0)
DBCC DBREINDEX (ZUSZIUA,'',0)
DBCC DBREINDEX (PARAMETRY_PRZEKAZU,'',0)
DBCC DBREINDEX (CERTYFIKAT,'',0)
DBCC DBREINDEX (CZR_ZUSZCNA,'',0)
DBCC DBREINDEX (HISTORIA,'',0)
DBCC DBREINDEX (UPRAWNIENIA,'',0)
DBCC DBREINDEX (LISTA_DZIENNIK,'',0)
DBCC DBREINDEX (UZYTKOWNIK,'',0)
DBCC DBREINDEX (PARAMETRY,'',0)
DBCC DBREINDEX (DOKUMENT_PLATNICZY,'',0)
DBCC DBREINDEX (PARAM_KONF,'',0)
DBCC DBREINDEX (ZUSIWA,'',0)
DBCC DBREINDEX (PLATN_DANEROZL,'',0)
DBCC DBREINDEX (PLATNIK_PARAMETR,'',0)
DBCC DBREINDEX (CRL,'',0)
DBCC DBREINDEX (ZUSZPA,'',0)
DBCC DBREINDEX (PLATN_ADRES,'',0)
DBCC DBREINDEX (OSOBA_PRYWATNA,'',0)
DBCC DBREINDEX (PARAM_PLAT_UZYT,'',0)
DBCC DBREINDEX (PLATN_RACHBANK,'',0)
DBCC DBREINDEX (PLATN_IDENT,'',0)
DBCC DBREINDEX (PLATNIK,'',0)
DBCC DBREINDEX (UBEZP_ZUSRGA,'',0)
DBCC DBREINDEX (UBEZP_ZUSRNA,'',0)
DBCC DBREINDEX (UBEZPIECZONY_ZUS,'',0)
DBCC DBREINDEX (UBEZP_ZUSZSWA,'',0)
DBCC DBREINDEX (UBEZP_KOD_PRACY,'',0)
DBCC DBREINDEX (UBEZP_PODLEGANIE,'',0)
DBCC DBREINDEX (UBEZP_SKLAD,'',0)
DBCC DBREINDEX (UBEZP_SWIAD,'',0)
DBCC DBREINDEX (UBEZP_WYBOR,'',0)
DBCC DBREINDEX (UBEZP_INDSCHEMAT,'',0)
DBCC DBREINDEX (UBEZP_CZLONEK_RODZINY,'',0)
DBCC DBREINDEX (PLATN_IWA,'',0)
DBCC DBREINDEX (PLATN_OBOWIWA,'',0)
DBCC DBREINDEX (PLATN_OBOWOPLSKL,'',0)
DBCC DBREINDEX (PLATN_STATUS,'',0)
DBCC DBREINDEX (PLATN_ZSWA,'',0)
DBCC DBREINDEX (PLATN_HIST,'',0)
DBCC DBREINDEX (PLATNIK_ZUS,'',0)
DBCC DBREINDEX (PLIK_DOKUM,'',0)
DBCC DBREINDEX (POTWIERDZENIE,'',0)
DBCC DBREINDEX (PRZESYLKA,'',0)
DBCC DBREINDEX (SDWI_KODTYTUB,'',0)
DBCC DBREINDEX (SDWI_NAGLOWEK,'',0)
DBCC DBREINDEX (SDWI_UBEZPIECZONY,'',0)
DBCC DBREINDEX (sysdiagrams,'',0)
DBCC DBREINDEX (TMP_OKRESY,'',0)
DBCC DBREINDEX (TMP_TAB,'',0)
DBCC DBREINDEX (TMP_UBEZPIECZENI,'',0)
DBCC DBREINDEX (UBEZP_30KROTNOSC,'',0)
DBCC DBREINDEX (NIEJED,'',0)
DBCC DBREINDEX (CZR_ZUSZCZA,'',0)
DBCC DBREINDEX (DOKROZL_DEKLARACJA,'',0)
DBCC DBREINDEX (DOKROZL_RAPORT,'',0)
DBCC DBREINDEX (ARCH_DZIENNIK,'',0)
DBCC DBREINDEX (ARCHIWUM_I,'',0)
DBCC DBREINDEX (BLAD_PRZETW,'',0)
DBCC DBREINDEX (BLK_ZAA,'',0)
DBCC DBREINDEX (BLK_ZBA,'',0)
DBCC DBREINDEX (BLOKADA,'',0)
DBCC DBREINDEX (IMPORT,'',0)
DBCC DBREINDEX (INFOUDO,'',0)
DBCC DBREINDEX (INFOUDO_UBEZP,'',0)
DBCC DBREINDEX (KODSWPRZ,'',0)
DBCC DBREINDEX (KODTYTUB,'',0)
DBCC DBREINDEX (KOMPLET_DOKROZL,'',0)
DBCC DBREINDEX (KOMUNIKAT,'',0)
DBCC DBREINDEX (ZUSZSWA,'',0)
DBCC DBREINDEX (ZUSZWPA,'',0)
DBCC DBREINDEX (ZUSRGA,'',0)
DBCC DBREINDEX (ZUSRNA,'',0)
DBCC DBREINDEX (WIADOMOSC,'',0)
DBCC DBREINDEX (ZALACZNIK,'',0)
DBCC DBREINDEX (ZAMOWIENIE,'',0)
DBCC DBREINDEX (ZUSZFA,'',0)
DBCC DBREINDEX (ZUSZIPA,'',0)
DBCC DBREINDEX (ZUSZAA,'',0)
DBCC DBREINDEX (ZUSZBA,'',0)


Defragmentacja indeksów w bazie Płatnik ZUS

SELECT  so.name AS TableName, MAX(si.rows) AS rc FROM sysobjects AS so INNER JOIN sysindexes AS si ON OBJECT_ID(so.name) = si.id WHERE so.xtype = 'U' GROUP BY so.name ORDER BY rc desc
DBCC INDEXDEFRAG ('platnik','DOKUMENT')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSRCA')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSRZA')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSRSA')
DBCC INDEXDEFRAG ('platnik','BLAD_DOK')
DBCC INDEXDEFRAG ('platnik','UBEZP_ADRES')
DBCC INDEXDEFRAG ('platnik','DZIENNIK')
DBCC INDEXDEFRAG ('platnik','ZUSZWUA')
DBCC INDEXDEFRAG ('platnik','ZESTAW_DOKUM')
DBCC INDEXDEFRAG ('platnik','ZUSZZA')
DBCC INDEXDEFRAG ('platnik','MIEJSCE')
DBCC INDEXDEFRAG ('platnik','ZUSZUA')
DBCC INDEXDEFRAG ('platnik','UBEZP_IDENT')
DBCC INDEXDEFRAG ('platnik','UBEZPIECZONY')
DBCC INDEXDEFRAG ('platnik','UBEZP_INNE')
DBCC INDEXDEFRAG ('platnik','ZESTAW')
DBCC INDEXDEFRAG ('platnik','BLAD_MIEDZY')
DBCC INDEXDEFRAG ('platnik','ARCHIWUM_O')
DBCC INDEXDEFRAG ('platnik','ZUSDRA')
DBCC INDEXDEFRAG ('platnik','ZUSRCA')
DBCC INDEXDEFRAG ('platnik','ZUSRSA')
DBCC INDEXDEFRAG ('platnik','ZUSRZA')
DBCC INDEXDEFRAG ('platnik','ZUSZCZA')
DBCC INDEXDEFRAG ('platnik','ZUSZCNA')
DBCC INDEXDEFRAG ('platnik','ZUSZIUA')
DBCC INDEXDEFRAG ('platnik','PARAMETRY_PRZEKAZU')
DBCC INDEXDEFRAG ('platnik','CERTYFIKAT')
DBCC INDEXDEFRAG ('platnik','CZR_ZUSZCNA')
DBCC INDEXDEFRAG ('platnik','HISTORIA')
DBCC INDEXDEFRAG ('platnik','UPRAWNIENIA')
DBCC INDEXDEFRAG ('platnik','LISTA_DZIENNIK')
DBCC INDEXDEFRAG ('platnik','UZYTKOWNIK')
DBCC INDEXDEFRAG ('platnik','PARAMETRY')
DBCC INDEXDEFRAG ('platnik','DOKUMENT_PLATNICZY')
DBCC INDEXDEFRAG ('platnik','PARAM_KONF')
DBCC INDEXDEFRAG ('platnik','ZUSIWA')
DBCC INDEXDEFRAG ('platnik','PLATN_DANEROZL')
DBCC INDEXDEFRAG ('platnik','PLATNIK_PARAMETR')
DBCC INDEXDEFRAG ('platnik','CRL')
DBCC INDEXDEFRAG ('platnik','ZUSZPA')
DBCC INDEXDEFRAG ('platnik','PLATN_ADRES')
DBCC INDEXDEFRAG ('platnik','OSOBA_PRYWATNA')
DBCC INDEXDEFRAG ('platnik','PARAM_PLAT_UZYT')
DBCC INDEXDEFRAG ('platnik','PLATN_RACHBANK')
DBCC INDEXDEFRAG ('platnik','PLATN_IDENT')
DBCC INDEXDEFRAG ('platnik','PLATNIK')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSRGA')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSRNA')
DBCC INDEXDEFRAG ('platnik','UBEZPIECZONY_ZUS')
DBCC INDEXDEFRAG ('platnik','UBEZP_ZUSZSWA')
DBCC INDEXDEFRAG ('platnik','UBEZP_KOD_PRACY')
DBCC INDEXDEFRAG ('platnik','UBEZP_PODLEGANIE')
DBCC INDEXDEFRAG ('platnik','UBEZP_SKLAD')
DBCC INDEXDEFRAG ('platnik','UBEZP_SWIAD')
DBCC INDEXDEFRAG ('platnik','UBEZP_WYBOR')
DBCC INDEXDEFRAG ('platnik','UBEZP_INDSCHEMAT')
DBCC INDEXDEFRAG ('platnik','UBEZP_CZLONEK_RODZINY')
DBCC INDEXDEFRAG ('platnik','PLATN_IWA')
DBCC INDEXDEFRAG ('platnik','PLATN_OBOWIWA')
DBCC INDEXDEFRAG ('platnik','PLATN_OBOWOPLSKL')
DBCC INDEXDEFRAG ('platnik','PLATN_STATUS')
DBCC INDEXDEFRAG ('platnik','PLATN_ZSWA')
DBCC INDEXDEFRAG ('platnik','PLATN_HIST')
DBCC INDEXDEFRAG ('platnik','PLATNIK_ZUS')
DBCC INDEXDEFRAG ('platnik','PLIK_DOKUM')
DBCC INDEXDEFRAG ('platnik','POTWIERDZENIE')
DBCC INDEXDEFRAG ('platnik','PRZESYLKA')
DBCC INDEXDEFRAG ('platnik','SDWI_KODTYTUB')
DBCC INDEXDEFRAG ('platnik','SDWI_NAGLOWEK')
DBCC INDEXDEFRAG ('platnik','SDWI_UBEZPIECZONY')
DBCC INDEXDEFRAG ('platnik','sysdiagrams')
DBCC INDEXDEFRAG ('platnik','TMP_OKRESY')
DBCC INDEXDEFRAG ('platnik','TMP_TAB')
DBCC INDEXDEFRAG ('platnik','TMP_UBEZPIECZENI')
DBCC INDEXDEFRAG ('platnik','UBEZP_30KROTNOSC')
DBCC INDEXDEFRAG ('platnik','NIEJED')
DBCC INDEXDEFRAG ('platnik','CZR_ZUSZCZA')
DBCC INDEXDEFRAG ('platnik','DOKROZL_DEKLARACJA')
DBCC INDEXDEFRAG ('platnik','DOKROZL_RAPORT')
DBCC INDEXDEFRAG ('platnik','ARCH_DZIENNIK')
DBCC INDEXDEFRAG ('platnik','ARCHIWUM_I')
DBCC INDEXDEFRAG ('platnik','BLAD_PRZETW')
DBCC INDEXDEFRAG ('platnik','BLK_ZAA')
DBCC INDEXDEFRAG ('platnik','BLK_ZBA')
DBCC INDEXDEFRAG ('platnik','BLOKADA')
DBCC INDEXDEFRAG ('platnik','IMPORT')
DBCC INDEXDEFRAG ('platnik','INFOUDO')
DBCC INDEXDEFRAG ('platnik','INFOUDO_UBEZP')
DBCC INDEXDEFRAG ('platnik','KODSWPRZ')
DBCC INDEXDEFRAG ('platnik','KODTYTUB')
DBCC INDEXDEFRAG ('platnik','KOMPLET_DOKROZL')
DBCC INDEXDEFRAG ('platnik','KOMUNIKAT')
DBCC INDEXDEFRAG ('platnik','ZUSZSWA')
DBCC INDEXDEFRAG ('platnik','ZUSZWPA')
DBCC INDEXDEFRAG ('platnik','ZUSRGA')
DBCC INDEXDEFRAG ('platnik','ZUSRNA')
DBCC INDEXDEFRAG ('platnik','WIADOMOSC')
DBCC INDEXDEFRAG ('platnik','ZALACZNIK')
DBCC INDEXDEFRAG ('platnik','ZAMOWIENIE')
DBCC INDEXDEFRAG ('platnik','ZUSZFA')
DBCC INDEXDEFRAG ('platnik','ZUSZIPA')
DBCC INDEXDEFRAG ('platnik','ZUSZAA')
DBCC INDEXDEFRAG ('platnik','ZUSZBA')


Wykonanie operacji SHRINK na bazie

SELECT  so.name AS TableName, MAX(si.rows) AS rc FROM sysobjects AS so INNER JOIN sysindexes AS si ON OBJECT_ID(so.name) = si.id WHERE so.xtype = 'U' GROUP BY so.name ORDER BY rc desc
DBCC SHRINKDATABASE (platnik,0,TRUNCATEONLY)