Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zoptymalizować bazę danych witryny

Baza danych może przechowywać ogromna ilość informacji – wszystkie posty, strony, komentarze, menu i dowolna forma danych tekstowych. Im bardziej rozbudowana witryna, tym większa jest jej baza danych. Wraz z nim baza danych może zostać „zaśmiecona” niepotrzebnymi elementami, takimi jak komentarze spamowe, wersje robocze, zamknięte lub tymczasowe pliki itp.

Oczywiście może to spowodować słabą wydajność witryny, a nawet nadmierne wykorzystanie zasobów konta cPanel – wiele żądań MySQL do „ciężkiej” bazy danych może utknąć w kolejka uderzająca w procesy wejścia i limity procesora. Dlatego wymagana jest właściwa optymalizacja, aby uwzględnić wydajność, z jaką dane są pobierane z bazy danych.

Ten przewodnik pokaże Ci kilka sposobów osiągnięcia tego celu.

1. Na początek musisz zlokalizować bazę danych przypisaną do Twojej witryny. Jeśli nie znasz jego nazwy, sprawdź plik konfiguracyjny swojej witryny:

CMS Ścieżka do pliku konfiguracyjnego Linia
WordPress folder główny instalacji, wp-config.php definiuj('DB_NAME', 'cpuser_database');
Joomla główny folder instalacji, configuration.php publiczna $db ='cpuser_database';
PrestaShop główny folder instalacji>>/config/settings.inc.php definiuj('_DB_NAME_', cpuser_database');
OpenCart folder główny instalacji, config.php definiuj('DB_DATABASE', 'cpuser_database');
Drupal główny folder instalacji>>/sites/default/settings.php 'baza danych' => 'cpuser_baza danych',
Moodle główny folder instalacji,config.php $CFG->nazwa bazy danych,='cpuser_database';
Magento główny folder instalacji>>/app/etc/local.xml <[! CDATA [baza_danych_cpusera] ]>
phpBB folder główny instalacji, config.php $dbname ='cpuser_database';


2. W naszym przypadku mamy witrynę opartą na WordPressie, nazwa naszej bazy danych to nctests_wp255 :



3. Przed wprowadzeniem jakichkolwiek zmian zdecydowanie zalecamy pobranie kopii zapasowej Twojej bazy danych. Aby to zrobić, przejdź do Pliki sekcja> Kopia zapasowa menu:



4. Kliknij daną bazę danych w Pobierz kopię zapasową bazy danych MySQL menu do rozpoczęcia pobierania:



5. Teraz możesz przystąpić do samej optymalizacji. Przejdź do Bazy danych sekcja> phpMyAdmin menu:



6. Kliknij bazę danych w lewym menu, aby rozwinąć listę tabel:



7. Zaznacz wybraną tabelę i wybierz Optymalizuj tabelę z rozwijanego menu, jak pokazano poniżej:



8. W ten sam sposób możesz zoptymalizować kilka tabel jednocześnie lub wszystkie, używając opcji Zaznacz wszystko opcja:



9. W rezultacie otrzymasz następujące dane wyjściowe:



10. Innym sposobem na zoptymalizowanie bazy danych jest usunięcie niepotrzebnych danych. Można to zrobić za pomocą SQL wiersz polecenia z następującym zapytaniem:

DELETE FROM $table gdzie ;

gdzie $tabela definiuje nazwę tabeli, która powinna zostać dostosowana i określa jakie zmiany należy wykonać:



11. Przyjrzyjmy się bliżej tej opcji i zastanówmy się, jak działa.

Załóżmy, że musisz usunąć wszystkie posty zawierające jakieś słowo kluczowe, należy użyć następującego polecenia:

USUŃ Z „tabeli”
GDZIE „kolumna”, np. „%keyword%
'

UWAGA: musisz wymienić tablicę i kolumna z rzeczywistymi wartościami Twojej bazy danych.

Aby to zrobić, przejdź do tabeli zawierającej posty Twojej witryny i znajdź odpowiednią kolumnę. W naszym przypadku jest to wp9x_posts i posts_title kolumna:



Poniżej możesz zobaczyć ostateczny wariant naszego polecenia:

USUŃ Z „wp9x_posts”
GDZIE „post_title” jak „%test%”




Po kliknięciu Idź , wszystkie posty, które mają „test” słowo w ich tytule zostanie usunięte.

Wynik będzie wyglądał następująco:



12. Jeśli chcesz usunąć posty z określonego okresu, możesz użyć tego:

DELETE FROM 'tabela'
GDZIE 'kolumna' między 'datefrom' i 'dateto '


Ponownie, stół i kolumna należy zastąpić rzeczywistymi wartościami oraz datefrom i data do .

UWAGA: musisz podać dokładną datę i godzinę, które można wyszukać w bazie danych.



Nasze ostatnie polecenie to:

USUŃ Z „wp9x_posts”
GDZIE „data_postu” między „2015-06-24 19:48:14” a „2016-07-20 23:27:23”


13. Załóżmy, że musisz usunąć komentarze od określonego użytkownika. Oto polecenie, którego należy użyć:

DELETE FROM 'table'
WHERE 'column' ='username'


co w naszym przypadku to:

USUŃ Z 'wp9x_comments'
GDZIE 'comment_author' ='test_user'


lub jeśli chcesz usunąć posty o określonym statusie:

DELETE FROM 'table'
WHERE 'column' ='status'


co w naszym przypadku to:

USUŃ Z 'wp9x_posts'
GDZIE 'post_status' ='zamknięty'


Ten sam tryb działa dla wszystkich innych tabel, kolumn i baz danych, wystarczy ustawić odpowiednie wartości. Możesz również zapoznać się z dokumentacją MySQL, aby dowiedzieć się więcej o możliwych manipulacjach i składni MySQL.


To wszystko!

              
                      Potrzebujesz pomocy? Skontaktuj się z naszym HelpDesk


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Warunek WHERE w MySQL z 16 różnymi przykładami zapytań

  2. Eksportujesz wyniki zapytania Mysql do programu Excel?

  3. PHP do przechowywania obrazów w MySQL czy nie?

  4. Błąd mySQL 1040:Za dużo połączeń

  5. Samouczek oceny gwiazdek Jquery za pomocą php i mysql