Isaac, najlepiej uruchamiamy jedną instancję na jednym serwerze i implementujemy różne aplikacje jako schematy i usługi w tej pojedynczej bazie danych. Jeśli serwer ma wystarczającą ilość pamięci, nie będzie problemu, jeśli wszystkie aplikacje będą zachowywać się jak dobrzy obywatele Oracle. Gdy tylko pojawi się aplikacja, która nie korzysta ze zmiennych wiązania, host odczuwa coraz większy ból. To samo dotyczy aplikacji, które co kilka sekund tworzą nowe połączenia, zamiast ponownie wykorzystywać istniejące połączenia. Rzeczy takie jak automatyczne zatwierdzanie również nie pomagają poprawić sytuacji. Jakie jest normalne zachowanie twojej aplikacji? Czy robi duże aktualizacje? Kiedy wykonuje zatwierdzenie? Ile powtórzeń jest generowanych / godzinę? Czy Twoja aplikacja używa zmiennych powiązań? W wielu przypadkach lokalizacja plików redologa online ma kluczowe znaczenie. Jeśli aplikacja generuje dużo powtórzeń (lub konkuruje z inną aplikacją, która to robi), program rejestrujący zwolni i spowoduje znaczne obniżenie wydajności, ponieważ sesja czeka na zakończenie zapisu pliku dziennika. Daj klientowi układ dysku, na którym redo znajduje się na dedykowanych dyskach RAID-10, i zobacz, jak bardzo to pomaga. Dowiedz się również o sytuacji przydziału pamięci. Może zaistnieć potrzeba sprawiedliwej redystrybucji dostępnej pamięci.
mam nadzieję, że to pomoże
Uruchamianie wielu instancji na tym samym serwerze jest możliwe, aw niektórych przypadkach konieczne. Oratab został zaprojektowany specjalnie do zarządzania wieloma instancjami. W przypadku wielu niezależnych aplikacji może być wskazane utworzenie instancji dla każdej aplikacji.
Posiadanie wystarczającej ilości pamięci ma kluczowe znaczenie. Oracle buduje SGA we wspólnej pamięci. Jeśli nie masz wystarczającej ilości pamięci, SGA lub procesy zaczną się zamieniać. Jest to znane jako drżenie i powoduje znaczną utratę wydajności.
Możliwe może być dostrojenie instancji do pracy z mniejszym SGA. Oracle zapewnia narzędzia pomagające dostroić rozmiar SGA. Jeśli którakolwiek z instancji ma zbyt dużą SGA, będzie karać wszystkie instancje.
Innym ważnym zastosowaniem pamięci jest przestrzeń buforowa. Działa to jako dodatkowa pamięć podręczna i może wyeliminować znaczące operacje we / wy odczytu.
Uruchomienie
sar
(przy założeniu, że O / S bazuje na Uniksie) może dać ci dobrą diagnostykę, gdzie jest problem. Prawdopodobne problemy to zamiana lub nasycenie dysku we / wy. Dodanie pamięci RAM prawdopodobnie rozwiąże jeden z tych problemów.Nasyceniem We / Wy dysku można również zaradzić, przenosząc niektóre obszary tabel na inne dyski. Zasadniczo konfiguruję Oracle, aby operacje we / wy były rozmieszczone na jak największej liczbie dysków.
EDYCJA: To kilka przypadków, które mogą wymagać osobnych wystąpień.
źródło
Najważniejszym zasobem jest pamięć RAM.
Każda działająca instancja Oracle przydziela część pamięci RAM dla własnego, gdy jest właśnie uruchomiona i nie jest obciążona.
Używamy 10g z 10 i 11g z 8 instancjami, ale są to serwery programistyczne. Po ponownym uruchomieniu systemu niektóre usługi Oracle nie uruchamiają się automatycznie i muszą zostać uruchomione ręcznie: Oradim -startup -sid xxx.
Właśnie zaczynamy korzystać z automatycznego zarządzania pamięcią, ale sytuacja różni się od SQL Servera, w którym można dodawać bazy danych, ile daje miejsce na dysku.
W twoim przypadku, gdy więcej instancji na jednej maszynie, SGA dla każdej instancji staje się mniejsza, mniej wstępnie skompilowanej sql można buforować, a maszyna musi wykonać więcej kompilacji sql, co zmniejsza wydajność.
Dodanie pamięci RAM może pomóc w twojej sytuacji.
źródło