sql >> Database >  >> RDS >> Mysql

MySQL-roottoegang vanaf alle hosts

Bijwerken:

Zoals vermeld in de opmerkingen, moet je sinds MySql 8 eerst de gebruiker expliciet maken, dus de opdracht ziet er als volgt uit:

CREATE USER 'root'@'%' IDENTIFIED BY 'root'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

Oorspronkelijke antwoord:

Er zijn twee stappen in dat proces:

a) Verleen privileges. Als rootgebruiker voer je dit uit door 'password' . te vervangen met je huidige root-wachtwoord:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';

b) binden aan alle adressen:

De gemakkelijkste manier is om commentaar te geven de regel in uw my.cnf bestand:

#bind-address = 127.0.0.1 

en herstart mysql

service mysql restart

Standaard bindt het alleen aan localhost, maar als je commentaar geeft op de regel, bindt het aan alle interfaces die het vindt. Het weglaten van de regel is gelijk aan bind-address=* .

Om te controleren waar de mysql-service is gebonden, voert u het uit als root:

netstat -tupan | grep mysql

Update voor Ubuntu 16:

Configuratiebestand is (nu)

/etc/mysql/mysql.conf.d/mysqld.cnf 

(tenminste op standaard Ubuntu 16)



  1. Hoe kan ik meer dan 1 record per dag selecteren?

  2. FILEGROUPPROPERTY() gebruiken in SQL Server

  3. PreparedStatement en setTimestamp in oracle jdbc

  4. SQLite-index