Sunteți pe pagina 1din 2

MySQL

De Gua Ubuntu
MySQL es un gestor de bases de datos bastante popular y rpido. Normalmente lo puedes encontrar instalado en los sitios de hosting.

Tabla de contenidos
1 2 3 4 Instalacin Configuracin Conexin desde un host remoto Gestin de usuarios 4.1 Crear un usuario 4.2 Eliminar un usuario 4.3 Dar permisos a un usuario 4.4 Quitar permisos a un usuario 5 Gestin de las bases de datos 5.1 Crear una Base de datos 5.2 Eliminar una Base de datos 5.3 Hacer Backup de una Base de datos 5.4 Restaurar el Backup de una Base de datos 5.5 Recuperar la contrasea de ROOT del Servidor MySQL 6 Ver tambin 7 Enlaces externos

Instalacin
Para instalar MySQL, debes instalar los siguientes paquetes: mysql-server y mysql-client. Existe un entorno grfico del programa llamado mysql administrator, dependiente de los anteriores paquetes. Y opcionalmente el paquete 'mysqlquery-browser, que servir para realizar consultas.

Configuracin
Se te pedir crear la contrasea del administrador cuando se instale el programa. En versiones antiguas no se crea con la instalacin. Debemos crearla manualmente, nada ms instalar el servidor. Para hacerlo teclea en un Terminal.
$ sudo /usr/bin/mysqladmin -u root password clavenueva

Puedes cambiar el archivo /etc/mysql/my.cnf para configurar las opciones bsicas -- archivo de registro, nmero de puerto, etc. Mira al archivo /etc/mysql/my.cnf para ms detalles. Una vez asignada una contrasea al administrador, puedes conectar con el servidor mySQL de la manera siguiente:
$ mysql -h localhost -u root -p

Donde "localhost" s la direccin de tu host y "root" el nombre de usuario. A continuacin introduce el password de la base de datos. Te aparece la siguiente pantala:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 20 to server version: 5.0.24a-Debian_9ubuntu2-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

Para desconectar,
mysql> QUIT Bye

Conexin desde un host remoto


Por defecto, MySQL no permite que cualquier usuario puede acceder a las bases de datos usando un conexin TCP. Para que lo permita debes crear un usuario con los permisos correspondientes. Tambin tendrs que editar el fichero /etc/mysql/my.cnf y modificar la lnea:
bind-address = 127.0.0.1

Cambindola por la direccion IP del servidor, o en caso de que se quiera escuchar en todas las IPs:
bind-address = 0.0.0.0 o la IP que tengas en tu seridor si tienes IP fija

Despues reinicia el servicio.


shell>cd etc/init.d shell>./mysql restart

Para que todos los dems ordenadores tengan acceso al servidor. Para ms seguridad puedes poner solamente una lista de las IPs de los ordenadores que quieres que tengan acceso. Si an no te puedes conectar desde un ordenador remoto tendrs que editar el fichero /etc/hosts.allow y aadir la lnea:
mysqld: all

Gestin de usuarios
Crear un usuario
Para la creacin de usuarios tendremos que conectarnos al servidor MySQL (ver ms arriba) con un usuario que tenga el permiso global CREATE USER o el permiso INSERT para la base de datos mysql. La sintaxis es la siguiente:
CREATE USER usuario IDENTIFIED BY 'password';

Ms informacin en Sintaxis de CREATE USER (http://dev.mysql.com/doc/refman/5.0/es/create-user.html) .

Eliminar un usuario
El usuario que usemos en la conexin debe tener el permiso global CREATE USER o el permiso DELETE para la base de datos mysql. La sintaxis es la siguiente:
DROP USER usuario;

Ms informacin en Sintaxis de DROP USER (http://dev.mysql.com/doc/refman/5.0/es/drop-user.html) .

Dar permisos a un usuario


Los permisos pueden darse en varios niveles: Nivel global Nivel de base de datos Nivel de tabla La sintaxis es:
GRANT tipo_privilegio ON {nombre_tabla | * | *.* | nombre_bd.*} TO usuario;

As para dar el permito SELECT al usuario pepe sera:


GRANT SELECT ON *.* TO pepe;

Ms informacin en Sintaxis de GRANT y REVOKE (http://dev.mysql.com/doc/refman/5.0/es/grant.html) .

Quitar permisos a un usuario

La sintaxis es:
REVOKE tipo_privilegio ON {nombre_tabla | * | *.* | nombre_bd.*} FROM usuario;

Ms informacin en Sintaxis de GRANT y REVOKE (http://dev.mysql.com/doc/refman/5.0/es/grant.html) .

Gestin de las bases de datos


Crear una Base de datos
Para crear una base de datos nueva puedes hacerlo de, al menos, dos formas. Abre un Terminal y ejecuta lo siguiente.
$ mysql -h servidor -u usuario -p Enter password: mysql> CREATE DATABASE nombre_de_la_base_de_datos; quit

Ms informacin en Sintaxis de CREATE DATABASE (http://dev.mysql.com/doc/refman/5.0/es/create-database.html) . Tambin puedes usar la orden mysqladmin.
$ mysqladmin -h servidor -u usuario -p create nombre_de_la_base_de_datos

Eliminar una Base de datos


Para eliminar una base de datos que ya no es necesaria en el sistema tambin tenemos, al menos, dos mtodos. En un ventana de Terminal ejecuta.
$ mysql -h servidor -u usuario -p Enter password: mysql> DROP DATABASE nombre_de_la_base_de_datos; quit

Ms informacin en Sintaxis de DROP DATABASE (http://dev.mysql.com/doc/refman/5.0/es/drop-database.html) . Tambin puedes obtener el mismo resultado con el comando mysqladmin.
$ mysqladmin -h servidor -u usuario -p drop nombre_de_la_base_de_datos

Hacer Backup de una Base de datos


Para hacer una copia de seguridad de una base de datos tiene el siguiente comando:
$ mysqldump -h servidor -u usuario -p nombre_de_la_base_de_datos > backup.sql

Para hacer una copia de seguridad de las bases de datos MySQL de un servidor puedes usar el siguiente script:
#!/bin/bash ## BEGIN CONFIG ## HOST=localhost USER=usuario PASS=secreto BACKUP_DIR=Backup ## END CONFIG ## if [ ! -d $BACKUP_DIR ]; then mkdir -p $BACKUP_DIR fi # Backup de MySQL MYSQL_DBS=$(mysqlshow -h $HOST -u $USER -p$PASS | awk ' (NR > 2) && (/[a-zA-Z0-9]+[ ]+[|]/) && ( $0 !~ /mysql/) { print $2 }'); for DB in $MYSQL_DBS ; do echo "* Backuping MySQL data from $DB@$HOST..." mysqldump -h $HOST -u $USER -p$PASS $DB > $BACKUP_DIR/mysql_$DB.sql done

Restaurar el Backup de una Base de datos


Para restaurar una base de datos creada anteriormente ejecuta en un Terminal.
$ mysql -h servidor -u usuario -p nombre_de_la_base_de_datos < backup.sql

La base de datos nombre_de_la_base_de_datos debe existir en el sistema antes de restaurar el fichero backup.sql. Si no sabes como crear una base de datos lee Crear una Base de datos.

Recuperar la contrasea de ROOT del Servidor MySQL


Para recuperar,o mejor dicho resetear, la contrasea de ROOT del servidor MySQL se puede hacer lo siguiente:
$ /etc/init.d/mysql stop $ mysqld_safe --skip-grant-tables & $ mysql -u root mysql mysql> UPDATE user SET Password=PASSWORD('nueva_contrasea') WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> \q $ killall mysqld; $ /etc/init.d/mysql start

Ver tambin
PostgreSQL PhpMyAdmin

Enlaces externos
Gua rpida de administracin de MySQL (http://www.xtec.net/~acastan/textos/Administracion%20de%20MySQL.html) Como exportar una base de datos mysql 4.0 a mysql 4.1 sin perder los caracteres especiales (http://www.babilonics.com/node/1800) Convertir de Access a MySQL (Enlace corregido) (http://ubuntulife.wordpress.com/2007/05/10/importar-una-base-de-datos-access-con-kexi/) Migrar de Oracle a MySQL (Enlace corregido) (http://ubuntulife.wordpress.com/2007/04/20/migrar-de-oracle-a-mysql-empleando-mysql-migration-toolkit/) Obtenido de "http://www.guia-ubuntu.org/index.php?title=MySQL" Categora: Administracin del sistema
Esta pgina fue modificada por ltima vez el 04:27 18 oct 2011. Esta pgina ha sido visitada 315.762 veces. El contenido est disponible bajo los trminos de la Attribution-NonCom m ercial-ShareAlike 2.5 Poltica de proteccin de datos Acerca de Gua Ubuntu Aviso legal

S-ar putea să vă placă și