Значение по умолчанию ssh_config
должен автоматически установить IPQoS
соответственно для интерактивного по сравнению с неинтерактивными вызовами.
Просто удостоверьтесь, что Вы повинуетесь тем опциям IP в своем конфигурировании стратегии формирования трафика.
Вы можете проверить одну вещь (которая требует входа в консоль MySQL) - убедитесь, что у вас есть разрешения для входа в root
через localhost
.
mysql -h 127.0.0.1 -u root -p
- После того, как вы успешно вошли в систему -
mysql> select user,host from mysql.user;
+------+--------------------------------+
| user | host |
+------+--------------------------------+
| root | 127.0.0.1 |
| root | ::1 |
| root | localhost | <-- Make sure you have a localhost entry for root
+------+--------------------------------+
3 rows in set (0.00 sec)
Просто выбросьте его туда, на всякий случай, в чем проблема .
Странность большинства клиентов MySQL состоит в том, что если вы указываете хост как localhost
, они присваивают ему псевдоним сокет-соединения вместо TCP-соединения. У вас есть варианты: либо придерживаться 127.0.0.1
, либо, если клиент поддерживает его (как двоичный файл командной строки mysql с флагом - protocol
), принудительно использовать TCP вместо сокета unix.
Вы можете проверить разрешение, например this:
[learner@localhost ~]$ sudo netstat -npa | grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 6284/mysqld
unix 2 [ ACC ] STREAM LISTENING 233040 6284/mysqld /var/lib/mysql/mysql.sock
Если он прослушивает 0 0.0.0.0:*, это означает, что каждый может получить доступ к этой mysql.
вы можете редактировать привязку для этого в файле my.conf. В Linux путь по умолчанию для этого:
[learner@localhost ~]$ sudo vi /etc/my.cnf
Добавьте эти строки в файл my.conf, чтобы разрешить нужный IP-адрес.
bind-address = 127.0.0.1
bind-address = 0.0.0.0
Следует отметить, что если гранты верны, это то, что при использовании MariaDB произошла ошибка, которая вызвала такое поведение в версиях 10.0.1 и 5.5.30 https: // mariadb .atlassian.net / browse / MDEV-4356
Вам нужен mysql.sock в / tmp
ln -s /var/lib/mysql/mysql.sock mysql.sock
после этого должен работать нормально.
PHP все еще пытается использовать расположение сокета по умолчанию. Эта проблема может возникнуть, если вы переместили папку MariaDB / MySQL из / var / lib / mysql в другое место. Чтобы решить эту проблему, вам необходимо определить местоположение нового сокета в файле /etc/php.ini .
mysqli.default_socket =/newDBLocation/mysql/mysql.sock
Я решил эту проблему, создав symlink, sudo ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock
. Но сначала я должен создать папку /var/run/mysqld/
, потому что папки изначально не существовало.