Seleccionar página

Cambiar el prefijo de la base de datos de WordPress

por | Abr 1, 2016 | Wordpress

Índice de contenidos

Cambiar el prefijo de la base de datos de WordPress

En este artículo vamos a explicar como cambiar el prefijo de las tablas de la base de datos de WordPress. Veremos dos métodos: el primero manual, ejecutando sentencias en phpMyAdmin, y el segundo método instalando algún plugin en WP. Si prefieres utilizar plugins, te recomiendo ir a la sección «2» de este artículo.

Durante la instalación de WordPress una de las opciones que tienes es cambiar el prefijo de la base de datos, muchas veces nos saltamos este paso y no somos conscientes de la importancia que tiene cambiar el prefijo para la seguridad de nuestro sitio web. Si este es tu caso el siguiente artículo te interesa.

Cambiar el prefijo de la base de datos de WordPress

En WordPress todas las tablas de la base de datos tienen por defecto el mismo prefijo: «wp_» . Este dato es conocido y aprovechado por los hackers y hace que tu página sea vulnerable a ataques.

Cambiar el prefijo de la base de datos de WordPress es una de las acciones importantes que debes realizar para proteger tu web de posibles ataques.

 

Las tablas que componen la base de datos de WordPress

WordPress guarda toda la información en la base de datos, la base de datos se va modificando a medida que trabajamos con nuestra página. Normalmente estas son las tablas que encontrarás dentro de la base de datos de WordPress:

  1. wp_commentmeta
  2. wp_comments
  3. wp_links
  4. wp_options
  5. wp_postmeta
  6. wp_posts
  7. wp_term_relationships
  8. wp_term_taxonomy
  9. wp_terms
  10. wp_usermeta
  11. wp_users

Este listado corresponde a una instalación de WordPress típica. Esta lista puede irse ampliando ya que algunos themes de WP instalan tablas en la base de datos. Con los plugins sucede igual, según vayas instalando plugins en tu WordPress se irán añadiendo nuevas tablas.

Si observas el nombre de todas las tablas verás que todas tienen el mismo prefijo wp_, esto es lo que vamos a modificar.

La modificación del nombre de las tablas la vamos a realizar desde la propia base de datos, de esta forma aunque actualicemos wordPress no perderemos los cambios ya que no afectan las actualizaciones a la base de datos.

Acceso a la base de datos y copia de seguridad

Paso 1.- Acceder al servidor

Lo primero que tienes que hacer es acceder al servidor donde tienen instalada tu web y abrir la base de datos. En mi caso yo la tengo alojada en un servidor phpMyAdmin (si no sabes como acceder a tu servidor de bases de datos debes pedir información a la empresa donde tengas contratado el alojamiento de tu web)

phpmyadmin

Realiza una copia de seguridad de la base de datos, es muy importante, si tienes algún problema en el proceso, siempre podrás restaurar esta copia.

Paso 2.- Creando copia de seguridad de la base de datos

En phpMyAdmin, haz click sobre el nombre de la base de datos que encontrarás en la parte izquierda (verás que las tablas cuelgan de ese nombre) después en los menús de cabecera pulsa sobre «Exportar».

Prefijo Base de Datos

Selecciona el modo de exportación (el modo rápido es perfecto) y el formato en que lo quieres exportar, en este caso SQL, ya que en caso de problemas vas a importar de nuevo este archivo a phpMyAdmin.

Normalmente el proceso que vamos a realizar no suele dar problemas, pero si en tu caso te enfrentas con algún problema y no sabes como recuperar de nuevo la base de datos utilizando la copia de seguridad puedes escribir un comentario y te ayudaré a subir de nuevo el archivo.

Comprobando las tablas de tu WordPress

Escribe la siguiente consulta SQL para comprobar el nombre de todas las tablas que componen tu base de datos. La consulta es la siguiente:

select * from information_schema.tables where table_type = 'base table';

 

Dónde escribir la consulta:

1. primero selecciona la base de datos haciendo click sobre el nombre de la misma.

2. selecciona la pestaña SQL en el menú de arriba de la aplicación web phpMyAdmin

3. copia y pega la consulta que te he escrito en la ventana de SQL.

consulta SQL

4. pulsa sobre el botón continuar.

La consulta arroja como resultado el nombre de todas las tablas de tu wordpress.  Abre un archivo de texto y copia todos los nombres de las tablas (importante para el siguiente paso):

  1. wp_commentmeta
  2. wp_comments
  3. wp_links
  4. wp_options
  5. wp_postmeta
  6. wp_posts
  7. wp_term_relationships
  8. wp_term_taxonomy
  9. wp_terms
  10. wp_usermeta
  11. wp_users

*este listado es un ejemplo de las tablas que forman parte de la base de datos de una instalación de WordPress antes de la instalación de plugins, si en tu web WP tienes instalados plugins… tendrás más tablas que las de este ejemplo.

Renombrar las tablas con el nuevo prefijo

Piensa el nuevo prefijo para tus tablas, ejemplo miwok_            

OJO: Sólo debes emplear letras, números y guión bajo.

Ejecuta la siguiente consulta, repasa este código, por cada tabla de tu base de datos debes escribir una consulta de RENAME, si te falta de incluir alguna tabla añade la correspondiente línea con:

RENAME table wp_tabla TO miwok_tabla

RENAME table wp_commentmeta TO miwok_commentmeta;

RENAME table wp_comments TO miwok_comments;

RENAME table wp_links TO miwok_links;

RENAME table wp_options TO miwok_options;

RENAME table wp_postmeta TO miwok_postmeta;

RENAME table wp_posts TO miwok_posts;

RENAME table wp_term_relationships TO miwok_term_relationships;

RENAME table wp_term_taxonomy TO miwok_term_taxonomy;

RENAME table wp_terms TO miwok_terms;

RENAME table wp_usermeta TO miwok_usermeta;

RENAME table wp_users TO miwok_users;

(el mismo proceso que antes, selecciona la base de datos, click en la pestaña SQL, copia y pega el código pero antes repasa que tengas una fila por tabla y pulsa continuar)

Si tienes problemas ejecutando esta consulta puedes ir tabla por tabla haciendo lo siguiente: selecciona la tabla, operaciones, cambiar nombre a la tabla (en servidores phpMyAdmin).

Modificando los campos de la tabla options y user_meta que comienzan por wp_

Dentro de la tabla options y user_meta hay campos que hacen uso del antiguo prefijo así que debemos modificarlos.

Modificar en la tabla options los prefijos wp_

SELECT * FROM miwok_options WHERE option_name LIKE '%wp_%';

El SELECT selecciona todos los campos de la tabla (miwok_options) cuyo nombre (option_name) comienza  (%) con wp_ , una vez seleccionados debes cambiar el prefijo wp_ por  el nuevo prefijo.

Modificar en la tabla username los prefijos wp_

Hacemos lo mismo con la tabla usermeta, modificando los nombres de los meta_key cuyo comienzo es el prefijo wp_

SELECT * FROM miwok_usermeta WHERE meta_key LIKE '%wp_%';

Modificar el prefijo de la tabla en el archivo wp- config.php

Si no realizas esta acción al cargar tu web saltará un error, este paso es obligatorio

Para que los cambios en la base de datos funcionen de manera correcta tienes que ir al directorio de archivos de tu wordpress y localizar el archivo wp-config.php. Este archivo se encuentra en el directorio raíz de WordPress. Navega por el archivo y más o menos en la línea 60 encontrarás el siguiente código:

$table_prefix = 'wp_';

modifica el código cambiando el prefijo antiguo «wp_» por el nuevo prefijo:

$table_prefix = 'miwok_';

guarda los cambios.

 

Plugins para cambiar el prefijo de la base de datos de WordPress

All In One WP Security 

Si tienes instalado All In One WP Security tienes una opción que te permite cambiar el prefijo de la base de datos en: Seguridad WordPress >> Seguridad DB >> Prefijo DB, es un plugin que yo siempre utilizo en mis proyectos y al que dedicaré un post para explicar todas las opciones de seguridad que permite instalar en nuestra página.

 

screenshot-2

Imagen de ejemplo, base de datos con prefijo modificado

 

 

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *