mysql. crear base de datos, usuario y asignar permisos

2
Mysql crear base de datos, usuario y asignar permisos Es bastante habitual que en desarrollo web o en cualquier otro tipo de aplicación que utilice una base de datos MySQL necesitemos crear una base de datos de acceso limitado. Una buena práctica para no evitar problemas de seguridad es, al mismo tiempo, crear un usuario que tendrá un acceso total pero limitado únicamente a esa BD. Podemos hacerlo con unas pocas instrucciones. Primero accedemos a nuestra base de datos con el usuario root: $ mysql -u root -p Seguidamente el sistema nos pedirá la contraseña del usuario root y si se la introducimos correctamente veremos la línea de comandos de la consola MySQL Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1213049 Server version: 5.0.96-0ubuntu3 (Ubuntu) Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> Antes de crear la base de datos puede que queramos echar un vistazo a las que ya tenemos para comprobar si usamos algún sistema de nombres. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | espais | | europa | | inventario | | mostrari | | mouton | | mua | | mysql | +--------------------+ El siguiente paso es crear la base de datos. Algo tan sencillo como: mysql> create database database_name; Query OK, 1 row affected (0.10 sec) La parte más sencilla de creación de base de datos ya está lista. Ahora crearemos un usuario que tenga derechos totales sobre la misma y que es el que utilizaremos en nuestra aplicación. En mi caso un Wordpress. mysql> create user tu_usuario identified by 'tu_password'; Query OK, 0 rows affected (0.13 sec) Este es el momento de apuntar tu usuario y contraseña. Luego no digas que se te ha pasado. Yo suelo usar una buena contraseña generada y almacenada con KeePass para Ubuntu. Para garantizar permisos totales sobre la base de datos recién creada al usuario el comando sería: mysql> grant all privileges on tu_base_de_datos.* to usuario; Query OK, 0 rows affected (0.00 sec) Ahora deberías salir y probar con tu nuevo usuario a crear/borrar una tabla: mysql> exit; Bye $ mysql -u usuario -p base_de_datos Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. . cuaderno del Viaje: Mysql crear base de datos, usuario y asignar permisos http://cuadernodelviaje.blogspot.com.ar/2013/03/mysql-crear-base-de-... 1 de 2 19/7/13 15:27

Upload: bhiex

Post on 02-Oct-2015

14 views

Category:

Documents


6 download

DESCRIPTION

Mysqul. Fuente: cuadernodelviaje.blogspot.com.ar

TRANSCRIPT

  • Mysql crear base de datos, usuario y asignar permisos

    Es bastante habitual que en desarrollo web o en cualquier otro tipo de aplicacin que

    utilice una base de datos MySQL necesitemos crear una base de datos de acceso limitado.

    Una buena prctica para no evitar problemas de seguridad es, al mismo tiempo, crear un

    usuario que tendr un acceso total pero limitado nicamente a esa BD.

    Podemos hacerlo con unas pocas instrucciones. Primero accedemos a nuestra base de datos

    con el usuario root:

    $ mysql -u root -p

    Seguidamente el sistema nos pedir la contrasea del usuario root y si se la introducimos

    correctamente veremos la lnea de comandos de la consola MySQL

    Welcome to the MySQL monitor. Commands end with ; or \g.

    Your MySQL connection id is 1213049

    Server version: 5.0.96-0ubuntu3 (Ubuntu)

    Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights

    reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its

    affiliates. Other names may be trademarks of their respective

    owners.

    Type 'help;' or '\h' for help. Type '\c' to clear the current input

    statement.

    mysql>

    Antes de crear la base de datos puede que queramos echar un vistazo a las que ya tenemos

    para comprobar si usamos algn sistema de nombres.

    mysql> show databases;

    +--------------------+

    | Database |

    +--------------------+

    | information_schema |

    | espais |

    | europa |

    | inventario |

    | mostrari |

    | mouton |

    | mua |

    | mysql |

    +--------------------+

    El siguiente paso es crear la base de datos. Algo tan sencillo como:

    mysql> create database database_name;

    Query OK, 1 row affected (0.10 sec)

    La parte ms sencilla de creacin de base de datos ya est lista. Ahora crearemos un

    usuario que tenga derechos totales sobre la misma y que es el que utilizaremos en nuestra

    aplicacin. En mi caso un Wordpress.

    mysql> create user tu_usuario identified by 'tu_password';

    Query OK, 0 rows affected (0.13 sec)

    Este es el momento de apuntar tu usuario y contrasea. Luego no digas que se te ha

    pasado. Yo suelo usar una buena contrasea generada y almacenada con KeePass para

    Ubuntu.

    Para garantizar permisos totales sobre la base de datos recin creada al usuario el

    comando sera:

    mysql> grant all privileges on tu_base_de_datos.* to usuario;

    Query OK, 0 rows affected (0.00 sec)

    Ahora deberas salir y probar con tu nuevo usuario a crear/borrar una tabla:

    mysql> exit;

    Bye

    $ mysql -u usuario -p base_de_datos

    Enter password:

    Welcome to the MySQL monitor. Commands end with ; or \g.

    .

    cuaderno del Viaje: Mysql crear base de datos, usuario y asignar permisos http://cuadernodelviaje.blogspot.com.ar/2013/03/mysql-crear-base-de-...

    1 de 2 19/7/13 15:27

  • $ mysql -u usuario -p base_de_datos

    Enter password:

    Welcome to the MySQL monitor. Commands end with ; or \g.

    .

    .

    .

    mysql> create table tb_prueba (id int);

    Query OK, 0 rows affected (0.03 sec)

    mysql> drop table tb_prueba;

    Query OK, 0 rows affected (0.00 sec)

    Si has podido llevar a cabo las operaciones anteriores. Tu usuario y base de datos estn

    listas para usar.

    cuaderno del Viaje: Mysql crear base de datos, usuario y asignar permisos http://cuadernodelviaje.blogspot.com.ar/2013/03/mysql-crear-base-de-...

    2 de 2 19/7/13 15:27