Como alterar o prefixo do banco de dados WordPress para melhorar a segurança

O banco de dados do WordPress é como um cérebro para todo o seu site WordPress porque todas as informações são armazenadas lá, tornando assim o alvo favorito do hacker. Spammers e hackers executam códigos automáticos para injeções de SQL. Bem, infelizmente muitas pessoas se esquecem de alterar o prefixo do banco de dados enquanto eles instalam o WordPress. Isso torna mais fácil para os hackers planejar um ataque em massa, visando o prefixo padrão wp_ . A maneira mais inteligente de proteger seu banco de dados é mudar o prefixo do banco de dados, que é realmente fácil de fazer em um site que você está configurando. Mas é preciso algumas etapas para alterar o prefixo do banco de dados do WordPress adequadamente para o seu site estabelecido sem completamente disfarçá-lo.

Preparação

Recomendamos que você faça backup do banco de dados do WordPress antes de executar qualquer coisa sugerida neste tutorial. É importante manter backups diários do seu site, recomendamos o plugin do BackupBuddy para fazer isso. A próxima coisa que recomendamos é que você redirecione seus visitantes para uma página de manutenção temporária.

Alterar Prefixo de Tabela em wp-config.php

Abra o arquivo wp-config.php que está localizado no diretório raiz do WordPress. Altere a linha de prefixo da tabela de wp_ para algo mais parecido com isso wp_a123456_

Então a linha seria assim:

$ table_prefix = 'wp_a123456_'; 

Nota: Você só pode alterá-lo para números, letras e sublinhados.

Alterar todo o nome das tabelas de banco de dados

Você precisa acessar seu banco de dados (provavelmente através de phpMyAdmin) e, em seguida, altere os nomes das tabelas para o que especificamos no arquivo wp-config.php. Se você estiver usando a hospedagem cPanel WordPress, então poderá encontrar o link phpMyAdmin no seu cPanel. Veja a imagem abaixo:

phpMyAdmin

Há um total de 11 tabelas padrão do WordPress, portanto, mudá-las manualmente seria dor.

Consulta SQL

É por isso que para tornar as coisas mais rápidas, temos uma consulta SQL que você pode usar.

RENAME tabela `wp_commentmeta` TO` wp_a123456_commentmeta`;
 RENAME tabela `wp_comments` PARA` wp_a123456_comments`;
 RENAME tabela `wp_links` PARA` wp_a123456_links`;
 RENAME tabela `wp_options` PARA` wp_a123456_options`;
 RENAME tabela `wp_postmeta` PARA` wp_a123456_postmeta`;
 RENAME tabela `wp_posts` PARA` wp_a123456_posts`;
 RENAME tabela `wp_terms` PARA` wp_a123456_terms`;
 RENAME tabela `wp_termmeta` PARA` wp_a123456_termmeta`;
 RENAME tabela `wp_term_relationships` PARA` wp_a123456_term_relationships`;
 RENAME tabela `wp_term_taxonomy` PARA` wp_a123456_term_taxonomy`;
 RENAME tabela `wp_usermeta` TO` wp_a123456_usermeta`;
 RENAME tabela `wp_users` PARA` wp_a123456_users`; 

Você pode ter que adicionar linhas para outros plugins que podem adicionar suas próprias tabelas no banco de dados do WordPress. A idéia é que você altera todas as tabelas prefixas para a que você deseja.

A tabela de opções

Precisamos pesquisar a tabela de opções para qualquer outro campo que esteja usando o wp_ como um prefixo, para que possamos substituí-los. Para facilitar o processo, use esta consulta:

SELECIONE * FROM `wp_a123456_options` WHERE` option_name 'COMO'% wp_% ' 

Isso retornará muitos resultados, e você precisa ir um a um para mudar essas linhas.

UserMeta Table

Em seguida, precisamos pesquisar o usermeta para todos os campos que estão usando wp_ como um prefixo, para que possamos substituí-lo. Use esta consulta SQL para isso:

SELECIONE * FROM `wp_a123456_usermeta` WHERE` meta_key` COMO '% wp_%' 

O número de entradas pode variar em quantos plugins você está usando e tal. Basta mudar tudo o que tem wp_ para o novo prefixo.

Backup e Feito

Agora você está pronto para testar o site. Se você seguisse os passos acima, então tudo funcionaria bem. Agora, você deve fazer um novo backup do seu banco de dados apenas para estar no lado seguro.