# mysql survival kit
#### ... o com començar a treballar de manera elegant amb mysql en entorn client-servidor
### 0) SERVER - descarregar a /tmp el fitxer de creació i població de la bbdd.
```
wget https://raw.githubusercontent.com/nayosx/Northwind/master/Northwind.MySQL5.sql -O /tmp/nw.sql
```
### 1) SERVER - instal·lar si cal mysql
```
sudo apt install -y mysql-server
```
### 2) SERVER - iniciar amb password: (sí, va tot junt) :cat:
```
sudo mysql -pAsdfg1234%
```
### 3) SERVER - mostrar les bbdd actuals
```
show databases;
```
### 4) SERVER - sortir i crear i poblar la bbdd
```
sudo mysql -pAsdfg1234% -e 'source /tmp/nw.sql'
```
### 5) SERVER - comprovar que tot està correcte
```
sudo mysql -pAsdfg1234% -e 'show databases'
```
### 6) SERVER - modificar el fitxer de configuració del server pq accepte peticions remotes
```
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# fer els canvis següents
bind-address = 0.0.0.0
mysqlx-bind-address = 0.0.0.0
##bind-address = 127.0.0.1,10.35.159.30
##mysqlx-bind-address = 127.0.0.1,10.35.159.30
```
### 7) SERVER - aplicar canvis
```
sudo systemctl restart mysql
```
### 8)***!! AL CLIENT !!*** - configurar el client per no haver de posar la password
```
mysql_config_editor set --login-path=lxc3 --host=10.35.159.113 --user=joan2 --password
```
**PD: comporvar que s'està al home directory :+1:**
### 9) SERVER - crear el compte amb el que accedir (millor si no accedeixes amb el meu nom :smile: )
```
CREATE USER 'joan2'@'10.35.159.%' IDENTIFIED WITH mysql_native_password BY 'Qwerty1234%';
GRANT ALL PRIVILEGES ON *.* TO 'joan2'@'10.35.159.%';
FLUSH PRIVILEGES;
```
### 10) ***!! AL CLIENT !!*** - ja posats... (crear un alias)
```
alias my2='mysql --login-path=lxc3 northwind'
my2 -e 'select * from Orders;'
```
**NOTA: el login-path és el perfil (per si tens diversos) per accedir al servidor de bases de dades**
### links de referència
(9) https://www.digitalocean.com/community/tutorials/how-to-allow-remote-access-to-mysql
(6) https://phoenixnap.com/kb/mysql-remote-connection
(0) https://raw.githubusercontent.com/nayosx/Northwind/master/Northwind.MySQL5.sql
(0) https://github.com/nayosx/Northwind
(8) https://www.prisma.io/dataguide/mysql/tools/mysql-config-editor
# BONUS
## Xuletillas :heart_eyes_cat:
https://quickref.me/mysql
(9**) https://devhints.io/mysql