Usuaris a MySQL

De wikijoan
La revisió el 09:25, 23 feb 2022 per Joan (discussió | contribucions) (Es crea la pàgina amb «<pre> Hem de connectar-nos al docker com a root. Per saber quins usuaris hi ha a la base de dades: mysql> select User,Host from mysql.user; +------------------+---...».)
(dif) ← Versió més antiga | Versió actual (dif) | Versió més nova → (dif)
Salta a la navegació Salta a la cerca
Hem de connectar-nos al docker com a root.

Per saber quins usuaris hi ha a la base de dades:

mysql> select User,Host from mysql.user;  
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| alumne           | %         |
| alumne           | localhost |
| healthchecker    | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

mysql> create user joan@localhost identified by 'password';
mysql> exit

I ara podem reconnectar-nos al docker amb el nou usuari:

$ docker exec -it mysql_m02bd mysql -u joan -ppassword

Però aquest usuari encara no pot fer res. No pot veure totes les bases de dades que hi ha:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+

Tornem a l'usuari root, i creem la base de dades ''joandb'':

$ docker exec -it mysql_m02bd mysql -u root -p

mysql> create database joandb;
mysql> use joandb

I donem permisos a l'usuari joan per treballar amb aquesta nova base de dades:

mysql> grant all privileges on joandb.* to joan@localhost;
mysql> exit

$ docker exec -it mysql_m02bd mysql -u joan -ppassword

I ara sí que veiem la nova base de dades:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| joandb             |
+--------------------+

mysql> use joandb

i creem una taula en aquesta base de dades. Inserim dades i fem una select:

create table lists(
id int auto_increment primary key,
todo varchar(100) not null,
completed bool default false
);

insert into lists(todo) values('Learn MySQL');

select * from lists;

Resumint: l'usuari ''root'' ha creat una base dades nova, un usuari nou, i ha donat permisos a aquest usuari per treballar amb la base de dades. El nou usuari ja pot operar amb normalitat amb la nova base de dades (crear taules, fer inserts, fer selects).


creat per Joan Quintana Compte, febrer 2022