Saludos a toda la gran comunidad de Linux users en T!.
En esta ocasión deseo compartir una alternativa muy particular para gestionar bases de datos y lo mejor, podemos hacerlo tanto en un servidor como solamente en localhost.
Antes de continuar aclaro que GNU/Linux es algo que incluye diversidad de distribuciones, hago esta aclaracion porque he visto que muchos users piensan que Linux es solo Ubuntu y se acabó, pero GNU/Linux son muchas distribuciones, y se que este punto disgusta a muchos usuarios de linux que participan activamente en la comunidad, en el presente post muestro informacion de distros basadas en Debian y Archlinux, esto porque solo en estas distros pude probarlo personalmente, pero anda en todas sin problemas.
Bueno, continuando con el contenido del post, phpMyAdmin es una interfaz web para manejar bases de datos mediante una manera facil de administrar MySQL. Actualmente puede crear y eliminar bases de datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 62 idiomas. Se encuentra disponible bajo la licencia GPL.
Ya que el uso de esta herramienta es muy sencilla, y no es necesario saber mucho de base de datos para utilizarla, solo muestro la instalacion y configuración en nuestro sistema operativo, pero tambien descaco que es multiplataforma y funciona en cualquier computadora con un server web.
Instalación y configuración:
En distros basadas en Debian:
#aptitude update
#aptitude install phpmyadmin
En Archlinux:
# pacman -S apache php php-apache mysql
# pacman -S phpmyadmin php-mcrypt
Distros basadas en Debian:
En distros basadas en Debian, con aptitude se instalan todas las dependencias necesarias, por lo tanto, no es necesario que despues de la instalacion se configuren cosas como apache, mysql, este proceso es muy logico y solo debemos dejarnos guiar por el asistente en semi interfaz texto el cual nos presentará las opciones y permitira realizar la configuracion en el momento mismo de la instalación.
Estos son algunos de las preferencias para el servidor que serán configuradas en dicho asistente:
*para este caso como se muestra la ilustracion, se debe elegir apache como wer server por defecto.
*en este caso se nos preguntará si deseamos configurar la base de datos para phpMyAdmin, en este caso seleccionamos que si, ya que si no lo hacemos asi, tocaría configurar algunos archivejos de texto.
*En este paso se nos preguntará la contraseña de root para mysql, no la del sistema. Debemos ingresar una contraseña en este punto para evitarnos perder el tiempo configurando algo que pudimos haber hecho en este momento.
*para este punto, en estos sistemas se crea un usuario por defecto llamado phpmyadmin, para no tener que loguarnos como root, en este momento debemos escribir una contraseña manualmente, ya que de lo contrario, se generara una automaticamente, y para ser sincero no se que pasaria con una contraseña asi.
Con esto deberiamos tenes a full nuestro phpmyadmin en distros basadas en Debian, ya sea Ubuntu, Linux Mint, etc...
La direccion para ingresar a phpMyAdmin seria esbribir en el url del navegador localhost/phpmyadmin
Si no logramos acceder a la web de login de phpMyAdmin y ya realizamos los pasos anterriores, por el error que dice que la dirección no puede ser encontrada en este server, ingresamos el comando:
echo "Include /etc/phpmyadmin/apache.conf" | sudo tee -a /etc/apache2/apache2.conf
* ventana de login de phpMyAdmin
Configuración en Archlinux:
En Archlinux básicamente los procedimientos son los mismos, exeptuando que las configuraciones no se realizan por medio de un asistente. Primero configuramos Apache, luego MySQL
Configuración de Apache:
Para no tener problemas al lanzar apache como demonio primero debemos editar el /etc/hosts
Y verificar que exista la linea:
127.0.0.1 localhost.localdomain localhost
Si no existe la creamos, y si hemos añadido un nombre a nuestro localhost, la linea debe quedar algo asi:
127.0.0.1 localhost.localdomain localhost mynamehost
Nuestro nombre del host podemos verlo en una terminal, al nomas abrirla, se muestra el nombre de usuario y el host, de esta manera pepe@hostdepepe
Para lanzar el daemon, usamos el comando:
# rc.d start httpd
Apache cuenta con muchas configuraciones, pero para phpMyAdmin solo es necesario configurar lo anterior.
Configuración de MySQL:
Acá en este punto tenemos una buena herramienta similar a lo que se muestra en otras distros, si lanzamos el demonio con la opcion secure installation, nos permite realizar las configuraciones basicas, el demonio en conjunto con el asistente se configuracion se lanza asi:
# rc.d start mysqld && mysql_secure_installation
*Para poner los demonios de Apache y MySQL debemos editar nuestro rc.conf y añadir esto en la parte de daemons (quedando similar a esto):
DAEMONS=(syslog-ng network crond mysqld httpd)
Configuración de phpMyAdmin
Primero copiamos el archivo de ejemplo de apache.example para phpmyadmin
cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf
Segundo, abrimos el httpd.conf que es el archivo de configuracion de apache en Arch, localizado en /etc/httpd/conf/httpd.conf y añadimos las siguientes lineas:
# phpMyAdmin configuration
Include conf/extra/httpd-phpmyadmin.conf
Tercer paso, abrimos el /etc/httpd/conf/httpd.conf y añadimos la linea:
LoadModule php5_module modules/libphp5.so
Teniendo el cuidado de agregarlo en la parte en donde se encuentran las demas lineas que dicen LoadModule
Como cuarto movimiento, realizaremos una modificación al /etc/webapps/phpmyadmin/.htaccess
El archivo debe quedar asi:
deny from all
allow from localhost
allow from 192.168.1.0/24
allow from ::1
*donde 192.168.1.0/24 es el ip local y /24 la mascara de red, en cada pc esta informacion cambia, siendo responsable cada uno de poner sus datos correctos, mediante el comando ifconfig pueden saber estos datos.
Como quinto paso, revisaremos el archivo /etc/httpd/conf/extra/httpd-phpmyadmin.conf que deberia tener esta informacion:
Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
AllowOverride All
Options FollowSymlinks
Order allow,deny
Allow from all
</Directory>
Y finalmente como ultimo paso, se realizará una edicion el archico /etc/php/php.ini
Buscamos la linea que dice open_basedir, editandola y dejandola asi:
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/srv/:/usr/share/webapps/:/etc/webapps/
Luego, buscamos la serie de lineas en donde aparecen las extensiones antesedidas de un punto y coma, y buscamos las siguientes lineas y las descomentamos (el archivo de php comenta con ; )
;extension=mcrypt.so
:extension=mysql.so
;extension=mysqli.so
Quedando asi finalmente:
extension=mcrypt.so
extension=mysql.so
extension=mysqli.so
Ahora con esta herramienta configurada, podemos crear y acceder a nuestra base de datos personal, teniendo la ventaja de poderlo realizar remotamente, con estas bases de datos podemos gestionar informacion relevante ya sea personal, de trabajo en para el estudio.