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

Използване на псевдоним за локалния сървър в MySQL

Клиентската библиотека на MySQL се опитва да отгатне как да се свърже с вашата база данни. Когато дадете localhost като име на хост се предполага, че използвате локален сокет (потърсете в компютъра си файл с име mysql.sock , вероятно под /var/lib/mysql или /usr/local/mysql/ .

Въпреки това, когато използвате всичко иначе, като IP адрес, различно име на хост или, във вашия случай, mysqldev , той се опитва да се свърже с хоста чрез tcp. От съобщението за грешка изглежда, че вашият локален mysql сървър не слуша tcp порт 3306 (по подразбиране на mysql)

Проверете дали вашият my.cnf (вероятно /etc/my.cnf или /etc/mysql/my.cnf ) позволява използването на tcp. Ако намерите ред като

skip-networking

коментирайте го:

#skip-networking

и рестартирайте сървъра. След това опитайте отново да се свържете.

За да разберете къде е вашият сокет, свържете се през localhost и издайте следната команда:

mysql> show global variables like '%socket%';
+---------------+-----------------------------+
| Variable_name | Value                       |
+---------------+-----------------------------+
| socket        | /var/run/mysqld/mysqld.sock |
+---------------+-----------------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кое е най-доброто решение за обединяване на връзки към базата данни в python?

  2. Качване на изображения с помощта на масиви и грешки при извличане

  3. Как да свържете низове в MySQL с CONCAT()

  4. SQLSTATE[23000]:Нарушение на ограничението за целостта с валидно ограничение

  5. Как да премахнете две дублиращи се колони