Uma das primeiras coisas que faço ao configurar qualquer site WordPress é alterar o prefixo do banco de dados do padrão wp_ para algo único. É uma etapa de segurança simples que muitos proprietários de sites ignoram, mas pode fazer uma diferença real na proteção do seu site.
A maioria dos sites WordPress usa a mesma estrutura de banco de dados padrão, o que os torna alvos fáceis para hackers. Personalizar o prefixo do seu banco de dados torna muito mais difícil para ataques automatizados terem sucesso e adiciona uma camada importante de segurança ao seu site.
Quer você esteja protegendo um site WordPress existente ou queira aprender essa prática recomendada para projetos futuros, mostrarei várias maneiras de alterar com segurança o prefixo do seu banco de dados.
Este guia abrange como fazer isso usando um plugin amigável, bem como um método manual, para que você possa escolher a abordagem que melhor se adapta à sua situação.

RESUMO: Alterar o prefixo do banco de dados do seu WordPress é um passo de segurança simples, mas eficaz, que pode proteger seu site contra muitos ataques automatizados. Não tornará seu site completamente à prova de hackers, mas adiciona uma camada importante de segurança que não custa nada para implementar.
O método do plugin Solid Security é a abordagem mais segura para iniciantes, enquanto o método manual phpMyAdmin lhe dá mais controle se você se sentir confortável trabalhando com bancos de dados. Crie um backup e leve seu tempo para garantir que tudo funcione corretamente.
Você pode usar os links rápidos abaixo para navegar pelo artigo:
- Por que Alterar o Prefixo do Banco de Dados do WordPress?
- Method 1: Using Solid Security Plugin (Easier for Beginners)
- Method 2: Manual Method via phpMyAdmin
- Troubleshooting Issues With Changing the Database Prefix
- Perguntas Frequentes Sobre a Alteração do Prefixo do Banco de Dados do WordPress
- Recursos Adicionais para Melhorar a Segurança do WordPress
Por que Alterar o Prefixo do Banco de Dados do WordPress?
O prefixo do banco de dados do WordPress pode parecer um detalhe técnico pequeno, mas desempenha um papel importante na configuração de segurança do seu site. Cada instalação do WordPress usa este prefixo para organizar os dados do seu site no banco de dados.
Por padrão, o WordPress usa wp_ como prefixo para todas as tabelas do banco de dados. Isso significa que seus posts são armazenados em uma tabela chamada wp_posts, seus usuários em wp_users e assim por diante.
O problema é que hackers conhecem essa estrutura padrão.
Relatórios de segurança de empresas de segurança de ponta mostram que um grande número de ataques automatizados é projetado para atingir especificamente o prefixo padrão wp_. Quando os hackers conseguem adivinhar facilmente os nomes das suas tabelas de banco de dados, seus ataques têm muito mais chances de sucesso.
Aqui estão os principais benefícios de alterar o prefixo do seu banco de dados:
- Adiciona segurança por obscuridade: Embora não seja uma solução de segurança completa por si só, um prefixo personalizado é uma parte importante de uma estratégia de segurança em camadas. Ele torna seu site um alvo muito mais difícil para ataques automatizados de baixo esforço que dependem de configurações padrão.
- Protege contra tentativas de injeção de SQL: Muitos ataques de injeção de SQL automatizados são programados para atingir o prefixo padrão
wp_. Ao alterá-lo, você torna seu site invisível para esses bots automatizados comuns, forçando-os a procurar um alvo mais fácil. - Reduz a varredura direcionada: Bots que procuram por sites WordPress vulneráveis geralmente buscam por padrões de banco de dados padrão que não corresponderão à sua configuração personalizada.
- Proporciona tranquilidade: Saber que a estrutura do seu banco de dados é única lhe dá uma camada extra de confiança na segurança do seu site.
Eu sempre altero o prefixo do banco de dados em novas instalações do WordPress porque é um passo tão simples que pode prevenir muitos métodos de ataque comuns.
Importante: Alterar o prefixo do seu banco de dados é uma operação avançada. Antes de fazer qualquer coisa sugerida neste tutorial, é absolutamente essencial que você faça backup do seu banco de dados WordPress.
Um único erro pode tornar seu site inacessível, e um backup é sua única rede de segurança. Recomendo o uso de um plugin como o Duplicator para manter backups diários.
Método 1: Usando o Plugin Solid Security (Mais fácil para iniciantes)
A maneira mais fácil de alterar o prefixo do seu banco de dados WordPress é usando o plugin gratuito Solid Security, que é um plugin de segurança que protege seu site contra várias ameaças.
Eu recomendo essa abordagem para iniciantes porque o plugin atualiza automaticamente todas as tabelas de banco de dados e arquivos de configuração necessários. Você não precisa tocar em nenhum código ou trabalhar diretamente com seu banco de dados.
Para saber mais sobre este popular plugin de segurança, veja nossa análise detalhada do Solid Security.
Etapa 1: Instale e Configure o Plugin Solid Security
Primeiro, você precisa instalar e ativar o plugin gratuito Solid Security. Para mais detalhes, você pode ver nosso guia passo a passo sobre como instalar um plugin do WordPress.
Após a ativação, você precisará configurar o plugin usando um assistente de configuração. Vá para Segurança » Configuração no seu painel do WordPress para começar.
O assistente o guiará pela configuração básica do seu site.
Você será solicitado a escolher o tipo de site que possui, executar uma verificação em seu site e muito mais.

Certifique-se de ler cada página do assistente cuidadosamente. As configurações padrão funcionarão para a maioria dos sites.
Na minha experiência, o assistente de integração deve levar menos de 10 minutos. Assim que você terminar o assistente, os recursos básicos de segurança estarão ativos.
Etapa 2: Altere o Prefixo do Banco de Dados
Agora que o plugin está configurado, você pode alterar o prefixo do seu banco de dados. No seu painel do WordPress, navegue até Segurança » Ferramentas.
Nesta tela, você verá uma ferramenta rotulada como ‘Alterar Prefixo da Tabela do Banco de Dados’.

Simplesmente clique no botão ‘Executar’ para prosseguir.
O plugin escolherá automaticamente um prefixo aleatório. Em seguida, ele colocará automaticamente seu site em modo de manutenção, alterará o prefixo de todas as suas tabelas do WordPress, atualizará seu arquivo wp-config.php e, em seguida, retirará o site do modo de manutenção.
Tudo isso acontece muito rapidamente, e você pode observar o processo enquanto cada tabela é renomeada.
Etapa 3: Verifique se o seu site está funcionando
É isso. O plugin fez todo o trabalho pesado para você. Como uma verificação final, é sempre uma boa ideia garantir que tudo esteja funcionando sem problemas.
Visite a página inicial do seu site para garantir que ela carregue corretamente. Depois disso, tente sair e fazer login novamente na sua área de administração do WordPress. Se ambas as ações funcionarem, então o seu novo prefixo de banco de dados está funcional. 🎉
Método 2: Método Manual via phpMyAdmin
Se você preferir alterar o prefixo do banco de dados manualmente ou não quiser usar um plugin, pode fazer isso sozinho através do phpMyAdmin. Este método lhe dá controle total, mas requer mais etapas técnicas e acarreta um risco maior de erro.
Antes de começar, é uma boa ideia colocar seu site WordPress em modo de manutenção (o plugin no Método 1 faz isso automaticamente). Caso contrário, você pode causar uma má experiência para os visitantes do seu site.
Para a maioria dos usuários, especialmente iniciantes, recomendo fortemente o uso do método com plugin.
Observação para Usuários Avançados: Alguns plugins armazenam configurações em um formato especial (chamado dados serializados). Executar uma consulta SQL direta pode, às vezes, corromper esses dados. Esta é outra razão fundamental pela qual recomendamos fortemente o método do plugin, pois ele contém salvaguardas para evitar esses tipos de erros.
Passo 1: Altere o Prefixo da Tabela em wp-config.php
Primeiro, você precisará conectar-se ao seu site usando FTP ou o aplicativo Gerenciador de Arquivos em sua conta de hospedagem WordPress.
Em seguida, você precisa abrir seu arquivo wp-config.php, que está localizado no diretório raiz do seu WordPress. Aqui, você pode alterar a linha do prefixo da tabela de wp_ para outra coisa, como wp_a123456_
Portanto, a linha ficaria assim:
$table_prefix = 'wp_a123456_';
Observação: Você só pode alterar o prefixo da tabela usando números, letras e sublinhados.
Passo 2: Altere Todos os Nomes das Tabelas do Banco de Dados
Em seguida, você precisa se conectar ao seu banco de dados usando a ferramenta phpMyAdmin.
Se o seu host usa o painel cPanel, você pode encontrar facilmente o phpMyAdmin lá.

Existem 12 tabelas padrão do WordPress, então alterá-las manualmente seria um incômodo.
Em vez disso, você deve clicar na aba ‘SQL’ no topo.

Em seguida, você pode inserir a seguinte consulta SQL:
RENAME table `wp_commentmeta` TO `wp_a123456_commentmeta`;
RENAME table `wp_comments` TO `wp_a123456_comments`;
RENAME table `wp_links` TO `wp_a123456_links`;
RENAME table `wp_options` TO `wp_a123456_options`;
RENAME table `wp_postmeta` TO `wp_a123456_postmeta`;
RENAME table `wp_posts` TO `wp_a123456_posts`;
RENAME table `wp_terms` TO `wp_a123456_terms`;
RENAME table `wp_termmeta` TO `wp_a123456_termmeta`;
RENAME table `wp_term_relationships` TO `wp_a123456_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a123456_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a123456_usermeta`;
RENAME table `wp_users` TO `wp_a123456_users`;
Lembre-se de alterar o prefixo do banco de dados para aquele que você escolheu ao editar o arquivo wp-config.php.
Importante: Esta consulta renomeia apenas as 12 tabelas principais do WordPress. Muitos plugins criam suas próprias tabelas de banco de dados que também usam o prefixo padrão wp_.
Você precisará identificar essas tabelas (elas geralmente contêm o nome do plugin no nome da tabela) e adicionar uma linha RENAME para cada uma à consulta SQL acima.
Esquecer esta etapa quebrará seus plugins.
Por exemplo, se você vir uma tabela chamada wp_yoast_indexable, você precisará adicionar esta linha à sua consulta SQL:
RENAME table `wp_yoast_indexable TO wp_a123456_yoast_indexable`;
Etapa 3: Atualizar a Tabela de Opções
Em seguida, você precisa pesquisar na tabela options quaisquer campos que ainda usem o prefixo antigo wp_. A entrada mais crítica é wp_user_roles, que controla as permissões do usuário. Se isso não for atualizado, os usuários não conseguirão fazer login corretamente.
Para atualizar todas as entradas relevantes automaticamente, você pode usar a seguinte consulta SQL. Lembre-se de substituir wp_a123456_ pelo seu novo prefixo:
UPDATE `wp_a123456_options` SET `option_name` = REPLACE(`option_name`, 'wp_', 'wp_a123456_') WHERE `option_name` LIKE 'wp_%';
Esta consulta encontra todas as entradas na coluna option_name que começam com wp_ e substitui essa parte pelo seu novo prefixo.
Etapa 4: Atualizar a Tabela UserMeta
Da mesma forma, você precisa atualizar a tabela usermeta, que armazena as capacidades e configurações do usuário. Chaves como wp_capabilities e wp_user_level devem ser atualizadas.
Execute a seguinte consulta para encontrar e substituir todos os prefixos antigos na coluna meta_key. Certifique-se de usar seu novo prefixo na consulta:
UPDATE `wp_a123456_usermeta` SET `meta_key` = REPLACE(`meta_key`, 'wp_', 'wp_a123456_') WHERE `meta_key` LIKE 'wp_%';
Isso garante que todos os usuários mantenham suas permissões e configurações corretas.
Agora você está pronto para testar seu site. Se você seguiu os passos acima, tudo deve estar funcionando bem. Mas se precisar de ajuda com a solução de problemas, por favor, continue lendo.
Solução de Problemas ao Alterar o Prefixo do Banco de Dados
Mesmo quando você segue as etapas cuidadosamente, às vezes problemas podem ocorrer após a alteração do prefixo do seu banco de dados WordPress. Aqui estão os problemas mais comuns e como resolvê-los.
Problemas de Login
Se você não consegue fazer login no seu painel administrativo do WordPress após alterar o prefixo, geralmente é porque algumas entradas do banco de dados não foram atualizadas corretamente. Isso acontece com mais frequência com o método manual quando você deixa de atualizar entradas nas tabelas options ou usermeta.
Para corrigir isso, volte ao phpMyAdmin.
Especificamente, verifique a tabela options em busca de uma entrada chamada wp_user_roles (usando seu prefixo antigo) e certifique-se de que ela foi renomeada para o seu novo prefixo (por exemplo, wp_a123456_user_roles).
Além disso, pesquise na tabela usermeta por entradas meta_key como wp_capabilities e certifique-se de que elas foram atualizadas corretamente.
Erros de Conexão com o Banco de Dados
Às vezes, você pode ver uma mensagem de ‘Erro ao estabelecer uma conexão com o banco de dados’. Isso geralmente significa que há uma incompatibilidade entre seu arquivo wp-config.php e os nomes das tabelas do seu banco de dados.
Verifique se o prefixo no seu arquivo wp-config.php corresponde exatamente aos prefixos das suas tabelas de banco de dados, incluindo quaisquer underscores.
Vendo a Tela de Instalação do WordPress
Este é um problema assustador, mas corrigível. Quase sempre significa que o seu arquivo wp-config.php foi atualizado com o novo prefixo, mas as tabelas do seu banco de dados não foram renomeadas com sucesso.
Quando o WordPress não consegue encontrar tabelas que correspondam ao prefixo em seu arquivo de configuração, ele pensa que precisa ser instalado.
Para corrigir isso, você precisa editar manualmente seu arquivo wp-config.php e alterar o prefixo de volta para o original:
- Conecte-se ao seu site usando um cliente FTP ou o Gerenciador de Arquivos do seu provedor de hospedagem.
- Localize o arquivo
wp-config.phpna pasta principal do seu site. - Encontre a linha que especifica o prefixo da tabela. Ela terá o seu prefixo novo (e incorreto):
$table_prefix = 'wp_a1b2c3_'. - Altere de volta para o seu prefixo original (que geralmente é
wp_):$table_prefix = 'wp_'. - Salve o arquivo e envie-o de volta para o seu servidor.
Seu site agora deve carregar corretamente. Esse problema às vezes pode ocorrer em ambientes de hospedagem com permissões de arquivo rigorosas que impedem um plugin de renomear tabelas de banco de dados.
Recursos de Soluções e Suporte
Se você ainda estiver enfrentando problemas, aqui estão algumas etapas que podem ajudar.
Primeiro, restaure seu backup e tente o processo novamente com mais cuidado. É por isso que criar um backup antes de começar é tão importante.
Segundo, se você usou o método manual, considere mudar para o método do plugin Solid Security em vez disso. Ele lida com muitos casos extremos automaticamente que são fáceis de perder ao fazer manualmente.
Por fim, se os problemas persistirem, entre em contato com a equipe de suporte da sua hospedagem web. Eles geralmente podem ajudar a identificar problemas relacionados ao banco de dados e podem auxiliar no processo de alteração do prefixo.
Perguntas Frequentes Sobre a Alteração do Prefixo do Banco de Dados do WordPress
Eu sei que alterar o prefixo do seu banco de dados pode parecer assustador, especialmente se você for novo no WordPress.
Estas são as perguntas que recebo com mais frequência sobre o processo, juntamente com respostas claras para ajudá-lo a se sentir mais confiante.
Qual é o prefixo padrão do banco de dados do WordPress?
O prefixo padrão do banco de dados do WordPress é wp_ e é usado para todas as tabelas do banco de dados, como wp_posts, wp_users e wp_options. Este prefixo é o mesmo em todas as instalações do WordPress, a menos que tenha sido alterado manualmente.
A alteração do prefixo do banco de dados do WordPress pode quebrar meu site?
Sim, a alteração do prefixo do banco de dados do WordPress pode quebrar seu site se não for feita corretamente. É por isso que é essencial criar um backup completo antes de começar e seguir as etapas cuidadosamente para garantir que todas as referências do banco de dados sejam atualizadas corretamente.
O que devo fazer se não conseguir fazer login após alterar o prefixo do banco de dados?
Se você não conseguir fazer login após alterar o prefixo, geralmente significa que algumas entradas do banco de dados não foram atualizadas corretamente. Restaure seu backup e tente o processo novamente, ou use o método do plugin Solid Security, que lida com essas atualizações automaticamente.
Recursos Adicionais para Melhorar a Segurança do WordPress
Espero que este artigo tenha ajudado você a aprender como alterar o prefixo do banco de dados do WordPress. Esta é apenas uma parte da segurança do seu site WordPress. Existem muitas outras etapas que você pode seguir para tornar seu site ainda mais seguro e melhor protegido contra vários tipos de ataques.
Aqui estão algumas medidas de segurança adicionais que recomendo configurar:
- Configure mais técnicas de fortalecimento, como o uso de senhas fortes e autenticação de dois fatores. Veja nosso guia sobre como melhorar a segurança do WordPress.
- Habilite plugins ou configurações de segurança. Consulte nosso artigo sobre os melhores plugins de segurança WordPress.
- Atualizações e monitoramento regulares. Veja nosso guia passo a passo sobre como atualizar o WordPress com segurança.
Se você gostou deste artigo, por favor, inscreva-se em nosso Canal do YouTube para tutoriais em vídeo do WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Jiří Vaněk
Obrigado pelo guia. Antes de começar com o WordPress, eu usava as instalações padrão onde o usuário era, é claro, 'admin' e o prefixo era 'wp_'. Só mais tarde li que isso não é bom do ponto de vista de segurança e que é muito melhor ter um prefixo personalizado. Eu estava um pouco com medo de começar a mudar coisas em um site já funcionando, e também não tinha conhecimento suficiente para isso. Tentei mudar o prefixo em um site pequeno de acordo com este guia, e realmente funcionou muito bem. Então, provavelmente farei o mesmo para meus outros sites para garantir um pouco mais de segurança. Ótimo.
Mrteesurez
Obrigado pelo seu encorajamento e por compartilhar sua experiência sobre como funcionou para você. Decidi mudá-lo em um novo site WordPress, ainda não tenho coragem de mudá-lo em um site estabelecido. Eu também seguirei este guia e tentarei em um pequeno site para saber se funcionará.
enel lee
Você precisa ajustar a consulta para, ‘wp\_%’ – isso escapa o caractere de sublinhado que tem um valor de ‘um caractere’ em SQL, caso contrário, como muitos descobrirão seguindo seu conselho, você obterá qualquer coisa com ‘wp’ no nome! Você também não precisa do primeiro caractere ‘%’ pois estamos procurando nomes que COMEÇAM COM ‘wp’, o que significa nada na frente dele. As ocorrências internas na tabela de opções são um ótimo conselho para aqueles que podem usar o recurso embutido do phpMyAdmin para alterar o prefixo; isso apenas altera os nomes das tabelas principais e não procura dentro dos campos da tabela.
WPBeginner Support
Thank you for your feedback, we will look into this code again, as this was for a search only and not a replace it was set up to have a broader search to be safe
Admin
Moinuddin Waheed
Isso é uma revelação para a segurança do WordPress.
Eu nunca senti a necessidade de mudar o prefixo do banco de dados por sua simplicidade e nunca soube que deixá-lo como está pode ser perigoso.
Acho que a maioria dos iniciantes deixa o prefixo do banco de dados como está e nunca o muda.
Com certeza terei isso em mente ao instalar cada novo site WordPress.
Mrteesurez
Sim, a maioria dos blogueiros iniciantes, incluindo eu, deixa sem mudar porque não sabíamos as implicações. É melhor e mais fácil mudar durante uma nova instalação do WP, enquanto é desafiador para um blog estabelecido.
Dayo Olobayo
Você está certo, Moinuddin. Muitos iniciantes (eu incluído) frequentemente negligenciam essa etapa. A natureza “padrão” do prefixo pode levar a uma falsa sensação de segurança. Mudá-lo adiciona um obstáculo extra para atacantes que usam scripts automatizados. É uma medida de segurança simples que pode fazer uma grande diferença.
mohadese esmaeeli
Olá. Alterar o prefixo das tabelas do WordPress é muito, muito importante porque este prefixo é o padrão, e a maioria das pessoas não o altera, tornando-o suscetível a testes por qualquer hacker. Portanto, faz sentido alterá-lo, e eu recomendo isso a todos os meus amigos. Se mudarmos o prefixo durante a instalação do WordPress, é muito melhor. No entanto, mesmo após a instalação, é possível alterar o prefixo da tabela.
Ka Khaliq
Olá,
Estou me referindo a este artigo para atualizar o prefixo do banco de dados do meu site WordPress.
Tenho uma confusão sobre a atualização das tabelas Options e Usermeta. Ao executar as respectivas consultas SQL, os resultados obtidos também contêm algumas linhas como transient_wp_cloudflare OU dismissed_wp_pointers OU tlwp_feedback_data OU wpseo_social etc.
Então, preciso atualizar tais linhas também onde 'wp_' está presente no meio/fim OU preciso apenas atualizar as linhas que têm o prefixo 'wp_' no início, como wp_page_for_privacy_policy etc.
Entendo que por prefixo significa algo no início, mas ainda quero resolver essa confusão.
WPBeginner Support
Não, você deve deixar essas tabelas como estão, pois elas são usadas por plugins e outras ferramentas que procuram por esses títulos específicos.
Admin
Eka
you save my time, thanks alot bro.
i do test password and the problem has been detect
thanks !
WPBeginner Support
Glad our guide was helpful
Admin
Barry Richardson
Um desenvolvedor de plugin me disse que você não pode ter um blog Wordpress sem um prefixo de banco de dados. Isso é muito confuso porque tenho um blog Wordpress ativo há 5 anos – e ele não tem prefixo de banco de dados. Então, é possível ter um site Wordpress sem um prefixo de banco de dados?
WPBeginner Support
O WordPress tem um prefixo de banco de dados por padrão sem que você precise fazer nenhuma alteração, esta é uma maneira de personalizar o prefixo.
Admin
Emily
Olá, eu estava seguindo outro tutorial para olhar os arquivos do banco de dados e notei que os meus têm nomes como “wphy_users” … isso é possivelmente uma extensão da coisa descrita aqui, apenas sem o _ antes?
Aguardo sua resposta!
WPBeginner Support
Correct, from the sound of it your database was created with a different prefix
Admin
Izzy
Olá, eu mudei os nomes dos meus prefixos de tabela há um tempo. Descobri que havia alguns novos mapas adicionados com o nome antigo + a pasta principal (banco de dados, acho) também tem o nome antigo. Agora também descobri que minhas pastas já tinham um nome diferente do nome padrão do prefixo “wp”, então a mudança nem foi necessária em primeiro lugar. A única coisa agora é que metade das tabelas tem um certo nome e as outras têm outro nome. Como tudo está funcionando bem agora, não quero mudar as coisas novamente, mas minha única pergunta agora é: é um problema que as tabelas tenham nomes diferentes? Elas precisam ter todas o mesmo nome, ou não importa?
WPBeginner Support
As tabelas extras podem ter sido criadas por um plugin, recomendamos que seu site use o mesmo prefixo para todo o seu conteúdo.
Admin
Akhilesh
Eu tenho hospedagem multi-domínio. na hora da instalação do WP o que devo colocar no prefixo da tabela (já que wp_ está escrito por padrão.)??
Por favor, sugira-me o mais rápido possível…
WPBeginner Support
Você escolheria o que deseja que o prefixo seja se estiver alterando o prefixo do banco de dados do seu site
Admin
Mainak Ghosh
Após alterar o prefixo do banco de dados, estou recebendo o erro “Desculpe, você não tem permissão para acessar esta página” ao visitar o painel de administração do WordPress.
WPBeginner Support
Você pode querer garantir que atualizou todos os links em suas tabelas e pode querer verificar seu arquivo wp-config para outro local. Para ver se é mais de um erro, você pode ativar o wp debug: https://www.wpbeginner.com/wp-tutorials/how-to-set-up-wordpress-error-logs-in-wp-config/
Admin
Kid Max
Olá, estou usando o WordPress multisite. Quero usar o prefixo do banco de dados e a pasta do site principal para anexos de mídia para todos os subsites, incluindo o site principal. Alguma ideia?
WPBeginner Support
Você poderia fazer upload de suas imagens para a biblioteca de mídia do site principal e incorporar as imagens em seus subsites para fazer algo assim.
Admin
Kid Max
Eu sei disso, mas as imagens destacadas não suportam isso, então quero usar o prefixo do banco de dados de mídia do site principal para todos os sites.
WPBeginner Support
Infelizmente, no momento não temos um método recomendado para isso.
Mike
Eu tentei e depois não consegui fazer login. Provavelmente porque tenho um plugin de segurança.
Se eu desativar e excluir todos os meus plugins e deixar apenas a instalação com o núcleo do WP, e depois fizer a alteração, isso provavelmente eliminaria a necessidade de alterar algo nas tabelas usermeta ou options? Ou seja, essa seria provavelmente a maneira mais segura de fazer a alteração na tabela e não quebrar nada.
Então, eu apenas reinstalarei meus plugins.
Mishel
De acordo com este artigo, alterar o prefixo da tabela do WordPress não faz absolutamente nada para aumentar a segurança do site.
Mesmo que tenhamos alterado o prefixo da tabela, um hacker pode encontrá-lo executando este código:
SELECT DISTINCT SUBSTRING(`TABLE_NAME` FROM 1 FOR ( LENGTH(`TABLE_NAME`)-8 ) )
2
FROM information_schema.TABLES WHERE
3
`TABLE_NAME` LIKE ‘%postmeta’;
WPBeginner Support
Olá Mishel,
Não concordamos com isso. Cada passo de segurança que obscurece algo pode ser descoberto por um hacker experiente. Esses passos apenas adicionam uma camada de dificuldade para tornar sua segurança geral mais difícil de quebrar. Mudar o prefixo das tabelas certamente não tem desvantagens e, se puder bloquear algumas tentativas de hacking automatizadas e óbvias, então vale totalmente a pena.
Admin
Sayeed
Sim, concordo.
Daniel
Exatamente o que eu estava procurando. Obrigado.
Mehdi
As consultas em wp_options e wp_usermeta retornam dados que estão contidos. O wp também deveria renomeá-los?
ex: wpseo_title, _yoast_wpseo_
rado
Cometi um erro muito bobo, no meu arquivo wp-config eu atribuí a variável $table-prefix sem o underscore no final. Algo como “wp_12345”, deveria ser “wp_12345_”.
Molly
isso quebrou meus arquivos, nenhum dos meus arquivos está acessível nos sites local ou ao vivo, felizmente tudo isso é aprendizado e um site de teste, mas o que deu errado?
Josch
Funciona bem, muito obrigado! Exceto: recebo o seguinte aviso no backend após alterar o prefixo. Tentei duas vezes:
Aviso: Não é possível modificar informações de cabeçalho – cabeçalhos já enviados por (saída iniciada em /myurl/wp-config.php:1) em /myurl/wp-includes/option.php na linha 837
Aviso: Não é possível modificar informações de cabeçalho – cabeçalhos já enviados por (saída iniciada em /myurl/wp-config.php:1) em /myurl/wp-includes/option.php na linha 838
Você pode me ajudar?
WPBeginner Support
Oi Josch,
Este erro pode ser causado por um espaço vazio ou uma linha extra no final do arquivo wp-config.php. Excluí-lo pode resolver o problema.
Admin
Mehdi
Olá, obrigado pelo seu artigo. Tenho uma pergunta sobre isso. Se você tem alguns plugins instalados no seu WordPress, este método que você mencionou acima é o mesmo? ou talvez precisemos de outras coisas para completar esta etapa?
Agradeço se você me orientar sobre isso porque tenho mais de 20 plugins instalados no meu site WordPress.
Obrigado pela sua ajuda
Asterix
Terei problemas ao atualizar plugins, etc. no futuro?
Tentei usar os recursos avançados integrados do iThemes Security para isso, mas recebi o erro: Um erro de "formato inválido" impediu que a solicitação fosse concluída como esperado. O formato dos dados retornados não pôde ser reconhecido. Isso pode ser devido a um conflito de plugin/tema ou a um problema de configuração do servidor.
Então não tenho certeza se me atrevo a fazer isso manualmente também...
Joe
Olá Equipe
obrigado por compartilhar isso.
Todas as etapas foram bem, exceto a última: Tabela UserMeta.
O MySql não me deixa mudar o prefixo para ele.
Essa é a mensagem de erro que recebo:
#1054 – Coluna desconhecida ‘wp_new_usermeta.umeta_id’ na ‘cláusula where’
Por favor, algum conselho?
Muito obrigado,
Joe
Shivam Pandey
Como alterar o prefixo do banco de dados ao instalar o WordPress.
Vipul Parekh
Há uma opção que pedia para inserir o prefixo do db durante a instalação. então você pode dar o prefixo que desejar!!
Tom B.
É necessário ainda incluir o "wp_" como parte do novo prefixo que quero criar? Posso usar apenas uma string alfanumérica para reduzir a chance de qualquer tipo de hack?
Obrigado,
Tom
WPBeginner Support
Sim, você pode usar uma string alfanumérica.
Admin
Chad Mowery
Ótimo artigo. Acho que a consulta nas tabelas Options e UserMeta confundirá os menos experientes. Não tenho certeza de como, mas seria útil se você pudesse fornecer mais detalhes sobre essas etapas.
Segui o guia e alterei com sucesso o prefixo da minha tabela do banco de dados!
blade
This does not add really any kind of security.
If I can inject SQL, I can query against information_schema.tables and get info about tables, whatever fancy prefix you put in front of names
thomas
muito verdade. um bom htaaccess também bloqueará injeções de sql. além disso, minha instalação do wordpress só dá acesso total ao banco de dados a usuários muito selecionados, atribuindo essas credenciais com base em certas coisas coletadas muito antes de uma conexão com o banco de dados. todos os outros têm acesso muito, muito básico.
também parei a maioria das tentativas de hacking bloqueando o wpzlogin.php e protegendo ainda mais o acesso ao wp admin no cpanel. leva um login apenas para chegar à página de login do wp.
John
@Shivi
Isso é tudo que você precisa fazer para alterar o prefixo da tabela? Mesmo quando está ativo?
shivi
Olá, ótimo artigo! Pensei em simplificar a substituição do prefixo da tabela.
No Phpmyadmin, uma vez que você seleciona o banco de dados, você pode ver a lista de tabelas.
1. Habilite a caixa de seleção "selecionar tudo"
2. selecione Substituir prefixo da tabela no menu suspenso 'com selecionados'
3. Insira o prefixo existente na opção 'de': 'wp_' como mencionado no artigo.
4. Insira o novo prefixo na opção 'para': 'wp_a123456_' como mencionado no artigo.
5. Clique em enviar
Isso ajuda a alterar o prefixo da tabela para todas as tabelas, incluindo as de plugins.
Você pode verificar estes artigos se precisar de suporte para desinfectar seu site
john
Então... @SHIVI
Tudo que eu preciso fazer para alterar o prefixo da tabela é ir ao meu arquivo de configuração, mudar o prefixo e então seguir os seus passos 1-5 e o prefixo da tabela será alterado em todos os lugares (plugins, etc.)
E é só isso?
Dana Nourie
Ótimo! Isso foi excelente.
Matt Boden
Você ainda precisará atualizar manualmente o prefixo nas tabelas options e usermeta.
Fahim
Devo executar SQL para todas as tabelas? Quero dizer, tenho 15 tabelas. Ou apenas alterar as duas tabelas que você descreveu resolverá o problema.
WPBeginner Support
Todas as tabelas. Você vai querer alterar o prefixo da tabela de todas as suas tabelas existentes do WordPress.
Admin
Alph
Oi pessoal,
Obrigado por estas instruções. Elas me ajudaram a resolver meus problemas com letras maiúsculas.
Como iniciante, teria sido apreciada alguma orientação sobre como alterar os nomes das tabelas manualmente. Eu me sentiria mais confortável fazendo isso dessa maneira.
Além disso, para um iniciante como eu, algumas instruções sobre como fazer as alterações nas tabelas Options e Usermeta teriam sido úteis.
Obrigado novamente. Não teria conseguido sem você!
Chris A
Obrigado pela instrução. Eu precisava remover uma letra MAIÚSCULA de um prefixo e isso mostrou exatamente quais registros eu precisava tocar!
DICA: com o phpMyAdmin você pode verificar todos os registros na parte inferior e selecionar ‘substituir prefixo da tabela’, isso exibirá uma caixa de substituição padrão com os valores ‘de’ e ‘para’.
Isso também economizará muita digitação na etapa um – especialmente se for um banco de dados grande.
Prabhakar
Você conseguiu!
Obrigado
Igor
Oi pessoal,
quando fiz essas alterações, não me deixou fazer login como usuário atual, mas me diz para instalar o WordPress novamente...
Igor
WPBeginner Support
Isso geralmente acontece quando o banco de dados ao qual você se conectou está vazio. Por favor, verifique novamente o nome do seu banco de dados.
Admin
Alan P
wp_termmeta está faltando na lista de tabelas para renomear.
WPBeginner Support
Obrigado por nos notificar. Atualizamos o artigo.
Admin
Rick
Meu banco de dados SQL não tem prefixo de tabela, então às vezes recebo um erro no arquivo Wpconfig.php do WordPress sem $table_prefix = ”;.
como adicionar prefixo de tabela,
quando tento adicionar no arquivo de configuração e renomear todas as tabelas com o mesmo prefixo
e faço login no wp, recebo o erro “você não tem permissão para acessar”
Sameer Panda
Worked as a charm, thanks for sharing.
Dave van Hoorn
Atualize o SQL para renomear os prefixos, por favor. O WordPress adiciona a tabela ‘wp_termmeta’ agora. Está incluída no SQL abaixo.
RENAME table `wp_commentmeta` TO `wp_yoursitename_commentmeta`;
RENAME table `wp_comments` TO `wp_yoursitename_comments`;
RENAME table `wp_links` TO `wp_yoursitename_links`;
RENAME table `wp_options` TO `wp_yoursitename_options`;
RENAME table `wp_postmeta` TO `wp_yoursitename_postmeta`;
RENAME table `wp_posts` TO `wp_yoursitename_posts`;
RENAME table `wp_termmeta` TO `wp_yoursitename_termmeta`;
RENAME table `wp_terms` TO `wp_yoursitename_terms`;
RENAME table `wp_term_relationships` TO `wp_yoursitename_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_yoursitename_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_yoursitename_usermeta`;
RENAME table `wp_users` TO `wp_yoursitename_users`;
Prabhudatta Sahoo
Quando estou renomeando minhas tabelas no banco de dados, todas as imagens da galeria desaparecem, não entendo o motivo. Alguém poderia me ajudar a corrigir este problema?
Terry Thorson
Este problema ocorrerá se você não atualizar as strings de dados serializados (usadas para as imagens da sua galeria) corretamente no banco de dados. Uma boa maneira de fazer isso é usar o plugin WP Migrate DB. Existe um excelente tutorial sobre isso no Lynda.com (embora certifique-se de usar o mesmo prefixo para o seu banco de dados de destino que o seu banco de dados de origem).
Eu aprendi isso da maneira mais difícil. Tentando começar de novo, descobri que meu backup também estava com defeito. Felizmente, meu provedor de hospedagem tinha um backup mais antigo que eu pude usar para reiniciar minha migração. O WP Migrate DB resolveu o problema.
Cameron Jones
Não consigo encontrar nenhum campo nas tabelas _usermeta ou _options que precise ser atualizado. A menos que estejam referenciando especificamente uma tabela, eles não deveriam precisar ser atualizados. É um prefixo de tabela, não um prefixo de variável.
Cameron Jones
Na verdade, me corrijo. Existem alguns que farão parte de uma instalação padrão do WordPress:
Em prefix_options
prefix_user_roles
Em prefix_usermeta
prefix_capabilities
prefix_user_level
prefix_dashboard_quick_press_last_post_id
prefix_user-settings
prefix_user-settings-time
Você deve ter cuidado ao atualizar quaisquer outros campos. Plugins podem usar o prefixo definido ou `wp_` como prefixo. Sempre faça um backup e teste em um ambiente de desenvolvimento ou staging.
kapil
Olá,
Tenho uma dúvida. Suponha que eu tenha alterado todos os meus prefixos de wp_algo para outro nome. Essas alterações serão feitas apenas nos campos existentes no banco de dados. Mas o código nos meus arquivos .php do WordPress não permanecerá o mesmo??? Então, da próxima vez, para qualquer novo registro de usuário ou outro registro, as entidades serão salvas novamente como wp_algo, já que o código principal nos arquivos .php permanece inalterado… ???
obrigado….
tech
UPDATE `wp_a123456_options` SET `option_name`=REPLACE(`option_name`,’wp_’,’wp_a123456_’) WHERE `option_name` LIKE ‘%wp_%’;
UPDATE `wp_a123456_usermeta` SET `meta_key`=REPLACE(`meta_key`,’wp_’,’wp_a123456_’) WHERE `meta_key` LIKE ‘%wp_%’;
Eu faço as alterações, mas depois de fazer isso, executo novamente a seguinte consulta e ela mostra que o prefixo não foi alterado
SELECT * FROM `wp_a123456_options` WHERE `option_name` LIKE ‘%wp_%’
Wiem
Obrigado pelas consultas
Nathan WHite
Este post e as respostas aos comentários omitem um componente muito importante. A tabela precisa começar com wp_?
Ao encontrar outra discussão no wordpress.org, indicou que realmente não precisava. Teria me ajudado se essa pergunta tivesse sido respondida pelo moderador.
Além disso, as perguntas sobre dismissed_wp_pointers não foram respondidas claramente. Eu mudei a minha.
Clare Wood
Oi pessoal,
Segui estes passos, agora quando tento ver o back-end ou front-end do meu site, recebo isto:
ERRO: $table_prefix em wp-config.php só pode conter números, letras e underscores.
Tenho certeza de que só tenho letras minúsculas e um underscore como prefixo da minha tabela.
Alguma ideia? O site está em localhost.
Abraços.
Paul
Artigo fantástico e logicamente preparado sobre segurança do WP.
Thomas
Muito obrigado! Tentei restaurar meu banco de dados antigo, mas sem sucesso. Então percebi que o meu novo prefixo de banco de dados era diferente do antigo. Fiz tudo o que você recomendou e voilà!
Divyesh
Muito obrigado!!!
Funcionou perfeitamente
Nikhil
Estou recebendo este erro... “Você não tem permissões suficientes para acessar esta página” após implementar o procedimento acima…..como resolver?????
Saz
Estas instruções foram seguidas, mas agora a atribuição de funções para novos usuários desapareceu...
Tom
Obrigado pelas ótimas dicas.
Tenho uma pergunta.
Preciso mudar também o "wp_ ...." usado na tabela post_meta?
johnny
ou este plugin http://wordpress.org/plugins/db-prefix-change/