sql >> Database >  >> RDS >> Mysql

Toegang geweigerd fout van Java naar MySQL

De meest waarschijnlijke verklaring is dat de gebruiker niet is gedefinieerd in MySQL.

Merk op dat in MySQL een gebruiker wordt geïdentificeerd door ZOWEL de hostnaam (of IP-adres) waarmee de gebruiker verbinding maakt, EN de gebruikersnaam. (OPMERKING:een '%' kan worden gebruikt als jokerteken voor de hostnaam, om verbinding vanaf elke host mogelijk te maken, maar MySQL zal eerst zoeken naar een exacte overeenkomst en dan terugvallen op de jokerteken als er geen overeenkomst wordt gevonden.)

SELECT u.Host,
     , u.User
     , u.Password
  FROM mysql.user u
 WHERE u.User = 'buiud458_raklar'

We verwachten dat daar een rij is met de hostwaarde 'd24-36-33-148.home1.cgocable.net ', of een rij met een hostwaarde-jokerteken van '% '.

U kunt het wachtwoord dat u gebruikt vergelijken met de waarde die in de tabel is opgeslagen, met de PASWOORD-functie...

SELECT PASSWORD('mysecret') 

Elke [email protected] kunnen privileges worden verleend voor individuele databases.

SELECT d.Host
     , d.User
     , d.Db
  FROM mysql.db d
 WHERE d.User = 'buiud458_raklar'

De eenvoudigste manier om een ​​gebruiker met privileges op een database in te stellen:

CREATE USER 'buiud458_raklar'@'d24-36-33-148.home1.cgocable.net' IDENTIFIED BY 'secret' ;
GRANT ALL PRIVILEGES ON mydb.* TO  'buiud458_raklar'@'d24-36-33-148.home1.cgocable.net' ;

(OPMERKING:het verlenen van alle privileges aan een gebruiker schendt doorgaans het best-practice-principe van "minste privilege". Deze gebruiker heeft mogelijk niet alle privileges nodig, bijvoorbeeld DROP TABLE-privilege. Het onnodig verlenen van privileges is een extra beveiligingsrisico.)

http://dev.mysql.com/doc/refman /5.5/en/adding-users.html



  1. Alles selecteren behalve de laatste rij

  2. SQL-query om de primaire sleutel van een tabel te vinden?

  3. controleveld in mijn sql

  4. Openshift:hoe krijg ik op afstand toegang tot MySQL?