Назад | Перейти на главную страницу

Странное подключение к удаленной проблеме с базой данных mysql

Я могу подключиться к моей базе данных mysql через командную строку при указании точного IP:

 mysql -u root -p -h 172.31.110.55

Я использую AWS, но когда пытаюсь подключиться через DNS, я получаю такую ​​ошибку:

  $ mysql -u root -p -h ip-172-31-110-55.us-west-2.compute.internal
  ERROR 1045 (28000): Access denied for user 'root'@'ip-172-31-110-55.us-west-2.compute.internal' (using password: YES)

Я дважды проверил, правильно ли набираю пароль

mysql> SHOW GRANTS;
+---------------------------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@ip-172-31-110-55.us-west-2.compute.internal                                                                                            |
+---------------------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip-172-31-110-55.us-west-2.compute.internal' IDENTIFIED BY PASSWORD '****HASH_OF_PASSWORD****' |
+---------------------------------------------------------------------------------------------------------------------------------------------------------+

в чем может быть проблема? Я считаю, что это причина, по которой я также могу получить ошибку при попытке удаленного доступа к базе данных при использовании phpmyadmin

  MySQL said: 
 #1045 - Access denied for user 'root'@'ip-172-31-110-55.us-west-2.compute.internal' (using password: YES) 

мой файл конфигурации phpmyadmin:

/* Remote Server */
$i++;
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['host'] = 'myinstance.123456789012.us-east-1.rds.amazonaws.com';
$cfg['Servers'][$i]['verbose'] = 'Remote Server Name';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '**********'; 
$cfg['Servers'][$i]['hide_db'] = '^(mysql|performance_schema|innodb|information_schema)$';

Я решил проблему с phpmyadmin (это была основная проблема, с которой я столкнулся). Публикация исправления здесь для будущих поколений, потому что это было слишком долго, чтобы оставлять комментарии.

/* Remote Server */
$i++;
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = '172.31.110.55';
$cfg['Servers'][$i]['port'] = '3306';
$cfg['Servers'][$i]['verbose'] = 'Remote Server Name';
$cfg['Servers'][$i]['hide_db'] = '^(mysql|performance_schema|innodb|information_schema)$';

Я также сделал "mysqladmin -u root password 'newpassword'", не знаю, имеет ли это какое-либо отношение к этому.

Проблема с командной строкой все еще существует. Если у кого-нибудь есть подсказка, я буду рад проверить дальше.