Questo articolo spiega MySQL e come gestire utenti e database nello strumento.
Cos'è MySQL?
I database sono raccolte organizzate di dati. Puoi usarli per archiviare dati puri come informazioni sulla carta di credito, ID prodotto, prezzi, elenchi di cose e così via. Tuttavia, non memorizzeresti cose più complesse come immagini, file o documenti. Se aiuta, è un po' come Microsoft®, Excel® in cui si copiano solo i dati grezzi per essere archiviati, elaborati o recuperati in seguito. E MySQL® è un tipo di database Linux® molto comunemente usato.
MySQL contro MariaDB
Potresti aver installato MySQL, ma sembra che si chiami MariaDB®. Quando Oracle® ha acquisito MySQL nel 2010, i fondatori originali hanno quindi creato MariaDB come sostituto simile nel caso Oracle avesse interrotto MySQL. Quindi MySQL e MariaDB sono in gran parte uguali e intercambiabili. Le informazioni in questo articolo si applicano a entrambi.
Controlla la versione
Esegui il comando seguente per verificare la versione del database:
# mysql -v
Accedi
Accedi al tuo database utilizzando uno dei seguenti metodi:
Metodo 1:SSH come root, quindi accedi a MySQL
Se questa è già l'opzione predefinita, considera di lasciarla da sola. In caso contrario, crea il seguente file con l'editor di testo scelto:
# vim /root/.my.cnf
[client]
user=root
password=<password>
O se preferisci, puoi invece crearlo con:
# echo -e "\n[client]\nuser=root\npassword=<PASSWORD>" >> /root/.my.cnf
SecureShell (SSH) nel tuo server come root
e accedi a MySQL eseguendo il comando seguente:
# mysql
Metodo 2:SSH al server, quindi accedi a MySQL
Se prima esegui l'SSH nel tuo server, il tuo utente si connette a MySQL da localhost
perché sei già sulla macchina con MySQL.
Accedi da localhost eseguendo il comando seguente:
# mysql -u <USER> -p
Metodo 3:connessione diretta a MySQL
Se vuoi connetterti direttamente a MySQL dal tuo computer, hai bisogno del nome host o dell'indirizzo IP del server MySQL. Quindi, esegui il comando seguente:
# mysql -h <HOSTNAME_OR_IP> -u <USER> -p
Caratteri jolly in MySQL
Nel software, un carattere jolly è una specie di segnaposto rappresentato da un asterisco (*). Questo *
può significare qualsiasi combinazione di lettere/numeri/simboli, quindi potresti rappresentare "12345" come 1* or *3* or *5
. Ad esempio, se vuoi trovare un nome che inizi con la lettera M, puoi cercare M*
.
In MySQL, il carattere jolly è un simbolo di percentuale (%).
Ad esempio, eseguire il comando seguente per cercare tutti i database che terminano con la parola schema :
> show databases like "%schema";
Comandi MySQL comuni
Questi sono alcuni comandi MySQL comuni:
Nota: Termina tutti i comandi MySQL con un punto e virgola (; ).
Elenca database:
> show databases;
Crea un database:
> create database <DATABASE>;
Elimina un database:
> drop database <DATABASE>;
Comandi comuni relativi agli utenti
Tutti gli utenti si connettono da qualche parte. Se gli host vengono visualizzati come localhost , si sono collegati prima al server e poi a MySQL. Se viene visualizzato come indirizzo IP, sono collegati direttamente a MySQL.
Mostra utenti DB:
> select user, host from mysql.user;
Mostra utenti DB e password crittografate:
> select user, host, password from mysql.user;
Crea utente con autorizzazioni complete:
> grant all on *.* to sher@localhost identified by "sdF5";
Questo può essere per localhost, indirizzo IP o % ovunque (cosa sconsigliata):
> grant all on *.* to [email protected] identified by "sdF5";
Rinomina utente o cambia host:
> rename user user@ip1 to user@ip2;
Aggiorna:
> flush privileges;
Comandi per privilegi, concessioni e autorizzazioni
In MySQL, le solite regole di lettura, scrittura ed esecuzione basate su Linux non si applicano. Invece, assegni le autorizzazioni agli utenti come privilegi o sovvenzioni , che è molto più granulare e specifico. Le sezioni seguenti mostrano alcuni esempi:
Mostra concessioni utente:
> show grants for '<user>'@<localhost/IP>;
Aggiungi concessioni utente:
> GRANT SELECT,INSERT,UPDATE on <database>.* to <user>@<localhost/IP>;
Rimuovi tutte le concessioni utente:
> revoke ALL on *.* from <user>@<localhost/IP>;
Crea un database e aggiungi l'utente per esso (lettura/scrittura significa tutto):
> create database dbase;
> grant all on dbase.* to <user>@<localhost/IP> identified by 'passwd';
Concessioni
L'elenco seguente mostra alcune delle sovvenzioni MySQL comuni:
- TUTTI I PRIVILEGI :Tutti gli accessi (a DB specifico/tutto)
- CREA :Crea nuove tabelle/DB
- DROP :Elimina tabelle/DB
- ELIMINA :elimina le righe dalle tabelle
- INSERIRE :inserisci le righe nelle tabelle
- SELEZIONA :Utilizzare il comando Seleziona per leggere i DB (sola lettura)
- AGGIORNAMENTO :aggiorna le righe della tabella
- UTILIZZO :Nessun privilegio, predefinito
- OPZIONE DI CONCESSIONE :Concedi o rimuovi i privilegi di altri utenti
- CRUD :crea, leggi, aggiorna, elimina
Utilizza la scheda Feedback per inserire commenti o porre domande. Puoi anche iniziare una conversazione con noi.