Dentro de poco pondré otra herramienta online disponible para todos los usuarios Linuxeros de este portal que creo os va a gustar (algunos de vosotros ya lo habéis probado como beta-testers). El caso es que necesitaba unificar las bases de datos (en concreto las tablas referidas a usuarios) de diariolinux.com con la de esa otra herramienta (que también se ejecuta sobre WordPress como base) para conseguir que no hubiera que registrarse en ambos sitios para poder participar en una u otra web. Y buscando en el oráculo no encontré nada. Así que me lié la manta a la cabeza e ideé un método que igual le puede servir a alguien más. La idea es que, aprovechando que ambos sistemas guardan sus datos en una base de datos MySQL, y sabiendo que esta BBDD guarda internamente sus tablas sobre ficheros con extensiones MYD, MYI, y frm, probé a borrar los ficheros de las tablas de usuarios de la nueva herramienta y crear enlaces a los mismos ficheros ya existentes de diariolinux.com.
En Fedora, esos ficheros se guardan en /var/lib/mysql/ . Ahí tendremos un directorio por cada BBDD. Por ejemplo, tengo un directorio: /var/lib/mysql/diariolinux y otro /var/lib/mysql/nueva_herramienta .
En concreto, las tablas de gestión de usuarios de WordPress que primero borré (en herramienta) y luego enlacé (para que apuntaran a las de DiarioLinux) son: wp_usermeta.MYD, wp_usermeta.MYI, wp_usermeta.frm, wp_users.MYD, wp_users.MYI y wp_users.frm.
El caso es que funcionó 🙂 Ahora, sólo queda (si es posible) conseguir el SingleSignOn, es decir, que un usuario pueda identificarse o bien en diariolinux.com o bien en la web de la herramienta y que esa identificación valga para ambos dominios. Eso, creo, será más difícil que unificar logins/passwords.
En teoría podría funcionar con cualquier otro cms, foro o lo sea que no fuese wp, verdad?
Parece muy interesante. Y si ya se soluciona lo de los accesos o modificaciones de datos concurrentes en más de una web con la misma db para usuarios sería de muuuuuuuuuuucha utilidad.
Has puesto mal el link del oráculo 😉
Una pregunta: se basa en OpenID?
xabi: arreglado, thanks.
Sepul: no creo que haya problemas de concurrencia para este caso concreto (un mismo usuario debería de cambiar sus datos exactamente a la vez desde dos sitios distintos, cosa alto improbable)
Julen: OpenID es un sistema que me gustaría probar, pero para conseguir el SingleSignOn tal vez pruebe phpCAS (http://www.ja-sig.org/wiki/display/CASC/phpCAS)
O sea, en pocas palabras, en tu herramienta usás la tabla de usuarios de diariolinux mediante enlaces simbólicos a los archivos…
Luciano: exacto
Hola,
quizás con este «apaño» puedes poner en riesgo la consistencia de datos de la tabla enlazada, o no disponer de ellos por posibles bloqueos.
En Mysql existen las tablas FEDERATED (a partir de 5.0.3), es similar a los dblink de Oracle.
http://dev.mysql.com/doc/refman/5.0/en/federated-storage-engine.html
Quizás te sea mejor solución. Si lo pones en práctica comentame el resultado
Un saludo