jueves, 28 de mayo de 2015

Comandos MySQL para la Administracion de bases de datos

Mysqladmin es una utilidad de la linea de comandos que viene incorporada con MySQL Server y es usada por los administradores de bases de datos para realizar algunas tareas basicas como por ejemplo configurar el password del super-usuario (root), cambiarlo, monitorear procesos de MySQL, refrescar privilegios, chqeuqear el estado del servidor, etc. 

En este articulo, resumimos algunos comandos para mysqladmin muy utiles, los mismos utilizados en el dia a dia por los administradores de sistemas y bases de datos. 
Para poder probar los comandos, es necesario tener instalado el servidor de MySQL. 


1 - Configurar el password de root 

Si hacemos una instalacion de MySQL, veremos que no reuqerira password para conectar, por tanto configuramos uno con el siguiente comando: 

#mysqladmin -u root password PASSWORD_ELEGIDO

2 - Cambiar el password de root 

Si necesitamos actualizar el password de root en MySQL, entonces ejecutamos el siguiente comando. 
Por ejemplo, decimos que el password antiguo es 123456 y lo queremos actualizar a xyz123. 

#mysqladmin -u root -p123456 password 'xyz123'

3 - Chequear que el servidor MySQL esta activo 

Para constatar esto, ejecutamos lo suiguiente. 

#mysqladmin -u wikiusuario -p ping

4 - Chequear que version de MySQL se esta ejecutando 

El siguiente comando muestra la version de MySQL que estamos ejecutando.

# mysqladmin -u root -p version

5 - Como conocer el estado actual del servidor 

Ejecutando este comando, nos muestra el estado actual, uptime (tiempo encendido), threads (hilos de procesos), y queries (cantidad de consultas). 

#mysqladmin -u root -ptmppassword status

6 - Chequear el estado de las variables del servidor y sus valores 

Para chequear estos datos, ejecutamos lo siguiente. 

# mysqladmin -u root -p extended-status

7 - Chequear el estado de todas las variables del servidor MySQL 

Para conocer todas las varialbes activas del servidor y sus valores, ejecutamos lo suiguiente.

# mysqladmin  -u root -p variables

8 - Ver todos los procesos que ejecuta el servidor MySQL 

El siguiente comando los muestra. 

# mysqladmin -u root -p processlist

9 - Como crear una base de datos 

Para crear una base de datos nueva, ejecutamos.

# mysqladmin -u root -p create databasename

10 - Borrar una base de datos existente 

Ejecutando el siguiente comando podra ser borrada, antes preguntara confirmación. 

# mysqladmin -u root -p drop databasename

11 - Recargar/Refrescar los privilegios MySQL 

Este comando recarga los privilegios, reabre logs entre otros. 

# mysqladmin -u root -p reload;

# mysqladmin -u root -p refresh

12 - Apagar de forma segura el servidor MySQL
Ejecutamos lo suiguiente. 

#mysqladmin -u root -p shutdown

Podemos tambien usar los suiguientes comandos. 

# /etc/init.d/mysqld stop

# /etc/init.d/mysqld start

13 - Algunos comandos útiles para refrescar datos en MySQL 

flush-hosts: Refresca toda la información del cache que hostea MySQL. 
flush-tables: Refresca todas las tablas. 
flush-threads: Refresca los hilos de ejecución. 
flush-logs: Refresca todos los logs de información. 
flush-privileges: Recarga las tablas de privilegios (lo mismo que recargar). 
flush-status: Limpia el estado de las variables. 

# mysqladmin -u root -p flush-hosts

# mysqladmin -u root -p flush-tables

# mysqladmin -u root -p flush-threads

# mysqladmin -u root -p flush-logs

# mysqladmin -u root -p flush-privileges

# mysqladmin -u root -p flush-status

14 - Matar un proceso cliente dormido 

Ejecutando lo siguiente. 

# mysqladmin -u root -p processlist

Entonces ejecutamos el siguiente comando. 

# mysqladmin -u root -p kill 5

Si se necesita matar varios procesos, entonces le pasamos los ID's separados por comas. 

# mysqladmin -u root -p kill 5,10

15 - Ejecutar varios comandos en una sola linea 

Para hacerlo, deberían verse de la siguiente manera.

# mysqladmin  -u root -p processlist status version

16 - Conectar a un servidor remoto 

Usamos el parametro -h (host) con la direccion IP. 

# mysqladmin  -h 172.16.25.126 -u root -p

17 - Ejecutar un comando en un servidor remoto 

Por ejemplo para ver el estado del mismo. 

# mysqladmin  -h 172.16.25.126 -u root -p status

18 - Iniciar/parar replica en un servidor remoto

Para iniciar o parar una replica, utilizamos los siguientes comandos. 

# mysqladmin  -u root -p start-slave

# mysqladmin  -u root -p stop-slave

19 - Guardar informacion de debug en los logs 

Información de memoria, entre otros. 

# mysqladmin  -u root -p debug

20 - Ver y conocer las opciones de uso de mysqladmin 

Informacion sobre mysqladmin, parametros extras. 

# mysqladmin --help



miércoles, 13 de mayo de 2015

Aplicación para cambiar fondo de pantalla en estaciones de trabajo

Instalación de Gbackgroundweb 


Una aplicación que sirve para realizar cambios de los fondos de pantalla en todos los equipos (clientes) de una red, antes configurando un servidor y colocando la imagen de su preferencia.

Se requiere.
- Servidor web (apache)
- Las imagnes de su preferencia
- Los clientes
- El paquete .deb de la aplicación gbackgroundweb

Configuración del Servidor apache

Se requiere.
- Servidor web (apache)
- Las imagnes de su preferencia

La configuración del servidor apache la puedes observar en este link :
- http://kimberling146.blogspot.com/2013/10/instalacion-de-un-servidor-web.html

Una vez configurado el servidor se realiza lo siguiente:

Se crea la carpeta en el servidor:
- cd /var/www
- mkdir fondos

Luego se le dan los permisos necesarios:
- chmod -R 777 fondos

Luego colocar en la carpeta fondos la imagen de su preferencia en formato .PNG

Configuración del Cliente

Se requiere.
- Los clientes
- El paquete .deb de la aplicación gbackgroundweb 

Link de Descarga del paquete:
-http://descargas.canaima.softwarelibre.gob.ve/gbackgroundweb_1.6_all.deb
-http://descargas.canaima.softwarelibre.gob.ve/gbackgroundweb_2.0-1_all.deb

Una vez descargado se procede a la instalación del .deb botón contrario del mouse -> abrir con instalador de paquetes GDebi, una vez instalado se procede a realizar la configuración de la aplicación en el cliente.

Editar el archivo /usr/share/gbackground-web/gbackground_web.glade de la siguiente forma:
Buscar la línea que dice "<property name="text" translatable="yes">http://ip_del_servidor/fondo/nombre-de-la-imagen.png</property>".
Se debe cambiar la dirección web http://ip_del_servidor/fondo/nombre-de-la-imagen.png por la dirección de su preferencia.

Una vez configurado ese archivo buscamos la aplicación y configuramos los mismos datos que colocamos en el archivo en el recuadro que dice dirección Web y luego colocar Rellenar la Pantalla en Opciones de Fondo, por ultimo darle aceptar.

http://ip_del_servidor/fondo/nombre-de-la-imagen.png


Cada vez que desee cambiar el fondo de pantalla de todos los clientes solo debe cambiar la imagen en el servidor y colocarle el mismo nombre con su respectiva extensión imagen.png


lunes, 4 de mayo de 2015

Gestionando paquetes ¿apt-get o aptitude?


APT
APT se utiliza básicamente para la instalación y desinstalación de paquetes en sistemas GNU/Linux basados en Debian desde los repositorios (sources.list). Su uso mas común es apt-get.

Los cuatro comandos más usados son: install, remove, update y upgrade. Aquí tienes una explicación detallada de todos los comandos de apt-get:

apt-get update - Descarga nuevas listas de paquetes
apt-get upgrade - Realiza una actualización
apt-get install - Instala nuevos paquetes
apt-get remove - Elimina paquetes
apt-get source - Descarga archivos fuente
apt-get build-dep - Configura las dependencias de construcción para paquetes fuente
apt-get dist-upgrade - Actualiza la distribución
apt-get dselect-upgrade - Sigue las selecciones de dselect
apt-get clean - Elimina los archivos descargados
apt-get autoclean - Elimina los archivos descargados antiguos
apt-get check - Verifica que no haya dependencias incumplidas

Apt-get trabaja muy bien identificando qué dependencias necesitan ser instaladas para que funcione un paquete determinado, pero falla miserablemente a la hora de eliminar dicho paquete.

Aptitude
Aptitude es una herramienta mejor para instalar, eliminar, actualizar, y administrar de otras formas los paquetes en tu sistema que apt. Para empezar, desde sus comienzos, aptitude ha sido capaz de resolver el problema de las dependencias huérfanas. En segundo lugar, tiene una interfaz basada en curses que supera totalmente a la de dselect. Finalmente, y no menos importante, usa una sola herramienta con muchas funciones. Veamos:

aptitude: Al ejecutarlo sin argumentos muestra una interfaz para buscar, navegar, instalar, actualizar y realizar otras tareas de administración de paquetes.
aptitude install: Instala software en tu sistema, junto con las dependencias necesarias.
aptitude remove: Elimina paquetes junto con las dependencias que queden huérfanas.
aptitude purge: Elimina paquetes y dependencias huérfanas junto con los ficheros de configuración.
aptitude search: Busca paquetes en las listas de paquetes locales de apt.
aptitude update: Actualiza las listas de paquetes locales.
aptitude upgrade: Actualiza los paquetes disponibles.
aptitude clean: Elimina los ficheros que fué necesario descargar para instalar software en tu sistema.
aptitude dist-upgrade: Actualiza paquetes, incluso si eso significa que debe desinstalar otros.
aptitude show: Muestra detalles acerca del paquete nombrado.
aptitude autoclean: Elimina los paquetes deb obsoletos.
aptitude hold: Fuerza a que un paquete permanezca en su versión actual, y no se actualice.
Pero aptitude tiene otras ventajas respecto a su predecesor, apt:

Al buscar un paquete con aptitude, los resultados aparecen ordenados alfabéticamente y justificados por columnas; también te dirá cuales están instalados en tu sistema, en lugar de darte un listado de paquetes en un formato desordenado e ilegible, como hace apt-cache.

Y eso no es todo: los paquetes que apt-get te recomendaba y sugería, aptitude los instala directamente, siempre avisándote, obviamente.