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

Как да коригирате ГРЕШКА 1130 (HY000):На хоста не е разрешено да се свърже с този MySQL сървър

В тази кратка статия ще научите как да разрешите „ГРЕШКА 1130 (HY000):Хост x.x.x.x не е разрешен да се свързва с този MySQL сървър ” грешка в разгръщането на база данни на MySQL/MariaDB в Linux система. Това е една от често срещаните грешки при свързване с отдалечена база данни, срещани от потребителите.

Тестова среда:

  • IP на сървъра на приложения :10.24.96.5
  • IP сървър на база данни :10.24.96.6

Срещнахме грешката при тестване на връзката с база данни от един от нашите сървъри на приложения към сървър на база данни, използвайки mysql клиент, както е показано.

# mysql -u database_username -p -h 10.24.96.6

Грешката показва, че хостът 10.24.96.5 от който потребителят на базата данни се свързва, няма право да се свързва с MySQL сървъра. В този случай трябва да направим някои промени в сървъра на базата данни, за да позволим на потребителя да се свърже отдалечено.

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

# mysql -u root -p

Изпълнете следните SQL команди, за да проверите хоста на потребителя:

MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

От изхода на командата на потребителя е позволено да се свърже със сървъра на базата данни само от localhost . И така, трябва да актуализираме хостовете на потребителя, както следва.

Изпълнете следния GRANT команда, за да разрешите достъпа до MySQL за отдалечения потребител от отдалечен хост. Не забравяйте да замените „10.24.96.6 ” с IP адреса на отдалечената система и „база_парола ” към паролата, която искате „database_username ”, за да използвате:

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.5' IDENTIFIED BY 'database_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

За да предоставите на потребител отдалечен достъп от всички хостове в мрежата, използвайте синтаксиса по-долу:

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.%' IDENTIFIED BY 'database_password';

След като направите горните промени, опитайте да се свържете отдалечено със сървъра на базата данни MySQL още веднъж. Връзката трябва да е успешна, както е показано на следната екранна снимка.

# mysql -u database_username -p -h 10.24.96.6

Надяваме се, че това решение ви е помогнало при решаването на вашата грешка в отдалечената връзка с Mysql. Ако имате някакви въпроси, свържете се с нас чрез формата за обратна връзка по-долу.


  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 Workbench

  2. Функция MySQL TRUNCATE() – съкращаване на число до определен брой десетични знаци

  3. Намерете най-близката географска ширина/дължина с SQL заявка

  4. Защо MySQL autoincrement се увеличава при неуспешни вмъквания?

  5. Как да разположите Percona XtraDB Cluster 8 за висока наличност