Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да разрешите отказан достъп за потребителя ‘root’@’localhost’ (използвайки парола:Да) Когато свържете MySQL база данни

Когато свързвам MySQL бази данни в изходен код, като Java код или Python код. Срещам грешка, която не срещам, когато използвам софтуер за клиентски инструмент MySQL, за да го свържа. Съобщението за грешка е Достъпът е отказан за потребителя ‘root’@’localhost’ (използвайки парола:Да) . Разрешаването на този проблем не е трудно, този пример ще ви каже как да го направите.

1. Причина за отказан достъп.

  1. Причината за този проблем е, че не предоставяте никакви глобални привилегии на потребителя.
  2. И така, след като предоставите избор глобална привилегия на потребителя, тогава проблемът ще бъде отстранен.

2. Как да предоставим привилегия за избор на база данни на MySQL на потребителя.

2.1 Предоставяне на привилегия на потребител чрез MySQL Workbench.

Ако използвате MySQL клиентски инструменти като MySQL Workbench за управление на MySQL база данни, следвайте стъпките по-долу.

2.1.1 Добавяне на глобални привилегии.
  1. Отворете MySQL Workbench, щракнете върху Потребители и привилегии елемент от менюто в левия панел.
  2. Щракнете върху името на потребителския акаунт в средния панел, след което щракнете върху Административни роли раздел в десния панел.
  3. След това проверете ИЗБИРАНЕ квадратче за отметка в Глобални привилегии площ.
  4. Щракнете върху Прилагане бутон, за да запазите промените.
2.1.2 Добавяне на привилегии за схема.
  1. Ако искате да изпълните SQL команда върху специална таблица със схема на база данни, тогава трябва да добавите свързани привилегии за схема на схемата (база данни) към потребителския акаунт.
  2. Отворете MySQL Workbench, след което щракнете върху Потребители и привилегии елемент от менюто в левия панел, след това щракнете върху потребителския акаунт в средния панел, след това щракнете върху Привилегии на схема раздел в десния панел.
  3. Щракнете върху Добавяне на запис бутон, за да отворите изскачащия прозорец за избор на схема, за да изберете желаната схема.
  4. След това поставете отметка в квадратчето за съответните права (например ИЗБОР ,ВМЪКНЕТЕ , АКТУАЛИЗИРАНЕ, и ИЗТРИВАНЕ квадратче за отметка), за да зададете привилегиите на потребителския акаунт.
  5. Щракнете върху Прилагане бутон, за да запазите промените.

2.2 Промяна на привилегията на потребителя чрез команден ред.

Ако искате да предоставите глобални или схематични привилегии на MySQL потребителски акаунт чрез команден ред, моля, следвайте стъпките по-долу.

2.2.1 Предоставяне на глобални привилегии на потребителски акаунт чрез команден ред.
  1. Отворете терминал и изпълнете командата по-долу.
    :~$ mysql -u root -p
    Enter password: 
    mysql> GRANT SELECT ON *.* TO 'jerry'@'localhost' WITH GRANT OPTION;
    Query OK, 0 rows affected (0.00 sec)
    
2.2.2 Предоставяне на специална схема привилегии на потребителски акаунт.
  1. Отворете терминала, стартирайте под командата.
    :~$ mysql -u root -p
    Enter password: 
    
    mysql> GRANT SELECT,UPDATE,INSERT,DELETE ON dev2qa_example.* TO 'jerry'@'localhost';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> GRANT ALL PRIVILEGES ON dev2qa_example.* TO 'jerry'@'localhost';
    Query OK, 0 rows affected (0.00 sec)

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да преименувате таблица в MySQL

  2. Как да конвертирате UTC в местно време в MySQL

  3. Работа с MySQL дати и времеви марки в Java

  4. Извличане на последния вмъкнат идентификатор с Mysql

  5. Агрегирана функция в MySQL - списък (като LISTAGG в Oracle)