Database
 sql >> Base de Dados >  >> RDS >> Database

WordPress – Nos bastidores, Parte 1


Quantas vezes você já se perguntou sobre a estrutura de um banco de dados existente? Pode ser um sistema legado de 5 anos ou um novo projeto de código aberto. Vamos dar uma olhada no diagrama ERD do banco de dados por trás do sistema de gerenciamento de conteúdo mais famoso:o WordPress.

O que é WordPress e como ele funciona?


O WordPress é um CMS (sistema de gerenciamento de conteúdo) de código aberto que foi lançado inicialmente em 2003. Começou como uma plataforma de blogs, mas se desenvolveu tanto que hoje pode ser usado para quase tudo.

Como o WordPress é um projeto de código aberto, muitos desenvolvedores expandiram suas funcionalidades ao longo dos anos. Milhares de widgets, temas e plugins desenvolvidos para WordPress podem ser encontrados. Assim, como afirma o WordPress.org, “o WordPress é limitado apenas pela sua imaginação. (E técnicas técnicas.)” Nos bastidores, a linguagem de script PHP do lado do servidor e o banco de dados MySQL fornecem o poder.

Para os fins deste artigo, instalei o WordPress localmente seguindo estas etapas:
  1. Baixei e instalei o WampServer, um ambiente de desenvolvimento web do Windows para Apache, PHP e MySQL (Observação:os tipos corretos de Visual C++ Redistributable devem ser instalados primeiro). Esta etapa envolveu principalmente clicar no botão "Avançar".
  2. Em seguida, criei um banco de dados MySQL chamado “wordpress_database” usando phpMyAdmin; é claro, você pode escolher qualquer nome e depois fazer referência a ele.
  3. Terminei baixando e instalando o programa WordPress real. Novamente, isso foi principalmente clicando em "Avançar".

Durante a instalação do WordPress, você será solicitado a fornecer um nome de usuário, o nome do banco de dados que o WordPress usará e os detalhes da conexão. Você deve fornecer o nome de um banco de dados MySQL existente. Além disso, você pode escolher o prefixo que será usado para nomear as tabelas no banco de dados. (Eu escolhi “wp_”.) Iniciar nomes de tabelas com um prefixo é uma prática comum no MySQL. Se tudo der certo, uma senha aleatória será gerada para o seu projeto e você poderá fazer login. Depois de fazer login, você verá o painel do WordPress, que se parece com isso:


[
Não falaremos mais sobre as opções do WordPress porque elas não estão relacionadas ao design do banco de dados. Há toneladas de materiais online – e em livros, é claro; leia livros ☺ – que cobrem esses tópicos muito bem.

O processo de exportação/importação do WordPress


Nosso próximo passo é olhar para o banco de dados MySQL que está por trás da nossa página do WordPress. Para fazer isso, temos que abrir o phpMyAdmin . A tela principal é mostrada abaixo.



No lado esquerdo da tela, você pode ver o banco de dados chamado “wordpress_database” com sua lista de tabelas expandida. Observe que todas as tabelas têm o “wp_” prefixo. O próximo passo é exportar a estrutura do banco de dados do phpMyAdmin e importá-lo para o Vertabelo.

Para fazer isso, use o botão “Exportar” e selecione o método de exportação “Personalizado”. Escolha o nome do banco de dados que deseja exportar e selecione sua estrutura em Opções específicas do formato. Nesse caso, um arquivo SQL com instruções DDL será criado e salvo no disco.

Depois disso, faça login no Vertabelo.com e importe seu arquivo SQL para o novo modelo de banco de dados. No painel, clique no botão “CRIAR NOVO MODELO”. Preencha a caixa de texto “Model name” com o nome do modelo Vertabelo desejado e escolha MySQL 5.5 na lista “Database engine”.



Na maioria dos casos, queremos começar com um banco de dados em branco, o que basta clicar no botão “INICIAR MODELAGEM”. Mas neste caso, queremos usar um arquivo SQL existente. Para conseguir isso devemos:

  1. Selecione "Do SQL" na seção "Modelo inicial".
  2. Clique no botão "Escolher arquivo" e recupere o arquivo do nosso computador usando o botão "Procurar".
  3. Clique no botão "Importar SQL".



Se tudo correu bem, você verá "O modelo foi importado com sucesso". Além disso, o botão “INICIAR MODELAGEM” será habilitado. Clique nele e comece a usar seu modelo existente.

Agora podemos adicionar novos recursos ou podemos simplesmente nos orgulhar de nós mesmos e de nosso design de banco de dados exibido com bom gosto. Lembre-se, essa imagem vale mais que mil palavras!

Neste ponto, o modelo será aberto no Vertabelo e finalmente veremos nossas tabelas – e não apenas como código SQL. Teremos algo assim (reorganizei um pouco as tabelas):




A primeira coisa que notamos é a ausência de relações entre as tabelas. Isso ocorre porque a instalação padrão do WordPress não impõe integridade referencial. O WordPress usa o mecanismo de armazenamento MyISAM, que oferece mais funcionalidade e melhor desempenho, mas não suporta chaves estrangeiras.

Para o propósito deste artigo, criei um projeto WordPress vazio e a única coisa que consigo ver é uma página em branco. Pode parecer bobo, mas isso é o suficiente para explorar o modelo de banco de dados do WordPress. Não importa o quão complicado seja um site WordPress, ele sempre usa as mesmas tabelas. Usar o mesmo código central e metacampos dá ao WordPress flexibilidade suficiente para executar sites, não importa quão diferente seja sua função, design ou estilo.

Ainda há mais WordPress para ver


Fizemos do WordPress nosso exemplo porque é amplamente utilizado e conhecido por sua simplicidade. No entanto, poderíamos ter usado qualquer outro CMS ou qualquer outro projeto que tenha um banco de dados por trás dele. Aposto que você pode pensar em muitas situações em que gostaria de mover seu projeto de banco de dados existente para uma ferramenta de design de banco de dados. A Vertabelo oferece a opção de importar modelos previamente desenhados e continuar trabalhando neles dentro do sistema. Durante a formação deste artigo, usei Importar do arquivo com as instruções DDL.

Em nosso próximo artigo, estabeleceremos relações entre tabelas e examinaremos mais de perto as definições das tabelas. Enquanto isso, sinta-se à vontade para compartilhar suas ideias e comentários na seção de comentários abaixo.