domingo, 7 de diciembre de 2008

Agrandar particion en maquina virtual

La situación es la siguiente, tengo un windows xp en una maquina virtual con VMWare, la cual me esta quedando chica para las cosas que tengo en esta. Entonces las solución que se me ocurrieron son 3


1 - agregarle un disco y seguir trabajando en el segundo disco, esta solución es fácilmente aplicable, pero para mi caso no me servía


2 - crear una nueva maquina virtual y respaldar todo lo de la anterior, el tiempo que llevaba realizarlo no me caía en gracia.


3 - y la tercera y ultima es agrandar el disco primario (Disco C).




Investigando un poco en Internet encontre la aplicación de vmware




vmware-vdiskmanager




Con esta aplicación podemos hacer muchas cosas con los discos duros de la VMWares's, ejemplo desfragmentarlo, y obviamente agrandarlo.


Para agrandar el disco duro es muy fácil, vamos por dos y ejecutamos esta aplicación, podemos ver el help para mas datos, pero el tema no queda ahí.


Si leen el warning que da al finalizar el proceso para agrandar el disco, dice algo como que la aplicación te agranda el disco, pero no te agranda la partición.






Entonces seguí un poco mas en Internet (se pude usar partition Magic, pero yo quise investigar un poco mas) y encontre gparted-livecd-0.3.4-11.iso, es un iso que es liveCD, es decir bootea solo con este iso, y te da unas cuantas aplicaciones (free en su mayoría, por no jugarmela y decir todas) para manejo de disco, y la que yo utilice es la que me deja agrandar la partición.


Al se un iso y liveCD solo hay que mapearla en la maquina virtual para que levante esto, iniciamos la maquina y nos arranca y nos hace algunas preguntas estilo tipo de teclado, idioma, etc, y luego nos ofrece las aplicaciones a podes ejecutar.




Así que con estas 2 aplicaciones solucione el dilema de tener el discoC de un windows xp lleno.



Volver al inicio

domingo, 16 de noviembre de 2008

Obtener texto de un archivo que concuerde con una expresión

Bueno lo que necesito es de un archivo muy pero muy grande, quiero obtener el renglón en donde aparece una determinada expresión, y los n renglones que están después.




Esto lo logramos con grep en Linux, y el comando es el siguiente.




grep -A 10 -e expresión archivo.txt > resultado.txt




con este comando vamos a analizar el archivo llamado archivo.txt y la expresión que queremos encontrar es expresión y todo esto lo guardamos en el archivo resultado.txt. Lo que guardamos es el renglón donde aparece expresión y los próximos 10 renglones.




Esto lo he sacado de http://man.cx/grep(1)/es que van a encontrar los que les mencione y muchas cosas mas.



Volver al inicio

domingo, 9 de noviembre de 2008

Respaldo de mysql solamente inserts

Tengo una base mysql y quiero hacer un respaldo, es decir un .sql solo con los inserts de la base de dato, también quiero que no me haba ni el create ni los drop de las tablas, y otra cosa extra que quiero hacer es que no haba lock de las tablas.




El comando seria el siguiente




mysqldump -u root -ppass --lock-tables=false --skip-add-locks -c -e -t -n base > archrespaldo.sql



Volver al inicio

Contar archivos linux

Necesito contar cuantos archivos hay en una carpeta Linux.




ls /home/* | wc -l




esto me dice los archivos de la carpeta /home.



Volver al inicio

Borrar archivos (Argument list too long)

Tengo una carpeta en Linux la cual se guardan archivos temporales, pero no se borran, entonces cada tanto tengo que borrarlos a mano.




Cuando paso varios días sin hacerlo estos son tantos, que al intentar hacer rm *, me sale el mensaje Argument list too long.


Buscando un copo encontré como hacer para borrarlos.





for i in ls /home/temp/*; do rm -v $i -f; done




Ejecutando este comando desde el prompt y cambiando solamente la ruta y la búsqueda (es decir modificar el /home/temp/* por lo que queremos borrar, por ejemplo /home/pepe.tx* o lo que sea) se van a borra todos los archivos.




Volver al inicio





martes, 4 de noviembre de 2008

Consulta que esta corriendo mysql

Si tenemos un servidor en el que esta corriendo mysql (yo las pruebas fueron sobre un Linux pero supongo que no hay problema si se hacen en uno bajo windows por ejemplo) y se están corriendo proceso que no sabemos bien cual es la consulta que esta haciendo, con el siguiente comando la podemos detectar.




show full processlist;




para esto tenemos que loguearnos por consola de mysql, y luego ejecutar la consulta.


Esto lo que nos tira es la consulta que se esta haciendo ejemplo


"Select ... from ... where ... order by ..." o lo que sea que se este ejecutando en ese instante.




Yo lo utilizo para detectar las consultas que hace genexus, no se si todos saben lo que es genexus, pero sirve para desarrollar aplicaciones, sin tener que estar pensando tanto en la base de datos (ya se que es un muy mal ejemplo de que es genexus, y se que gx es mucho mas que eso, pero sirve para entender la idea), es decir el solo te arma las consultas sql cuando accedes a cualquier base de datos.




Como entre a investigar esto, bueno teníamos una tabla en la que había mas de 100 millones de registros y hacíamos una consulta por un índice que tenia un dato, el ultimo, la clave primaria de la tabla, mientras que tenia 2 campos antes que si mysql filtraba por esos 2 debería de devolver unos pocos registros, menos de 500 seguro, y la consulta demoraba mucho, mas de 20 minutos, analizando lo que pasa es que mysql si tiene en algún índice en el que tenga por casualidad la clave de la tabla, mysql se recorre toda la tabla.


Un ejemplo para que quede mas claro




tabla facturas


código,.....,estado,...,dueño,....,




los puntos dicen que ahí hay muchos mas campos.




índice por el cual debería de recorre, estado,dueño,código


la clave primaria, solo código.


Si filtramos los datos de la tabla por estado, dueño, no trae 500 registros.




select * from facturas where estado = 'pendiente' and dueño = 'pepe' esto anda muy rápido, pero si se pone order by estado,dueño,código, demora mucho mucho.


Pero si sacamos el ultimo campo, es decir order by estado,dueño, esto es casi instantáneo.




Luego de googlear mucho detectamos este (digamoslo asi) bug de mysql.




Entonces, no pongan índices en sus aplicaciones que tengan entre sus integrantes la clave primaria.



Volver al inicio

sábado, 1 de noviembre de 2008

Scp en linux

La situación es la siguiente, tengo 2 servidores los cuales puedo acceder solo por ssh, y hay un archivo (pueden ser varios) que esta en uno de ellos que tengo que pasarlo al otro. Los dos equipos son Linux, esto es una ventaja o puede no serlo, lo que si es interesante es que ambos equipos se pueden ver, es decir que del equipo 1 al equipo 2 puedo acceder, ya sea por ssh o cualquier otra protocolo.




Bueno lo que utilice para copiar de un lugar al otro es scp, pongamos un ejemplo para entenderlo




los equipos: equipo1, equipo2


usuario: root en ambos equipos (pero puede ser otro y pueden ser distintos usuario en uno y otro)


el archivo: pepe.tar.gz, se encuentra en equipo1




entonces quiero pasar del equipo1 el archivo pepe.tar.gz al equipo2, el comando a digitar es el siguiente. Cabe aclarar que debo de estar logueado en el equipo 1 con algún usuario que tenga acceso al archivo.




scp pepe.tar.gz root@equipo2:/root




esto copia el archivo pepe.tar.gz del equipo 1 al /root del equipo2




Ahora el segundo ejemplo es si quiero copiar un archivo del equipo2 al 1 estando parado en el equipo1.




scp root@equipo2:/root/pepe.tar.gz /root




esto copia estando en el equipo1 el archivo pepe.tar.gz que esta en /root del equipo2, al /root del equipo1.




Espero que se entienda, pero realmente es muy útil.



Volver al inicio

miércoles, 29 de octubre de 2008

Logs en mysql

La situación es la siguiente, tengo un servidor de mysql el cual esta generando los logs de las transacciones (mysql-bin.00000*) y como son muchas las transacciones, estos empiezan a crecer mucho, y al poco tiempo se llena el disco.




Como este servidor no lo voy a replicar ni nada por el estilo, la solución que implementamos fue la de no escribir los logs.




Para esto hay que comentar la linea del my.cnf (/etc/my.cnf o /etc/mysql/my.cnf) que dice




log-bin=mysql-bin




solo con ponerle un # al inicio y bajando y subiendo el tomcat, ya se dejan de generar, y el servidor no se cae por espacio en disco.



Volver al inicio

domingo, 14 de septiembre de 2008

Formatear y montar disco en linux

Tengo un equipo con Linux el cual te tuve que agregar un disco duro, en particular el equipo era una maquina virtual con ubuntu server.


Los pasos que deben seguir son los siguientes.

1 . agregar el disco en la maquina virtual o en su defecto en el equipo físico.

2. particionar el disco

esto lo hacemos con fdisk

$ fdsik sdb (en mi caso es un disco scsi, pero puede ser un ide y es hdb, b es porque es el segundo disco, puede ser c si es el tercero, etc.)

con m podemos ver las opciones, pero lo que hay que hacer es ejecutar n, luego seguir las instrucciones que nos da, que son si es una partición primaria, el numero, desde donde a donde va la partición, etc.

3. hay que formatear el disco, en mi caso en ext3, pero eso depende de ustedes.

$ mkfs.ext3 /dev/sdb1 (1 le puse al numero de la partición)

4. solo resta montarlo, lo podemos hacer manual o dejarlo en el /etc/fstab para que cada vez que arranque se monte solo

manual: $ mount -t ext3 /dev/sdb1 /puntodemontaje

en fstab: /dev/sdb1 /puntodemontaje ext3 defaults 1 0

en este ultimo punto pueden haber muchas variantes y deben investigar que es lo que mas les sirve.

viernes, 12 de septiembre de 2008

Copiar texto de portapapeles a ssh

Quizás el texto es un poco confuso, pero lo que quiero mostrarles como haces es, por ejemplo, copio un texto de una notepad o de alguna pagina web y lo quiero pegar en un archivo de configuración de un equipo Linux, el cual accedí por ssh.




Obviamente primero tengo que conectarme por ssh (utilizando putty) a el equipo Linux, luego con el texto en la memoria del equipo, es decir botón derecho copiar, ahora quiero copiarlo al putty, bueno lo que hay que hacer es presionar el botón derecho del mouse y listo.




Corta pero te saca de usar el vi a mano muchas veces.



Volver al inicio

jueves, 11 de septiembre de 2008

Compartir con samba en linux una carpeta windows

Primero les muestro cual es mi situación, tengo un equipo windows que tiene una carpeta compartida, entonces desde un equipo Linux (que en mi caso es una maquina virtual en el mismo equipo, pero eso no tendría nada que ver) quiero acceder a esa carpeta como una carpeta mas de mi equipo.

¿Para que lo quiero? bueno el equipo Linux tiene muy poco espacio, ya que instale un ubuntu server el cual pesa muy poco y es muy liviano, y si quiero descargar muchas cosas el espacio en disco no me da, entonces lo que voy a hacer es que la carpeta temp y la carpeta incoming este en el otro equipo, el windows, que ese si tiene espacio.





Realmente es muy fácil, hay que hacer solo un par de cositas.





Primero debemos de instalar samba






$ apt-get install samba





Luego debemos de configurar el punto de montaje y crear la carpeta en donde estará






$ mkdir /home/compartido


$ vi /etc/fstab





agregamos esto al final de todo






//servername/compartidowin /home/compartido smbfs username=myusername,password=mypassword 0 0





servername es el nombre del equipo o si no acceden por el nombre la ip bastaría (a mi me gusta la ip)

compartidowin es el nombre del recurso compartido del equipo windows (se deben de dar derechos suficientes para poder acceder)

compartido es la carpeta en el Linux donde si hacemos un cd veremos la comparición

después hay que poner el passord y el el usuario con el que se puede acceder al recurso compartido del equipo windows desde otro equipo (si es un xp si o si tiene que poner contraseña, en 2000 se puede dejar sin contraseña)





Luego de guardar podemos o reiniciar el equipo o ejecutar lo siguiente






$ mount /home/compartido





y ya podremos acceder a lo que esta en el equipo windows.





El próximo post, o uno muy cercano sera lo opuesto, es decir poder acceder a comparticiones de un equipo Linux.

sábado, 26 de julio de 2008

Configurar tarjeta de red en linux

Tengo un equipo Linux, el cual levanta la red con DHCP, y para tener mas dominio sobre el, para saber en todo momento cual es la IP que tiene, lo quiero configurar con una IP estática.




El equipo es un Ubuntu Server, entonces lo que tenemos que hacer es editar el archivo /etc/network/interfaces, y en la interface que queremos dejar estática ponemos lo siguiente




iface eth0 inet static


address 192.168.10.10


netmask 255.255.255.0


broadcast 192.168.10.255


gateway 192.168.10.1




En address ponemos la ip que tiene que tener el equipo, en este caso es una red tipo C, luego en mascara de subred, la ip de broacast de la red, y el gateway.




Volver al inicio





sábado, 19 de julio de 2008

Error en tomcat 6 con java 6

No se bien cual fue el problema, no lo investigue mucho tiempo, pero instale un windows XP de cero, luego instalar java, JRE 1.6.02 (también lo probé con 1.6.04), luego tomcat 6, y no arrancaba.


El error que salta es el siguiente




[2008-07-19 20:59:00] [986 prunsrv.c] [error] Failed creating java C:\Archivos de programa\Java\jre1.6.0_02\bin\client\jvm.dll


[2008-07-19 20:59:00] [1260 prunsrv.c] [error] ServiceStart returned 1


[2008-07-19 20:59:00] [info] Run service finished.


[2008-07-19 20:59:00] [info] Procrun finished.


[2008-07-19 21:08:09] [info] Procrun (2.0.3.0) started


[2008-07-19 21:08:09] [info] Running Service...


[2008-07-19 21:08:09] [info] Starting service...


[2008-07-19 21:08:09] [174 javajni.c] [error] No se puede encontrar el módulo especificado.




Luego buscando un poco en internet encontre lo siguiente




copiar el archivo msvcr71.dll de %java_home%/bin a window/system32




Y con esta simple solucion quedo todo andando.



Volver al inicio

domingo, 13 de julio de 2008

Configuracion de MySql con GeneXus

En este post vamos a dar la "pisadita" para que se pueda usar MySql con GeneXus en un ambiente Linux.


Y la verdad es muy fácil lo único que hay que hacer es agregar esta linea




lower_case_table_names=1




y luego bajar y subir mysql y ya podemos trabajar.




Cabe destacar que esta configuración lo que hace es tomar las tablas en minúsculas ya que cuando genexus crea las tablas las hace en mayúsculas, entonces si estas en un ambiente Linux que distingue las mayúsculas con las minúsculas, la aplicación no encontraría la tabla a la que te haces referencia.


Por que en windows no importa, porque windows no es case sensistive, es decir para el YO y yo son la misma persona :-)


Bueno fue muy corto pero muy productivo.



Volver al inicio

miércoles, 9 de julio de 2008

Cambiar de disco mysql

Bueno en esta situación les voy a contar algo que me paso en el trabajo y que lo pude solucionar muy rápidamente pero para no perderlo lo escribo para compartirlo con todos.


Tengo un servidor Linux el cual es servidor de base de datos mysql, el cual tiene un solo disco, y este se esta llenando, entonces se le agrego un nuevo disco. Hasta aquí todo normal, lo que hay que hacer es pasar la base de datos a el disco que se acabo de agregar.


Lo primero que hacemos es crear la partición, se pude hacer con muchos utilitarios que hay en la vuelta, pero a mi me gusta la forma tradicional, es decir con fdisk.


Entonces desde el prompt ejecutamos




fdisk




Esto nos lleva al menú de fdisk, el cual con m podemos ver todos los comandos que podemos ejecutar, en mi caso lo único que voy a hacer es crear la partición, esto solamente digitando la letra "n" ya nos empieza a crear la partición.


Luego de digitar n, nos empieza a preguntar, primeo si la partición es primaria o extendida, como mi idea es utilizar el disco entero, lo que hago es crear solo una partición primaria del total del disco, entonces en la pregunta le digo que si.


Luego nos pregunta desde que bloque y hasta que bloque va a tener esta partición, repito, como quiero el disco entero, dejo los valores por defecto en las 2 siguientes preguntas.


Luego fdisk vuelve al menú principal, y ahí solamente dándole "w" el guarda los datos en la tabla del disco y vuelve al prompt.


A esta altura tenemos la partición creada, ahora le debemos de la estructura (en definitiva los índices de la tabla del disco) del disco. Esto lo hacemos con el siguiente comando




Mkfs.ext3 /dev/sdc1




Me falto comentar 2 cosas una es que el disco es scasi por eso /dev/sdc, si fuera un disco Ide seria hdc, hdd o como sea, y además que elegí el formato ext3.


Luego de un rato el disco esta pronto para poder utilizarse, lo que tenemos que hacer es montarlo.


Para montarlo podemos hacerlo a mano cada vez que se reinicia el equipo, o se guarda en el archivo que monta los discos al arrancar. Yo por comodidad lo hago de la segunda forma, entonces tenemos que editar el disco fstab, que esta normalmente en la carpeta /etc, y lo que hay que hacer es copiar alguna línea de montaje, para poner los mismos parámetros y no errarle en alguno, igualmente se pude poner los parámetros que les guste, en mi caso le puse lo siguiente.




/dev/sdc1 /base ext3 acl,user_xattr 1 2




Como ven lo monte en la carpeta /base, antes de reiniciar o de montar el disco esta carpeta debe de existir, entonces hacemos lo siguiente




mkdir /base




Luego podemos probar sin reiniciar, lo que hacemos es




mount /dev/sdc1




Y si no nos tira ningún error debe de haber quedado montado, para verlo hacemos lo siguiente




df




Esto lo que hace es mostrarnos el espacio de los discos (también ejecutando el comando mount nos muestra si se monto). Si esta todo bien cuando se reinicie el servidor se montara automáticamente el disco.




Bueno si hasta ahora todo ha ido bien, lo que nos resta es mover la base de datos mysql de un disco a otro, esto es la parte mas fácil.


Primero paramos el motor




/etc/init.d/mysql stop




Luego copiamos la carpeta raíz de un disco a otro (en mi caso la carpeta estaba en /datos)




cp /datos/mysql /base/mysql




Luego de un rato, dependiendo del tamaño de la base, tenemos en el segundo disco todas las bases de datos.


Ahora eliminamos (yo por precavido deje un respaldo por un tiempo) la carpeta en donde estaba anteriormente.


Luego tuve que poner como el propietario de las carpetas al usuario y el grupo mysql




Chown mysql.mysl /base/mysql -R




Luego solamente hay que levantar mysql




/etc/init.d/mysql Stara




Y pronto, con esto tenemos 2 discos, y se libero espacio del primero que es el que nos daba problema.



Volver al inicio

viernes, 27 de junio de 2008

Tomcat sobre Linux

Tomcat en Linux

Bueno en esta oportunidad vamos a explicar como hacer para instalar Tomcat 6 en un Linux

Primero que nada hay que instalar java, en mi caso instala java 6.
Como la instalación fue bajo un Ubuntu-Server, lo que hago es lo siguiente

apt-get install sun-java6-jdk

Luego descargamos de la pagina de apache, la ultima versión de tomcat, y lo copiamos a alguna carpeta del Linux, y lo descomprimimos

tar -xvf apache...tar.gz

Luego lo copiamos al lugar donde nos guste tener el server en mi caso /softgxjava/tomcat

cp /carpeta donde descomprimimos/* /softgxjava/tomcat

luego lo que hacemos es crear el script para levantar el tomcat
entonces hacemos

vi /etc/init.d/tomcat6

y copiamos lo siguiente
#! /bin/sh

export JAVA_HOME="/softgxjava/java"
export JRE_HOME="/softgxjava/java"
export CATALINA_HOME="/softgxjava/tomcat"
export BASEDIR="/softgxjava/tomcat"
#export JAVA_OPTS="-Xms512M -Xmx1024M -Xss4M -Xloggc:/tmp/javalog.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintClassHistogram -XX:MaxPermSize=256m -Dorg.apache.lucene.mergeFactor=100 -Djava.awt.headless=true -Dfile.encoding=Cp1252"

start() {
  echo -n "Starting service Tomcat... "
  cd $CATALINA_HOME
  $CATALINA_HOME/bin/startup.sh
  echo "done"

}
stop() {
  #$CATALINA_HOME/catalogos.sh

  echo -n "Shutting down service Tomcat... "
  $CATALINA_HOME/bin/shutdown.sh > /dev/null 2>/dev/null
  echo "done"
}
case "$1" in
  start)
  start
  ;;
  stop)
  stop
  ;;
  restart)
  stop
  start
  ;;

  *)
  echo "Uso: $0 {start|stop|restart}"
  exit 1
  ;;
esac
(en este script hay cosas que están de mas, pero las utilizo para otras cosas, por eso las dejo)

luego hacemos un link simbólico a la ruta donde tengamos instalado java

ln -s /ruta donde tenemos java /softgxjava/java

y listo con esto ya esta pronto ahora levantamos tomcat

/etc/init.d/tomcat start

y luego solo tenemos que probar que se levante tomcat

http://dir_ip:8080

si nos muestra la pagina vamos bien, ahora nos falta definir los roles en el tomcat y la contraseña para acceder el administrador, esto lo hacemos con el archivo

/softgxjava/tomcat/conf/tomcat-user.xml

y debe de quedar así

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="admin" password="" roles="admin,manager"/>
</tomcat-users>

ahora si con

/etc/init.d/tomcat restart

y listo ya podes empezar a trabajar con tomcat

VMWare - Maquinas virtuales


VMWare - Maquina virtual




En esta oportunidad les voy a hablar un poco de que es una maquina virtual. En este caso voy a hablar de VMWare, pero hay varios, algunas pagas, otras free, algunas que andan solo en Linux, otra que andan solo en Microsoft, etc.




VMWare anda en ambos sistemas operativos, yo personalmente lo he utilizado en ambos.




¿Qué me es maquina virtual? Una maquina virtual es una maquina completa que puede trabajar dentro de otra. Bueno es un poco mas que eso pero para poner ideas no esta mal.


Pongamos un ejemplo para entendernos, yo tengo en mi equipo personal instalado un Windows XP, bueno pero me gusta probar los nuevos sistemas operativos, dígase Vista, o si quiero probar algún sistema operativo viejo, dígase Windows 2000, o mas interesante todavía me gusta investigar mucho en Linux, entonces que hacia antes, formateaba mi maquina instalaba lo que quería, obviamente respaldando todo antes, y rezando a que no pierda nada.


Bueno que hago ahora, me instalo VMWare Server, que es gratis, y me armo una nueva maquina virtual con el sistema operativo que me guste.




Es decir tengo mi XP sin tocarlo para nada, y en un programa (en este caso VMWare) tengo otro sistema operativo.




Que recursos tiene ese sistema operativo, bueno los que yo les de, pero obvio que son menos de los que tengo físicamente, a ver un ejemplo para entendernos, si tengo una maquina con 1GB de ram, a la maquina virtual le tengo que dar menos de 1GB, obviamente VMWare no me va a dejar asignarle todo, sino que va a sugerir 512 pro ejemplo. Lo mismo con los procesadores, si tu equipo tiene 2 núcleos, podes asignarle a la maquina 1 o 2.




¿Pero puedo tener una sola maquina virtual? No, puedo tener las que quiera, tantas como me deje el espacio en disco. Obvio que cada maquina virtual, me va a ocupar disco duro, y ocupa bastante, es decir ocupa lo mismo que ocupa el sistema operativo si lo instalara derecho en una maquina.




¿Pero como aparece el sistema operativo en la maquina virtual? Bueno eso tienes que hacerlo tu, es decir debes de instalar el sistema operativo, idéntico a como lo haces en un equipo común y corriente, y mejor, porque normalmente lo que hacemos es tenemos el cd y prendemos el equipo, arrancamos con el CD, etc. Bueno esto también lo hacemos en la maquina virtual, pero la ventaja que te da es que podes apuntar el CD de al maquina virtual a un imagen iso por ejemplo, entonces, si quiero instalar Ubuntu, me bajo el iso de Internet, luego en la maquina virtual apunto el cd a esta imagen y la inicio y voy a ver como empieza la instalación del sistema operativo.




Después de tener el sistema operativo, voy a poder hacer lo que yo quiera igual que en cualquier sistema operativo, navegar, chatear, jugar, etc.




Ahhh, una cosa que me preguntaron una vez, es si se podía instalar un juego que precisaba mucha tarjeta de video, la respuesta es nooo, es maravilloso pero no tanto, se pude jugar a algunos juegos, los que no consumen mucha tarjeta de video, como bien lo dijimos, la maquina es virtual, entonces la tarjeta de video es virtual, no es la misma que tu tienes en el equipo, pero pruébalo, no pierdes nada.




Otra cosa muy, pero muy interesante es que podes guardar una imagen de la maquina virtual en alguna momento y luego podes hacer las pruebas que quieras y si no te andan bien o no te gusta como queda, puedes volver a esa imagen, y todos los cambios se borraron.




Esto que les explique es en un equipo común y corriente, pero piensen en una empresa que precisa muchos servidores, y que hacían hace 5 años, compraban los n servidores, gastaban el precio de 1 equipo multiplicado por n. Que se puede hacer ahora, compran un equipo, pero un muy buen equipo y lo virtualizan, que es esto, bueno digámoslo así instalan vmware, y le crean las n maquinas virtuales. Que este equipo tiene que ser polenta polenta, en eso estamos de acuerdo pero se imaginan el administrar en vez de 10 equipos con el hardware disperso, y pasar a 1 solo, el espacio, etc. etc.




Bueno este es un primer encuentro con maquinas virtuales, lo único que les puedo aconsejar es que se bajen vmware y lo instalen y empiecen a jugar, y ya van a ver que le van a sacar provecho.




Volver al inicio






jueves, 19 de junio de 2008

Grant para acceder a mysql remotamente

Bueno, como dije en el post anterior, con comentar la línea





bind-address = 127.0.0.1



Con esto solo no vamos a poder acceder desde otro equipo a mysql, ¿Por qué?, bueno porque a mysql le tienes que decir que usuarios son los que pueden acceder de cualquier equipo, entonces lo que hay que hacer es a un usuario en particular darle permisos para que acceda desde tal o cual equipo, o desde todos.


Entonces en el equipo que tengamos el Server mysql accedemos por consola y digitamos lo siguiente


GRANT ALL PRIVILEGES ON *.* to root@"%" IDENTIFIED BY 'nuevo_password';


Con esto le decimos que el usuario root puede acceder desde cualquier equipo (con el %) con el pasword 'nuevo_password".


Después podemos jugar con el % y poner tal o cual equipo, pero eso lo dejo para que lo investiguen ustedes.



Nota: igual que antes si esto esta en producción, tener mucho cuidado de que hacemos, y otro "pique" es crear otro usuario y luego asignarle a este los derechos necesarios


Bueno este post ha sido corto pero no poco importante, espero que les sirva. Hasta la próxima.






Volver al inicio






miércoles, 18 de junio de 2008

Configurar my.cnf para acceso remoto



Acceder a mysql desde equipo que no sea donde esta instalado el server de mysql






Bueno como les dije acá van a tener "piques" para cosas que me pasan, o me pasaron en algún momento.




¿que es lo que preciso? lo que preciso es conectarme a hacer consultas mysql desde un equipo que no es donde esta instalado el servidor myslq, que en mi caso es un linux-ubuntu (que dicho sea de paso es el que mas me gusta) server.


En mi caso particular también, el equipo que esta instalado el server mysql es una maquina virtual con VmWare, entonces es todo en un mismo equipo pero digámoslo así, son 2 (que es una VmWare, maquina virtual, bueno eso va a ser otro post).


Para los que no sepan que quise decir con VmWare, no lean eso y léanlo como 2 equipos distinto, digamos mi equipo personal que puede tener windows, y un server que esta en otro lado.




Bueno primero obviamente en el linux debe de estar instalado el server mysql, entonces accedo a la carpeta donde esta el archivo de configuración de mysql, que en este caso es en la carpeta /eta/mysql, editamos este archivo y buscamos donde diga









bind-address = 127.0.0.1










y comentamos ese renglón, luego debemos de bajar y subir el myslq algo como










/ete/init.d/mysql restart










luego de esto desde el equipo Windows con el programa que mas les guste, yo uso el Browser de Mysql, ya van a poder acceder con algún usuario y contraseña que tengan de mysql.


Si por algún motivo no tiene un usuario que pueda acceder desde otro equipo deben de darle los privilegios necesarios en mysql, eso lo voy a contar también en otro post.




Nota: hay que tener cuidado con esto, es decir en un equipo que este en producción que pueda ser atacado por alguien, y no va a tener administración remota, nunca hagan esto.




Espero les sea claro y espero sus comentarios.