Database
 sql >> Baza danych >  >> RDS >> Database

WordPress – Za kulisami, część 1

Jak często zastanawiałeś się nad strukturą istniejącej bazy danych? Może to być 5-letni starszy system lub zupełnie nowy projekt open source. Rzućmy okiem na diagram ERD bazy danych kryjącej się za najsłynniejszym systemem zarządzania treścią:WordPress.

Co to jest WordPress i jak to działa?

WordPress to CMS (system zarządzania treścią) o otwartym kodzie źródłowym, który został pierwotnie wydany w 2003 roku. Początkowo był platformą blogową, ale rozwinął się tak bardzo, że dziś może być używany prawie do wszystkiego.

Ponieważ WordPress jest projektem open source, wielu programistów przez lata rozszerzało jego funkcjonalności. Można znaleźć tysiące widżetów, motywów i wtyczek opracowanych dla WordPressa. Tak więc, jak twierdzi WordPress.org, „WordPress jest ograniczony tylko Twoją wyobraźnią. (I kotlety techniczne.)” Za kulisami, język skryptowy PHP po stronie serwera i baza danych MySQL zapewniają moc.

Na potrzeby tego artykułu zainstalowałem WordPressa lokalnie, wykonując następujące kroki:

  1. Pobrałem i zainstalowałem WampServer, środowisko programistyczne Windows dla Apache, PHP i MySQL (Uwaga:Najpierw należy zainstalować odpowiedni smak Visual C++ Redistributable). Ten krok polegał głównie na kliknięciu przycisku „Dalej”.
  2. Następnie utworzyłem bazę danych MySQL o nazwie „wordpress_database” za pomocą phpMyAdmin; oczywiście możesz wybrać dowolną nazwę i później odnieść się do niej.
  3. Skończyłem pobierając i instalując właściwy program WordPress. Ponownie, było to głównie kliknięcie „Dalej”.

Podczas instalacji WordPressa zostaniesz poproszony o podanie nazwy użytkownika, nazwy bazy danych, której będzie używał WordPress, oraz szczegółów połączenia. Musisz podać nazwę istniejącej bazy danych MySQL. Możesz także wybrać prefiks, który będzie używany do nazywania tabel w bazie danych. (Wybrałem „wp_”.) Rozpoczynanie nazw tabel z prefiksem jest powszechną praktyką w MySQL. Jeśli wszystko pójdzie dobrze, zostanie wygenerowane losowe hasło do Twojego projektu i będziesz mógł się zalogować. Po zalogowaniu zobaczysz panel WordPressa, który wygląda tak:

[

Nie będziemy więcej mówić o opcjach WordPress, ponieważ nie są one związane z projektowaniem baz danych. W Internecie jest mnóstwo materiałów – i oczywiście w książkach; czytać książki ☺ – które dość dokładnie omawiają te tematy.

Proces eksportu / importu WordPress

Naszym następnym krokiem jest przyjrzenie się bazie danych MySQL, która znajduje się za naszą stroną WordPress. Aby to zrobić, musimy otworzyć phpMyAdmin . Główny ekran jest pokazany poniżej.

Po lewej stronie ekranu widoczna jest baza danych o nazwie „wordpress_database” z rozwiniętą listą tabel. Pamiętaj, że wszystkie tabele mają „wp_” prefiks. Następnym krokiem jest wyeksportowanie struktury bazy danych z phpMyAdmin i zaimportuj go do Vertabelo.

Aby to zrobić, użyj przycisku „Eksportuj”, a następnie wybierz metodę eksportu „Niestandardowa”. Wybierz nazwę bazy danych, którą chcesz wyeksportować i wybierz jej strukturę w opcjach specyficznych dla formatu. W takim przypadku plik SQL z instrukcjami DDL zostanie utworzony i zapisany na dysku.

Następnie zaloguj się do Vertabelo.com i zaimportuj plik SQL do nowego modelu bazy danych. W panelu kliknij przycisk „UTWÓRZ NOWY MODEL”. Wypełnij pole tekstowe „Nazwa modelu” żądaną nazwą modelu Vertabelo i wybierz MySQL 5.5 z listy „Silnik bazy danych”.

W większości przypadków chcemy zacząć od pustej bazy danych, co wystarczy kliknięcie przycisku „ROZPOCZNIJ MODELOWANIE”. Ale w tym przypadku chcemy użyć istniejącego pliku SQL. Aby to osiągnąć, musimy:

  1. Wybierz „Z SQL” w sekcji „Model początkowy”.
  2. Kliknij przycisk „Wybierz plik” i pobierz plik z naszego komputera za pomocą przycisku „Przeglądaj”.
  3. Kliknij przycisk „Importuj SQL”.

Jeśli wszystko poszło dobrze, zobaczysz komunikat „Model został zaimportowany pomyślnie”. Włączy się również przycisk „ROZPOCZNIJ MODELOWANIE”. Kliknij i zacznij używać istniejącego modelu.

Możemy teraz dodawać nowe funkcje lub możemy po prostu być dumni z siebie i naszego gustownie zaprojektowanego projektu bazy danych. Pamiętaj, że ten obraz jest wart tysiąca słów!

W tym momencie model otworzy się w Vertabelo i wreszcie zobaczymy nasze tabele – i to nie tylko jako kod SQL. Dostaniemy coś takiego (trochę przestawiłem tabele):




Pierwszą rzeczą, jaką zauważymy, jest brak relacji między tabelami. Dzieje się tak, ponieważ standardowa instalacja WordPressa nie wymusza integralności referencyjnej. WordPress używa silnika pamięci MyISAM, który zapewnia większą funkcjonalność i lepszą wydajność, ale nie obsługuje kluczy obcych.

Na potrzeby tego artykułu stworzyłem pusty projekt WordPress i jedyne, co widzę, to pusta strona. Może to zabrzmieć głupio, ale to wystarczy, aby poznać model bazy danych WordPress. Bez względu na to, jak skomplikowana jest witryna WordPress, zawsze używa tych samych tabel. Korzystanie z tego samego kodu podstawowego i pól meta zapewnia WordPressowi wystarczającą elastyczność do uruchamiania witryn bez względu na to, jak różnią się ich funkcją, wyglądem lub stylem.

Wciąż więcej WordPressa do zobaczenia

WordPress jest naszym przykładem, ponieważ jest powszechnie używany i znany ze swojej prostoty. Mogliśmy jednak użyć dowolnego innego CMS lub dowolnego innego projektu, który ma za sobą bazę danych. Założę się, że możesz wymyślić wiele sytuacji, w których chciałbyś przenieść istniejący projekt bazy danych do narzędzia do projektowania baz danych. Vertabelo oferuje opcję importowania wcześniej zaprojektowanych modeli i kontynuowania pracy nad nimi w systemie. Podczas tworzenia tego artykułu użyłem Importuj z pliku z instrukcjami DDL.

W naszym następnym artykule ustalimy relacje między tabelami i przyjrzymy się bliżej ich definicjom. W międzyczasie możesz podzielić się swoimi pomysłami i opiniami w sekcji komentarzy poniżej.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak automatyczne aktualizacje statystyk mogą wpływać na wydajność zapytań

  2. Model danych agencji nieruchomości

  3. FrankenQueries:kiedy SQL i NoSQL zderzają się

  4. Jak uporządkować wiersze według sumy grup w SQL

  5. Co to są operatory SQL i jak działają?