Я не могу соединиться со своим локальным SQL-сервером от DataGrip. Но это хорошо работает непосредственно от терминала.
Кто-либо, который видит то, что я делаю неправильно?
Я не установил пароля, и я попробовал и без пароля и с моим паролем пользователя Ubuntu.
Я получаю эту ошибку При попытке соединиться от DataGrip:
The specified user/password combination is rejected: [28000][1698] Access denied for user 'root'@'localhost
Это хорошо работает от терминала как это:
jeggy@jeggy-Lenovo-Z50-70:~$ sudo mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 5.7.16-0ubuntu0.16.04.1 (Ubuntu)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0,00 sec)
Пользователи Mysql являются предоставленным доступом на основе того, куда соединение прибывает из. По умолчанию корневой доступ ограничивается:
Программа, которую Вы используете для подключения, не является самим indentifying как 127.0.0.1 или localhost. Необходимо будет проверить доступ IP, он определяется как, затем добавьте это к таблице предоставления.
Вы можете также, альтернативно (очень небезопасный, и должен только использоваться для тестирования, и проверить программу будет работать, зная надлежащий IP), предоставляют доступ к любому IP путем добавления % к таблице предоставления для корня. Это может, по крайней мере, быть временным доступом, в то время как Вы работаете для идентификации IP-адреса, используемого для доступа.
Это изменения команды для предоставления IP-адреса:
mysql> GRANT ALL ON *.* TO 'root'@'computer.host.com';
mysql> GRANT ALL ON *.* TO 'root'@'192.168.1.101';
mysql> GRANT ALL ON *.* TO 'root'@'%';
Важный!
Подстановочный знак % не должен использоваться, специально для root
. Это упоминается для получения информации и тестирования только. Это заставило бы Ваш компьютер стать уязвимым для любого компьютерного хакера отовсюду в мире.
Для безопасности Вы могли бы полагать, что установка другого имени от корня предоставила этот доступ к и оставила фактического пользователя root более ограниченным туда, где связи могут быть установлены.
Вам также, вероятно, придется прокомментировать bind-address = 127.0.0.1
конфигурация в Вашем my.cnf файле.
Кроме того, от Phpmyadmin выполняют эти шаги:
Phpmyadmin -> (click) Users -> Add user -> (For the user root Click on) Edit Privileges -> (Scroll to) Host -> (Type in the desired IP address) -> (click) Go.
Обновление:
Проблема OP была разрешена (через чат) путем установки пароля на Mysql. Это было первоначально установлено с пустым паролем. Именно поэтому единственный способ получить доступ к mysql состоял в том, чтобы использовать sudo
. После надлежащего добавления пароля к mysql доступ, работавший значением по умолчанию с помощью значения по умолчанию localhost/127.0.0.1 для доступа и приложения Datagrip.