Skocz do zawartości

Jak "odchudzić" bazę sello

Polecane posty

Da się, za pomocą programu serwisowego. Najlepiej gdyby była zainstalowana wersja Sello 1.38+, gdyż zawiera ona wiele poprawek w mechanizmie czyszczenia bazy.

 

Proszę najpierw wykonać archiwizację bazy danych z menu Sello ==> NARZĘDZIA ==> Archiwizacja - archiwizacja musi być przeprowadzona do 6 godzin przed wykonaniem czyszczenia. Inaczej program serwisowy nie pozwoli tego zrobić.

 

Następnie proszę uruchomić program serwisowy do Sello (admin.exe).

 

Uruchamiając program serwisowy, należy wprowadzić dane dostępowe do serwera SQL, na którym jest baza Sello (te same co przy uruchamianiu Sello są widoczne).

 

obraz.png.f75161133eab6904bce47f483539ef47.png

Następnie wybrać z listy odpowiednią bazę Sello

i przejść do Zaawansowane ==> Czyść bazę danych

obraz.png.b09de15fa08bc0afb63f4964a42e9283.png

W oknie które się pojawi należy wybrać opcję Przelicz wszystkie na dole. Sello przeanalizuje dane w bazie i posortuje wyniki od danych zajmujących najwięcej miejsca malejąco.

 

Poniżej przykładowy wygląd na bazie, wskazuje, że w badanej bazie 91% miejsca zajmują wiadomości e-mail, z czego 99% to ich treści. W programie można usunąć albo całe wiadomości albo tylko ich treści - w ten sposób będzie w programie ślad po tym, że mail jakiś był ale bez treści.

 

obraz.png.97f5e75283e8abc3c8127910144730b9.png

Pasek zielony (górny) pokazuje ile ile obecnie miejsca zajmują wskazane dane, a pasek szary poniżej pokazuje, ile będą te dane zajmować miejsca po czyszczeniu.

Na zrzucie powyżej wybrałem datę graniczną, na rok temu (9 czerwca 2020) - wszystkie starsze maile zostaną usunięte. Po zmianie daty należy nacisnąć link Przelicz po prawej stronie - wtedy program przeliczy tylko wiadomości e-mail. Trwa to krócej niż analiza całej bazy.

Po przeliczeniu szary pasek wskazał 8% i tyle miejsca w bazie będą zabierać maile po czyszczeniu wszystkich starszych niż 9 czerwca 2020.

 

Oczywiście należy te ustawienia dopasować do swoich potrzeb, podejmując decyzję ile miejsca odzyskać, kosztem usunięcia danych młodszych.

 

W sekcji ZDJĘCIA WSZYSTKIE widać, że zdjęcia zajmują 3% bazy, natomiast wśród nich 15% jest zdjęciami niepowiązanymi z towarami i aukcjami.

 

Na koniec, należy nacisnąć przycisk Usuń zaznaczone aby aktywować czyszczenie bazy. Na zakończenie program zapyta czy kompaktować bazę danych - można zatwierdzić, zmniejszy się wtedy plik bazy a dane w nim zostaną uporządkowane.

 

PROTIP:

Jeśli w bazie dużą część będą zajmować zdjęcia a nie będzie zbyt wielu zdjęć niepowiązanych do usunięcia, to z poziomu Sello można wyfiltrować stare aukcje zakończone, zaznaczyć je wszystkie i uruchomić zmiany zbiorcze Ctrl+B i na zakładce INNE usunąć powiązania ze zdjęciami. Zdjęcia te znikną wtedy z tych starych aukcji i jeśli nie są użyte gdzieś w towarach staną się zdjęciami niepowiązanymi - które będzie się dało usunąć za pomocą programu serwisowego. Powiązania ze zdjęciami można również usunąć z poziomu zmian zbiorczych dla towarów.

 

 

 

  • Lubię to 2
Link to postu
W dniu 14.06.2021 o 09:41, Bartosz Rosa napisał:

A co się dzieje po naciśnięciu czyszczenia?

Najpierw pytanie "Czy na pewno czyścić bazę danych?" klikam TAK po czym drugi komunikat "Wybrana operacja wymaże dane na twoim dysku. Czy chcesz przerwać wykonywanie? "  ...... yyyyy hehehe No dobra klikałem TAK zamiast NIE :) Działa. Przepraszam za zamieszanie.

Link to postu
  • 3 tygodnie później...
  • 3 tygodnie później...
W dniu 14.07.2021 o 12:48, Tomek - massur napisał:

A na serio to cały czas czekamy na mechanizm tworzenia nowej bazy danych z przeniesieniem części danych - ustawienia, konfiguracja, słowniki, cenniki, etc.

Dołączam do grona czekających. Przy zmianie komputerów w firmie, przeprowadzkach i innych tego typu operacjach jest to bardzo pożądana funkcjonalność.

Link to postu
  • 2 miesiące temu...
W dniu 14.07.2021 o 12:48, Tomek - massur napisał:

A na serio to cały czas czekamy na mechanizm tworzenia nowej bazy danych z przeniesieniem części danych - ustawienia, konfiguracja, słowniki, cenniki, etc.

Ja też o tym myślałem ale chyba lepiej skorzystać z programu serwisowego i czyszczenia bazy. Czyścisz wszystkie transakcje, paczki, wiadomości, aukcje i masz czystą bazę z ustawieniami.

Ja teraz przy okazji aktualizacji Sello z 1.37.1 na 1.40.0 zrobiłem taki zabieg, że zrobiłem kopię bazy w której zostawiłem tylko transakcje sprzed 3-miesięcy i na niej pracuje. Starą bazę traktuje jako archiwum. Wielkość bazy zmniejszyła się z 40gb do 12gb (zdjęcia wciąż zajmują większą ilość)

Pytanie do @Bartosz Rosa. Program serwisowy i opcja czyszczenia bazy ze starych transakcji usuwa do nich podpięte paczki ale nie usuwa wiadomości a wg mnie powinno. Skasowałem ponad milion transakcji i wiadomości do nich zostały. Oczywiście poradzę sobie z problemem w taki sposób, że w module wiadomości wybiorę filtr NIEPODPIĘTE i usunę z Sello ręcznie.

Można by dorobić też coś takiego na przyszłość:

image.png.ebdf64c362588e6bfba087072525102c.png

Jeszcze zapytam czy to zapytanie będzie odpowiednie do usunięcia wszystkich niepodpiętych wiadomości e-mail?

DELETE FROM em__Email 
WHERE em_Id IN 
	(
	SELECT AU.em_Id 
	FROM vw_Email AS AU 
	WHERE (em_TransId is NULL and em_AuctionId is NULL and em_PackageId is NULL) AND (em_Status=2)
	)

 

Edytowane przez maniootek •
Link to postu
3 godziny temu, maniootek • napisał:

Program serwisowy i opcja czyszczenia bazy ze starych transakcji usuwa do nich podpięte paczki ale nie usuwa wiadomości a wg mnie powinno

Tak, są usuwane tylko podpięcia do paczek i transakcji. Same maile można/trzeba usunąć osobną funkcją dedykowaną czyszczeniu właśnie maili.

 

Co do zapytania, to usuwanie maili działa trochę inaczej. Raz, że trzeba też usunąć wpisy z em_Source - bo tam znajdują się treści maili, dwa, że UIDLe maili trafiają do tabeli em_Archive, aby nie były drugi raz pobierane z serwera pocztowego. Sam warunek powinien być ok.

Link to postu
2 godziny temu, Bartosz Rosa napisał:

Tak, są usuwane tylko podpięcia do paczek i transakcji. Same maile można/trzeba usunąć osobną funkcją dedykowaną czyszczeniu właśnie maili.

Ale funkcja dedykowana czyszczeniu maili kasuje WSZYSTKIE maile (przynajmniej tak jest podpisane) a nie te, które nie mają powiązania. Zgadza się?

Link to postu
W dniu 27.10.2021 o 07:50, Bartosz Rosa napisał:

Tak. Usuwa wszystkie do zadanej daty.

Wczoraj skorzystał z opcji usuwania wszystkich e-maili ale nie usunęło z dnia obecnego ale to by się zgadzało z ustawioną wtedy dzisiejszą datą (bo usuwa wszystko przed tą datą). Musiałbym wpisać dzień następny (jutro) żeby usunęło wszystko (tak myślę). W ogóle fajną opcją było by wysyłanie e-maili do klientów ale bez zapisywania tego do bazy bo my od 6 lat nigdy nie mieliśmy potrzeby patrzeć na te e-maile. Wysłany to wysłany i tylko to na by interesowało.

Po usunięciu e-maili programem serwisowym jeszcze sprawdziłem bazę em_Archive ale tam mam bardzo dużo rekordów pustych.

image.png.9ae4882b24b4b74f88e3740d197c2035.png

Tam wpadają identyfikatory wiadomości, które zostały usunięte, żeby znowu się nie pobierały, ale to dotyczy wiadomości odebranych, zgadza się? Zastanawiam się uruchomić operację:

Cytat

truncate em_Archive

co myślisz? ma to jakieś powiązanie? ogólnie ja nie pobieram e-maili do Sello bo używam Thunderbirda i w sumie nie wiem nawet skąd się wzięły te wpisy. No chyba, że kiedyś bardzo dawno temu pobraliśmy ale potem usunęliśmy.

Kolejna kwestia to paczki bez transakcji, mam ich bardzo dużo bo w taki sposób realizuje paczki reklamacyjne i nie mogę ich usunąć w sello zbiorczo ani też pojedynczo bo są oznaczone jako wysłane. Może dodać taką opcję do programu serwisowego?

Edytowane przez maniootek •
Link to postu
W dniu 27.10.2021 o 08:51, maniootek • napisał:

W ogóle fajną opcją było by wysyłanie e-maili do klientów ale bez zapisywania tego do bazy

Tu myślę, że z pomocą przyjdzie Sello NX i klient poczty znany z Gestora nexo. Ma on m.in. obsługę IMAP o którą w zasadzie od zawsze były prośby, zapewne jakieś mechanizmy archiwizacji maili też by się znalazły lub znajdą się w przyszłości.

 

W dniu 27.10.2021 o 08:51, maniootek • napisał:

co myślisz? ma to jakieś powiązanie? ogólnie ja nie pobieram e-maili do Sello bo używam Thunderbirda i w sumie nie wiem nawet skąd się wzięły te wpisy. No chyba, że kiedyś bardzo dawno temu pobraliśmy ale potem usunęliśmy.

Można spróbować usunąć, zrób mimo wszystko najpierw kopię bazy. Tym bardziej jeśli nie ma tam UIDLów to ta tabela i tak niewiele daje.

W dniu 27.10.2021 o 08:51, maniootek • napisał:

paczki bez transakcji, mam ich bardzo dużo bo w taki sposób realizuje paczki reklamacyjne i nie mogę ich usunąć w sello zbiorczo ani też pojedynczo bo są oznaczone jako wysłane. Może dodać taką opcję do programu serwisowego?

Wydaje się rozsądne, ale w związku z Sello NX nie będziemy już tego do starego Sello dorabiać.

 

Link to postu
  • 4 miesiące temu...

To może z innej beczki bo dzisiaj nam baza przekroczyła 10GB. Usuwanie przez program serwisowy nic nie dało ponieważ nie mieliśmy niepowiązanych zdjęć. Usunąłem zdjęcia ręcznie z zakładki towary masowym usuwaniem. Dało nam to w programie serwisowym 2GB zdjęć.

 

Pytanie JAK usunąć zdjęcia np. z aukcji zakończonych, których jest od cholery, a tam nie ma opcji usuń zdjęcie (w zmianach zbiorczych). Rozłączanie z towarem też nie wchodzi w grę, bo musiałbym 20.000 razy kliknąć rozłączanie ;) (niestety tyle aukcji nam się zrobiło przez te 10 lat).

 

Jaka porada aby to zrobić jakiś automatem?

Link to postu

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.

Użytkownik forum
Odpowiedz...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...