Domanda

ho ancora giocare con il mio DB cercando di imparare e ho visto questo:

entrare descrizione dell'immagine qui

  1. ho potuto cambiare la password di root senza alcun problema a tutti ... Se io sono nel server posso creare un algoritmo per iniziare a testare la password e e un giorno troverò, voglio dire:

    Web-Services-iMac-2:~ jbolivar$ mysqladmin -utest1 -p**SOME_THING_HERE** password test1.

  2. è ok per cambiare la password utilizzando questo ???:

    tabella di aggiornamento password impostata mysql.user = PASSWORD ( 'test') dove utente = 'test1';

accanto che se creo una tabella dizionario (una tabella con tutte le parole possibili) e applicare PASSWORD ( "parola") Posso fare un join e trovare il valore di qualsiasi passo, giusto ?. Mi puoi dare la tua opinione circa la mia analisi?

È stato utile?

Soluzione

Prima di continuare a giocare con mysqladmin, è necessario assicurarsi che l'installazione non è intenzionalmente in palio l'accesso.

Per cominciare, si può accedere a MySQL come questo?

# mysql <hit enter>

Se si può ottenere così, eseguire questo comando:

SELECT USER(),CURRENT_USER();

Se CURRENT_USER () restituiscono un utente e host su cui l'utente è vuota, poi si era permesso come utente anonimo. A quel punto, è possibile rimuovere anonymou utenti con questo:

DELETE FROM mysql.user WHERE user='';
FLUSH PRIVILEGES;

Ora, trovare tutti gli utenti con nessuna password con questo:

SELECT user,host,password FROM mysql.user;

Se tutti gli utenti non hanno alcuna password, è possibile emettere nuove password per utente che utilizza mysqladmin o si può solo assegnare loro come segue:

UPDATE mysql.user SET password=PASSWORD('whateverpassword') WHERE user='...' AND host='...';
FLUSH PRIVILEGES;

Ora, verificare la presenza di utenti remoti

SELECT user,host FROM mysql.user WHERE host='%';

Se si vede alcuna, eseguire questo:

DELETE FROM mysql.user WHERE host='%';
FLUSH PRIVILEGES;

Assicurarsi che quando tutto è detto e fatto che almeno root @ localhost e / o esistono root@127.0.0.1 e avere una password

SELECT user,host,password FROM mysql.user WHERE user='root';

I probabilmente potrebbe andare avanti. Qui ci sono altri posti che ho di cose come questa:

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top