Archivo de la categoría "Programaci贸n"

Copiar una base de datos de WordPress en otro servidor y bajo otro dominio.

Viernes, 12 de Diciembre de 2008

He replicado una base de datos de WordPress en otro dominio y servidor, pero me da varios errores debido a que almacena en algunas opciones el dominio anterior.

Manualmente, desde phpMyAdmin, acudo a la tabla wp-option y examino sus registros, viendo cuales contienen el dominio antiguo; edito dichos registros e introduzco el nuevo dominio. Concretamente el registro 39: home.

Sigue sin funcionar, puesto que no me localiza las entradas. Pienso que es por el mod_rewrite. Lo observo, y efectivamente, se indica como directorio el ra铆z, y en este caso no es as铆, dado que WordPress lo instalo bajo el directorio de un dominio.

Por 煤ltimo, veo que todo parece funcionar salvo unas caras raras que me muestra cada entrada y que corresponden con unas tabulaciones. Deben deberse a alguna incompatibilidad en la codificaci贸n o algo as铆. Lo que hago es, modificar el c贸digo SQL que genera los registros, remplazando masivamente con un editor el car谩cter raro junto con el espacio que le sigue: ‘脗 ‘ por un simple espacio ‘ ‘.

Todo funciona ya correctamente

Importaci贸n y exportaci贸n de bases MySQL

Viernes, 12 de Diciembre de 2008

Preciso pasar una base de datos MySQL de tama帽o considerable, de un servidor compartido a otro.

En el servidor origen, usando phpMyAdmin selecciono la base de datos a exportar, y pulso el men煤 Exportar.

phpMyAdmin genera un fichero, pero bien sea comprimido o no comprimido, al tratar de importarlo con el otro servidor, me da error; puesto que tiene el tiempo de respuesta limitado y al ser compartido, no puedo variar este tiempo limitado.

Por tanto, lo trato de hacer por pasos. Primero trato de importar s贸lo la estructura, desmarcando en phpMyAdmin la exportaci贸n de los datos. Pero me encuentro con el siguiente error:

CREATE TABLE聽 `wp_terms` (
聽`term_id` BIGINT( 20 ) NOT NULL AUTO_INCREMENT ,
聽`name` VARCHAR( 55 ) NOT NULL DEFAULT聽 ”,
聽`slug` VARCHAR( 200 ) NOT NULL DEFAULT聽 ”,
聽`term_group` BIGINT( 10 ) NOT NULL DEFAULT聽 ‘0′,
PRIMARY KEY (聽 `term_id` ) ,
UNIQUE KEY聽 `slug` (聽 `slug` )
) ENGINE = MYISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT =3;
MySQL ha dicho:

#1064 - You have an error in your SQL syntax.聽 Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘DEFAULT CHARSET=latin1 AUTO_INCREMENT=3′ at line 8

El problema se produce por las opciones ENGINE = MYISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT =3, dado que al ser compartido el servidor limita el uso de esas opciones. Las quito, usando tan s贸lo el CREATE TABLE ‘wp_terms’ (…); y ya funciona la importaci贸n de聽 la estructura.

A continuaci贸n exporto s贸lo los datos, desmarcando la generaci贸n de la estructura, pero casi tabla a tabla, dado que la base de datos es muy extensa y el servidor compartido no me permitir铆a la importaci贸n completa, ya que interrumpir铆a la conexi贸n dada la demora. La cosa funciona.

Es una pena que no funcione a la primera y de un tir贸n, pero bueno, es una alternativa