Como Configurar um Banco de Dados Remoto para Otimizar o Desempenho do Site com MySQL no Ubuntu 20.04

Introdução

Conforme sua aplicação ou site cresce, pode chegar um momento em que você ultrapassou a configuração atual do seu servidor. Se você está hospedando seu servidor web e banco de dados na mesma máquina, pode ser uma boa ideia separar essas duas funções para que cada uma possa operar em seu próprio hardware e compartilhar a carga de responder às solicitações de seus visitantes.

Neste guia, você configurará um servidor de banco de dados MySQL remoto ao qual sua aplicação web pode se conectar. O WordPress é usado como exemplo para ter algo com que trabalhar, mas a técnica é amplamente aplicável a qualquer aplicação suportada pelo MySQL.

Pré-requisitos

Antes de começar este tutorial, você precisará:

  • Dois servidores Ubuntu 20.04. Cada um deve ter um usuário não root com privilégios sudo e firewall UFW ativado, conforme descrito em nosso tutorial Configuração Inicial do Servidor com Ubuntu 20.04. Um desses servidores hospedará seu backend MySQL e será referido como o servidor de banco de dados ao longo deste guia. O outro se conectará ao seu servidor de banco de dados remotamente e atuará como seu servidor web; da mesma forma, será referido como o servidor web ao longo deste guia.
  • No seu servidor de banco de dados: MySQL instalado. Siga o tutorial Como Instalar o MySQL no Ubuntu 20.04 para configurar isso.
  • No seu servidor web: Nginx e PHP instalados. Nosso tutorial Como Instalar Linux, Nginx, MySQL, PHP (pilha LEMP) no Ubuntu 20.04 irá guiá-lo pelo processo, mas observe que você deve ignorar o Passo 2 deste tutorial, que se concentra na instalação do MySQL, pois você instalará o MySQL no seu servidor de banco de dados.

Passo 1 — Configurando o MySQL para Ouvir Conexões Remotas no Servidor de Banco de Dados

Ter os dados armazenados em um servidor separado é uma boa maneira de expandir de forma graciosa após atingir o limite de desempenho de uma configuração de uma única máquina. Também fornece a estrutura básica necessária para balancear a carga e expandir sua infraestrutura ainda mais em um momento posterior. Após instalar o MySQL seguindo o tutorial prévio, você precisará alterar alguns valores de configuração para permitir conexões de outros computadores.

A maioria das alterações de configuração do servidor MySQL pode ser feita no arquivo mysqld.cnf, que é armazenado no diretório /etc/mysql/mysql.conf.d/ por padrão. Abra este arquivo no seu servidor de banco de dados com privilégios de root no seu editor preferido. Este exemplo usa o nano:

  1. sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Este arquivo é dividido em seções indicadas por rótulos entre colchetes ([ e ]). Procure pela seção rotulada mysqld:

/etc/mysql/mysql.conf.d/mysqld.cnf
. . .
[mysqld]
. . .

Dentro desta seção, procure por um parâmetro chamado bind-address. Isso diz ao software do banco de dados em qual endereço de rede ouvir conexões.

Por padrão, isso é definido como 127.0.0.1, o que significa que o MySQL está configurado para procurar apenas conexões locais. Você precisa alterar isso para referenciar um endereço IP externo onde seu servidor pode ser acessado.

Se ambos os seus servidores estiverem em um datacenter com capacidades de rede privada, use o IP da rede privada do seu servidor de banco de dados. Caso contrário, você pode usar seu endereço IP público:

/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
. . .
bind-address = db_server_ip

Como você se conectará ao seu banco de dados pela internet, é recomendável que você exija conexões criptografadas para manter seus dados seguros. Se você não criptografar sua conexão MySQL, qualquer pessoa na rede poderá capturar informações sensíveis entre seus servidores web e de banco de dados. Para criptografar conexões MySQL, adicione a seguinte linha após a linha bind-address que você acabou de atualizar:

/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
. . .
require_secure_transport = on
. . .

Salve e feche o arquivo quando terminar. Se estiver usando nano, faça isso pressionando CTRL + X, Y e depois ENTER.

Para que as conexões SSL funcionem, você precisará criar algumas chaves e certificados. O MySQL vem com um comando que configurará isso automaticamente. Execute o seguinte comando, que cria os arquivos necessários. Ele também os torna legíveis pelo servidor MySQL especificando o UID do usuário mysql:

  1. sudo mysql_ssl_rsa_setup --uid=mysql

Para forçar o MySQL a atualizar sua configuração e ler as novas informações SSL, reinicie o banco de dados:

  1. sudo systemctl restart mysql

Para confirmar que o servidor está agora ouvindo na interface externa, execute o seguinte comando ss:

  1. sudo ss -plunt | grep mysqld
Output
tcp LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* users:(("mysqld",pid=4053,fd=22)) tcp LISTEN 0 151 db_server_ip:3306 0.0.0.0:* users:(("mysqld",pid=4053,fd=24))

ss imprime estatísticas sobre o sistema de rede do seu servidor. Esta saída mostra que um processo chamado mysqld está conectado ao db_server_ip na porta 3306, a porta padrão do MySQL, confirmando que o servidor está ouvindo na interface apropriada.

Em seguida, abra essa porta no firewall para permitir o tráfego:

  1. sudo ufw allow mysql

Essas são todas as alterações de configuração que você precisa fazer no MySQL. Em seguida, você irá configurar um banco de dados e alguns perfis de usuário, dos quais você usará um para acessar o servidor remotamente.

Passo 2 — Configurando um Banco de Dados do WordPress e Credenciais Remotas no Servidor de Banco de Dados

Mesmo que o MySQL em si esteja agora ouvindo em um endereço IP externo, atualmente não há usuários ou bancos de dados configurados para acesso remoto. Crie um banco de dados para o WordPress e um par de usuários que possam acessá-lo.

Comece conectando-se ao MySQL como o usuário root do MySQL:

  1. sudo mysql

Nota: Se você tiver autenticação de senha habilitada, conforme descrito no Passo 3 do tutorial pré-requisito do MySQL, você precisará usar o seguinte comando para acessar o shell do MySQL:

  1. mysql -u root -p

Depois de executar este comando, você será solicitado a fornecer a senha root do MySQL e, após digitá-la, receberá um novo prompt mysql>.

A partir do prompt do MySQL, crie um banco de dados que o WordPress usará. Pode ser útil dar a este banco de dados um nome reconhecível para que você possa identificá-lo facilmente posteriormente. Aqui, ele é nomeado wordpress:

  1. CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Agora que você criou seu banco de dados, o próximo passo é criar um par de usuários. Crie um usuário exclusivo para conexões locais e um usuário remoto vinculado ao endereço IP do servidor web.

Primeiro, crie seu usuário local, local_db_user, e faça com que esta conta corresponda apenas a tentativas de conexão locais usando localhost na declaração:

  1. CREATE USER 'local_db_user'@'localhost' IDENTIFIED BY 'password';

Em seguida, conceda a esta conta acesso total ao banco de dados wordpress:

  1. GRANT ALL PRIVILEGES ON wordpress.* TO 'local_db_user'@'localhost';

Este usuário agora pode realizar qualquer operação no banco de dados do WordPress, mas esta conta não pode ser usada remotamente, pois só corresponde a conexões da máquina local. Com isso em mente, crie uma conta companheira que corresponderá exclusivamente a conexões do seu servidor web. Para isso, você precisará do endereço IP do seu servidor web.

Observe que você deve usar um endereço IP que utilize a mesma rede que você configurou no arquivo mysqld.cnf. Isso significa que se você especificou um IP de rede privada no arquivo mysqld.cnf, precisará incluir o IP privado do seu servidor web nos dois comandos a seguir. Se você configurou o MySQL para usar a internet pública, deve coincidir com o endereço IP público do servidor web.

  1. CREATE USER 'remote_user'@'web_server_ip' IDENTIFIED BY 'password';

Depois de criar sua conta remota, dê a ela os mesmos privilégios do seu usuário local:

  1. GRANT ALL PRIVILEGES ON wordpress.* TO 'remote_user'@'web_server_ip';

Por último, limpe os privilégios para que o MySQL comece a usá-los:

  1. FLUSH PRIVILEGES;

Em seguida, saia do prompt do MySQL digitando:

  1. exit

Agora que você configurou um novo banco de dados e um usuário com acesso remoto, pode prosseguir para testar se consegue se conectar ao banco de dados a partir do seu servidor web.

Passo 3 — Testando Conexões Remotas e Locais

Antes de continuar, é melhor verificar se você pode se conectar ao seu banco de dados tanto da máquina local — seu servidor de banco de dados — quanto do seu servidor web.

Primeiro, teste a conexão local a partir do seu servidor de banco de dados tentando fazer login com sua nova conta:

  1. mysql -u local_db_user -p

Quando solicitado, insira a senha que você configurou para esta conta.

Se receber um prompt do MySQL, então a conexão local foi bem-sucedida. Você pode sair novamente digitando:

  1. exit

Em seguida, faça login no seu servidor web para testar conexões remotas:

  1. ssh remote_user@web_server_ip

Você precisará instalar algumas ferramentas de cliente para MySQL no seu servidor web para acessar o banco de dados remoto. Primeiro, atualize o cache de pacotes local se ainda não o fez recentemente:

  1. sudo apt update

Em seguida, instale as utilidades de cliente do MySQL:

  1. sudo apt install mysql-client

Depois disso, conecte-se ao seu servidor de banco de dados usando a seguinte sintaxe:

  1. mysql -u remote_user -h db_server_ip -p

Novamente, você deve garantir que está utilizando o endereço IP correto para o servidor de banco de dados. Se você configurou o MySQL para ouvir na rede privada, insira o IP da rede privada do seu banco de dados. Caso contrário, insira o endereço IP público do seu servidor de banco de dados.

Você será solicitado a inserir a senha da sua conta de usuário remoto. Após inseri-la, e se tudo estiver funcionando como esperado, você será levado ao prompt do MySQL. Verifique se a conexão está utilizando SSL com o seguinte comando:

  1. status

Se a conexão estiver de fato utilizando SSL, a linha SSL: indicará isso, conforme mostrado aqui:

Output
-------------- mysql Ver 8.0.29-0ubuntu0.20.04.2 for Linux on x86_64 ((Ubuntu)) Connection id: 14 Current database: Current user: remote_user@web_server_ip SSL: Cipher in use is TLS_AES_256_GCM_SHA384 Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 8.0.29-0ubuntu0.20.04.2 (Ubuntu) Protocol version: 10 Connection: db_server_ip via TCP/IP Server characterset: utf8mb4 Db characterset: utf8mb4 Client characterset: utf8mb4 Conn. characterset: utf8mb4 TCP port: 3306 Binary data as: Hexadecimal Uptime: 1 hour 8 min 28 sec Threads: 2 Questions: 69 Slow queries: 0 Opens: 206 Flush tables: 3 Open tables: 125 Queries per second avg: 0.016 --------------

Após verificar que você pode se conectar remotamente, saia do prompt:

  1. exit

Você verificou o acesso local e o acesso a partir do servidor web, mas não verificou se outras conexões serão recusadas. Para uma verificação adicional, tente fazer o mesmo de um terceiro servidor para o qual você não configurou uma conta de usuário específica para garantir que este outro servidor não tenha acesso concedido.

Observe que antes de executar o seguinte comando para tentar a conexão, você pode precisar instalar os utilitários de cliente do MySQL como fez anteriormente:

  1. mysql -u wordpressuser -h db_server_ip -p

Isso não deve ser concluído com sucesso e deve retornar um erro semelhante a este:

Output
ERROR 1130 (HY000): Host '203.0.113.12' is not allowed to connect to this MySQL server

Isso é esperado, já que você não criou um usuário do MySQL que tenha permissão para se conectar a partir deste servidor, e também é desejado, já que você deseja ter certeza de que seu servidor de banco de dados negará o acesso de usuários não autorizados ao seu servidor MySQL.

Após testar com sucesso a sua conexão remota, você pode prosseguir para a instalação do WordPress no seu servidor web.

Passo 4 — Preparando o Servidor Web para a Instalação do WordPress

Se você seguiu os tutoriais pré-requisitos, você deverá ter tanto o Nginx quanto o PHP instalados. O WordPress, e muitos de seus plugins, aproveitam muitas extensões adicionais do PHP. Antes de instalar o WordPress no seu servidor web, prepare seu servidor instalando algumas dessas extensões do PHP para uso com o WordPress:

  1. sudo apt install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip

Observação: Cada plugin do WordPress tem seu próprio conjunto de requisitos. Alguns podem exigir a instalação de pacotes de extensões adicionais do PHP. Verifique a documentação do seu plugin para descobrir seus requisitos do PHP. Se estiverem disponíveis, eles podem ser instalados com apt, como no exemplo anterior.

Ao terminar de instalar as extensões, reinicie o processo PHP-FPM para que o processador PHP em execução possa aproveitar os recursos recém-instalados:

  1. sudo systemctl restart php7.4-fpm

Em seguida, faça alguns ajustes nos arquivos de bloco de servidor do seu Nginx. Com base nos tutoriais pré-requisitos, você deverá ter um arquivo de configuração para o seu site no diretório /etc/nginx/sites-available/. Ele também deve estar configurado para responder ao nome de domínio ou ao endereço IP do seu servidor e protegido por um certificado TLS/SSL. /etc/nginx/sites-available/seu_domínio é usado aqui como um exemplo de diretório. Substitua o caminho para o arquivo de configuração pelo apropriado.

Além disso, /var/www/your_domain será usado como o diretório raiz neste exemplo de instalação do WordPress. Novamente, use o diretório de documentos especificado na sua própria configuração.

Observação: É possível que você esteja usando a configuração padrão /etc/nginx/sites-available/default com /var/www/html como seu diretório de documentos. Isso é aceitável se você for hospedar apenas um site neste servidor. Caso contrário, é melhor dividir a configuração necessária em partes lógicas, um arquivo por site.

Abra o arquivo do bloco do servidor do seu site com o editor de sua preferência. Este exemplo usa o nano:

  1. sudo nano /etc/nginx/sites-available/your_domain

Dentro deste bloco de servidor, adicione alguns blocos de localização. Comece criando blocos de localização de correspondência exata para solicitações de /favicon.ico e /robots.txt, ambos os quais você não deseja registrar solicitações.

Você fará isso usando uma localização de expressão regular para corresponder a quaisquer solicitações de arquivos estáticos, desativar o registro para essas solicitações e marcá-las como altamente cacheáveis, já que esses são recursos geralmente caros de servir. Você pode ajustar esta lista de arquivos estáticos para conter quaisquer outras extensões de arquivo que seu site possa usar:

/etc/nginx/sites-available/your_domain
server {
    server_name your_domain www.your_domain;
    root /var/www/your_domain;

    index index.html index.htm index.php;

    location = /favicon.ico { log_not_found off; access_log off; }
    location = /robots.txt { log_not_found off; access_log off; allow all; }
    location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
        expires max;
        log_not_found off;
    }
    . . .
}

Dentro do bloco de location / existente, você pode ajustar a lista de try_files. Primeiro, comente a configuração padrão adicionando um sinal de cerquilha (#) na primeira linha. Em seguida, adicione as seguintes linhas:

/etc/nginx/sites-available/your_domain
server {
    . . .
    location / {
        #try_files $uri $uri/ =404;
        try_files $uri $uri/ /index.php$is_args$args;
    }
    . . .
}

Com esta nova linha na sua configuração, em vez de retornar um erro 404 como a opção padrão, o controle é passado para o arquivo index.php com os argumentos da solicitação.

No geral, a parte superior do seu arquivo deve ser semelhante a isto:

/etc/nginx/sites-available/your_domain
server {
    server_name your_domain www.your_domain;
    root /var/www/your_domain;

    index index.html index.htm index.php;

    location = /favicon.ico { log_not_found off; access_log off; }
    location = /robots.txt { log_not_found off; access_log off; allow all; }
    location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
        expires max;
        log_not_found off;
    }

    location / {
       # try_files $uri $uri/ =404;
        try_files $uri $uri/ /index.php$is_args$args;
    }

  ...
}

Quando terminar, salve e feche o arquivo.

Verifique sua configuração por erros de sintaxe digitando:

  1. sudo nginx -t

Se nenhum erro for relatado, recarregue o Nginx digitando:

  1. sudo systemctl reload nginx

Após preparar seu servidor web, você está agora pronto para instalar o WordPress.

Passo 5 – Instalando o WordPress no Servidor Web

Para demonstrar as capacidades do seu novo servidor MySQL com capacidade remota, você passará pelo processo de instalação e configuração do WordPress – o popular sistema de gerenciamento de conteúdo – em seu servidor web. Com o software do servidor configurado, você pode baixar o WordPress. Por razões de segurança, sempre é recomendável obter a versão mais recente do WordPress diretamente no site do projeto.

Primeiro, mude para um diretório gravável (um temporário como /tmp é recomendado):

  1. cd /tmp

Isso altera seu diretório de trabalho para a pasta temporária. Em seguida, digite o seguinte comando para baixar a versão mais recente do WordPress como um arquivo compactado:

  1. curl -LO https://wordpress.org/latest.tar.gz

Extraia o arquivo compactado para criar a estrutura de diretórios do WordPress:

  1. tar xzvf latest.tar.gz

Você moverá esses arquivos para o seu diretório raiz do documento em breve, mas antes disso, copie o arquivo de configuração de exemplo para o nome de arquivo que o WordPress lê:

  1. cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

Copie todo o conteúdo do diretório para o diretório raiz do seu documento. A bandeira -a garantirá que suas permissões sejam mantidas e um ponto no final do seu diretório de origem para indicar que tudo dentro do diretório deve ser copiado (incluindo arquivos ocultos):

  1. sudo cp -a /tmp/wordpress/. /var/www/your_domain

Com seus arquivos no lugar, atribua a propriedade ao usuário e grupo www-data. Este é o usuário e grupo que o Nginx executa, e o Nginx precisará ser capaz de ler e gravar arquivos do WordPress para servir o site e realizar atualizações automáticas:

  1. sudo chown -R www-data:www-data /var/www/your_domain

Seus arquivos do WordPress estão agora no diretório raiz do servidor e têm a propriedade correta. Agora, você está pronto para configurar o WordPress.

Passo 6 — Configurando o Arquivo de Configuração do WordPress

Ao abrir o arquivo de configuração do WordPress, você começará ajustando algumas chaves secretas para fornecer segurança para sua instalação. O WordPress fornece um gerador seguro para esses valores, para que você não precise criar valores por conta própria. Eles são usados apenas internamente, então não prejudicará a usabilidade ter valores complexos e seguros aqui.

Para obter valores seguros do gerador de chaves secretas do WordPress, digite:

  1. curl -s https://api.wordpress.org/secret-key/1.1/salt/

Você receberá valores únicos que se assemelham a uma saída semelhante à seguinte:

Aviso! É importante que você solicite seus próprios valores exclusivos cada vez. Não copie os valores mostrados aqui!

Output
define('AUTH_KEY', 'L4|2Yh(giOtMLHg3#] DO NOT COPY THESE VALUES %G00o|te^5YG@)'); define('SECURE_AUTH_KEY', 'DCs-k+MwB90/-E(=!/ DO NOT COPY THESE VALUES +WBzDq:7U[#Wn9'); define('LOGGED_IN_KEY', '*0kP!|VS.K=;#fPMlO DO NOT COPY THESE VALUES +&[%8xF*,18c @'); define('NONCE_KEY', 'fmFPF?UJi&(j-{8=$- DO NOT COPY THESE VALUES CCZ?Q+_~1ZU~;G'); define('AUTH_SALT', '@qA7f}2utTEFNdnbEa DO NOT COPY THESE VALUES t}Vw+8=K%20s=a'); define('SECURE_AUTH_SALT', '%BW6s+d:7K?-`C%zw4 DO NOT COPY THESE VALUES 70U}PO1ejW+7|8'); define('LOGGED_IN_SALT', '-l>F:-dbcWof%4kKmj DO NOT COPY THESE VALUES 8Ypslin3~d|wLD'); define('NONCE_SALT', '4J(<`4&&F (WiK9K#] DO NOT COPY THESE VALUES ^ZikS`es#Fo:V6');

Estas são linhas de configuração que você pode colar diretamente em seu arquivo de configuração para definir chaves seguras. Copie a saída que você recebeu agora.

Abra o arquivo de configuração do WordPress:

  1. sudo nano /var/www/your_domain/wp-config.php

Encontre a seção que contém os valores de exemplo para essas configurações:

/var/www/your_domain/wp-config.php
. . .
define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');
. . .

Apague essas linhas e cole os valores que você copiou da linha de comando:

/var/www/your_domain/wp-config.php
. . .
define('AUTH_KEY',         'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_KEY',  'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_KEY',    'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_KEY',        'VALUES COPIED FROM THE COMMAND LINE');
define('AUTH_SALT',        'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_SALT',   'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_SALT',       'VALUES COPIED FROM THE COMMAND LINE');
. . .

Em seguida, modifique algumas das configurações de conexão com o banco de dados no início do arquivo. Você terá que ajustar o nome do banco de dados, o usuário do banco de dados e a senha associada que foi configurada dentro do MySQL.

Insira as informações de conexão para o seu banco de dados remoto. Lembre-se de usar o mesmo endereço IP e credenciais que você usou no teste do banco de dados remoto anteriormente:

/var/www/your_domain/wp-config.php
. . .
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');

/** MySQL database username */
define('DB_USER', 'remote_user');

/** MySQL database password */
define('DB_PASSWORD', 'remote_user_password');

/** MySQL hostname */
define('DB_HOST', 'db_server_ip');
. . .

E finalmente, após a linha define( 'DB_COLLATE', '' );, adicione esta linha destacada que diz ao WordPress para usar uma conexão SSL com seu banco de dados MySQL:

var/www/your_domain/wp-config.php
...
define( 'DB_COLLATE', '' );

define('MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL);
...

Salve e feche o arquivo.

Com sua configuração configurada, o WordPress está instalado e você está pronto para executar sua rotina de configuração baseada na web.

Passo 7 — Configurando o WordPress através da Interface Web

O WordPress possui um processo de configuração baseado na web. Conforme você avança nele, ele fará algumas perguntas e instalará todas as tabelas necessárias em seu banco de dados. Aqui, você realizará as etapas iniciais para configurar o WordPress, que pode ser usado como ponto de partida para construir seu próprio site personalizado que utiliza um backend de banco de dados remoto.

Acesse o nome de domínio (ou endereço IP público) associado ao seu servidor web juntamente com um /wp-admin no final:

http://your_domain.com/wp-admin

Você será solicitado a selecionar o idioma que deseja usar:

Em seguida, você chegará à página principal de configuração.

Selecione um nome para o seu site WordPress e escolha um nome de usuário. É recomendável escolher algo único e evitar nomes de usuário comuns como “admin” por motivos de segurança. Uma senha forte é gerada automaticamente. Salve esta senha ou escolha uma senha forte alternativa.

Insira seu endereço de e-mail e selecione se deseja desencorajar os mecanismos de busca de indexar seu site:

Depois de enviar suas informações, você precisará fazer login na interface de administração do WordPress usando a conta que acabou de criar. Você será então levado a um painel onde pode personalizar o seu novo site WordPress.

Conclusão

Seguindo este tutorial, você configurou um banco de dados MySQL para aceitar conexões protegidas por SSL de uma instalação remota do WordPress. Os comandos e técnicas usados neste guia são aplicáveis a qualquer aplicativo da web escrito em qualquer linguagem de programação, mas os detalhes específicos de implementação serão diferentes. Consulte a documentação do banco de dados de sua aplicação ou linguagem para obter mais informações.

Source:
https://www.digitalocean.com/community/tutorials/how-to-set-up-a-remote-database-to-optimize-site-performance-with-mysql-on-ubuntu-20-04