Nie można połączyć się z lokalnym serwerem MySQL poprzez gniazdo ' / var/lib/mysql / mysql.skarpetki " (2)

Podczas próby połączenia z mysql pojawia się następujący błąd:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Czy istnieje rozwiązanie tego błędu? Co może być tego powodem?

Author: user0118999881999119725 3, 2010-12-15

30 answers

Czy łączysz się z" localhost "lub " 127.0.0.1"? Zauważyłem, że po podłączeniu do" localhost "używane jest złącze gniazda, ale po podłączeniu do "127.0.0.1" używane jest złącze TCP / IP. Możesz spróbować użyć "127.0.0.1", jeśli złącze gniazda nie jest włączone / działa.

 229
Author: Jan Thomä,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-12-15 09:47:31

Upewnij się, że usługa mysql jest uruchomiona

service mysqld start

Następnie spróbuj jednej z następujących czynności:

(Jeśli nie ustawiłeś hasła do mysql)

mysql -u root

Jeśli masz już ustawione hasło

mysql -u root -p
 193
Author: Haja Peer Mohamed H,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-05-09 14:25:13

If your file my.cnf (zwykle w folderze etc) jest poprawnie skonfigurowany za pomocą

socket=/var/lib/mysql/mysql.sock

Możesz sprawdzić, czy mysql jest uruchomiony za pomocą następującego polecenia:

mysqladmin -u root -p status

Spróbuj zmienić swoje uprawnienia do folderu mysql. Jeśli pracujesz lokalnie, możesz spróbować:

sudo chmod -R 777 /var/lib/mysql/

That solved it for me

 30
Author: marimaf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-10 19:04:58

Serwer MySQL nie działa, lub to nie jest lokalizacja jego pliku gniazda (sprawdź my.cnf).

 24
Author: Dan Grossman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-12-15 09:34:23

Najprawdopodobniej mysql.sock nie istnieje w /var/lib/mysql/.

Jeśli znajdziesz ten sam plik w innej lokalizacji, połącz go symbolicznie:

For ex: I have it in /data/mysql_datadir/mysql.sock

Przełącz użytkownika na mysql i wykonaj jak wspomniano poniżej:

su mysql

ln -s /data/mysql_datadir/mysql.sock /var/lib/mysql/mysql.sock

That solved my problem

 23
Author: sreddy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-26 16:25:52

Jeśli korzystasz z ostatnio używanego RHEL, może być konieczne uruchomienie mariadb (open source MySQL db) zamiast mysql db:

yum remove mysql
yum -y install mariadb-server mariadb
service mariadb start

Wtedy powinieneś mieć dostęp do mysql w zwykły sposób:

mysql -u root -p
 20
Author: duhaime,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-26 23:08:13

W moim przypadku przeniosłem plik socket do innej lokalizacji wewnątrz /etc/my.cnf od /var/lib/mysql/mysql.sock do /tmp/mysql.sock

Nawet po ponownym uruchomieniu usługi mysqld nadal widzę komunikat o błędzie podczas próby połączenia. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Problem polega na tym, że klient jest skonfigurowany. Uruchomiona diagnostyka wyświetli prawidłową ścieżkę gniazda. eg ps aux | grep mysqld

Działa:

mysql -uroot -p -h127.0.0.1
mysql -uroot -p --socket=/tmp/mysql.sock

Nie działa:

mysql -uroot -p
mysql -uroot -p -hlocalhost

Możesz naprawić ten problem dodając to samo Gniazdo linia w sekcji [client] wewnątrz mysql config.

 15
Author: Dejan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-21 17:23:57

Just edit /etc/my.cnf Dodaj następujące wiersze do my.cnf

[mysqld]

socket=/var/lib/mysql/mysql.sock 

[client]

socket=/var/lib/mysql/mysql.sock

Uruchom ponownie mysql i połącz się ponownie

Mysql-u user-P password database-H host;

 14
Author: minhas23,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-24 14:50:09

Sprawdź, czy usługa mysqld jest uruchomiona, czy nie, jeśli nie jest uruchomiona, uruchom usługę.

Jeśli problem nie został rozwiązany, poszukaj /etc/my.cnf i zmodyfikuj w następujący sposób, gdzie widzisz linię zaczynającą się od socket. Zrób kopię zapasową tego pliku przed wykonaniem tej aktualizacji.

socket=/var/lib/mysql/mysql.sock  

Zmień na

socket=/opt/lampp/var/mysql/mysql.sock -u root
 12
Author: vkGunasekaran,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-22 11:22:40

MariaDB, społecznościowy fork MySQL, stał się domyślną implementacją MySQL w wielu dystrybucjach.

Więc najpierw powinieneś zacząć,

$ sudo systemctl start mariadb

Jeśli to nie powiedzie się raczej spróbuj,

$ sudo systemctl start mysqld

Następnie do uruchomienia mysql,

$ mysql -u root -p

Od dziś w Fedorze pakiet nazywa się mariadb A w Ubuntu nazywa się mariadb-server.

Więc może trzeba go zainstalować, jeśli nie jest już zainstalowany w systemie.

 7
Author: Gayan Weerakutti,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-23 12:18:15

Upewnij się, że zostało ci wystarczająco dużo miejsca w /var. Jeśli Demon Mysql nie jest w stanie zapisać dodatkowych informacji na dysku, serwer mysql nie uruchomi się i prowadzi do błędu Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

Rozważ użycie

expire_logs_days = 10
max_binlog_size = 100M

To pomoże Ci ograniczyć użycie dysku.

 7
Author: Karthik,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-22 11:22:07

Oto co dla mnie zadziałało:

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
service mysqld restart
 5
Author: User,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-25 00:20:50

Proszę sprawdzić czy działa inna usługa mysql.

 4
Author: Kishore Relangi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-15 17:45:19

Upewnij się, że uruchomiłeś Serwer:

mysql.server start

Następnie połącz się z użytkownikiem root:

mysql -uroot
 4
Author: Deniz Ozger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-03-31 22:07:53

Jeśli twój mysql wcześniej działał i nagle się zatrzymał, po prostu "uruchom ponownie" serwer.

Miałem do czynienia z tym problemem na moim CentOS VPS.->

Ciągle dostawał

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'(2)

Wypróbowałem wszystkie techniki, w końcu restart serwera naprawił problemy- >

shutdown -r now

Mam nadzieję, że to pomoże !!
 3
Author: Shashank Agarwal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-12 05:15:25

Try

echo 0 > /selinux/enforce
 3
Author: dvin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-16 16:40:29

Jeśli zmienisz pliki w /var / lib / mysql [jak skopiuj lub zastąp to], musisz ustawić właściciela plików na mysql to jest tak ważne, jeśli mariadb.restart serwisu nie powiódł się

Chown-r mysql: mysql/var / lib / mysql/ *

Chmod-R 700/var/lib/mysql / *

 3
Author: Mohsen Beiranvand,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-20 09:12:55

Najpierw wpisz "service mysqld start" i zaloguj się

 2
Author: hPrasad,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-07 03:30:02

Upewnij się, że poprawnie zainstalowałeś serwer MySQL, napotkałem ten błąd wiele razy i myślę, że debugowanie z gniazda jest skomplikowane, chodzi mi o to, że może być łatwiej go ponownie zainstalować.

Jeśli używasz CentOS 7, Oto prawidłowy sposób instalacji:

Po pierwsze, Dodaj źródło społeczności mysql
yum install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

Następnie można go zainstalować przez yum install mysql-community-server

Uruchom go z systemctl: systemctl start mysqld

 2
Author: Zernel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-13 09:32:10

Moim problemem było to, że zainstalowałem mysql pomyślnie i działało dobrze.

Ale pewnego dnia wystąpił ten sam błąd.

nie można połączyć się z lokalnym serwerem MySQL poprzez gniazdo ' / var/lib/mysql / mysql.sock' (2)

I brak mysql.plik sock istniał.

Ten sollution rozwiązał mój problem i mysql znowu działał:

Zaloguj się jako root:

sudo su -

Run:

systemctl stop mysqld.service
systemctl start mysqld.service
systemctl enable mysqld.service

Test jako root:

mysql -u root -p

Mysql powinien być teraz gotowy i bieganie.

Mam nadzieję, że to pomoże również komuś innemu.
 1
Author: bharald,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-03 09:30:41

Zauważ, że podczas gdy mysql odczytuje informacje o lokalizacji pliku socketfile z my.plik cnf, program mysql_secure_installation wydaje się czasami nie robić tego poprawnie.

Więc jeśli jesteś jak ja i przetasować rzeczy wokół w czasie instalacji może dostać się do sytuacji, w której można połączyć się z bazą danych za pomocą mysql po prostu dobrze, ale rzeczy nie można zabezpieczyć(nie za pomocą tego skryptu i tak).

Aby to naprawić sugestia od sreddy działa dobrze: zrób softlink z gdzie skrypt spodziewałby się gniazda do miejsca, w którym faktycznie się znajduje. Przykład:

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

(używam /tmp / jako domyślnej lokalizacji dla gniazd)

 1
Author: Ellert van Koperen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-14 21:50:18

U mnie działało z następującymi zmianami

Niezależnie od ścieżki dla socket jest wymieniony w [mysqld] i to samo w [client] w my.cnf i restart mysql

[mysqld] socket= / var / lib / mysql / mysql.sock

[klient] socket= / var / lib / mysql / mysql.sock

 1
Author: minhas23,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-13 04:13:01

Jeden sposób na odtworzenie tego błędu: jeśli chcesz połączyć się z zagranicznym serwerem, ale zamiast tego połączyć się z nieistniejącym lokalnym:

eric@dev ~ $ mysql -u dev -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through 
socket '/var/lib/mysql/mysql.sock' (2)
eric@dev ~ $

Więc musisz podać host Tak:

eric@dev ~ $ mysql --host=yourdb.yourserver.com -u dev -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 235
Server version: 5.6.19 MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+-------------------------+
| Database                |
+-------------------------+
| information_schema      |
| mysql                   |
| performance_schema      |
+-------------------------+
3 rows in set (0.00 sec)

mysql> exit
Bye
eric@dev ~ $
 1
Author: Eric Leschinski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-28 14:17:22

Może to być głupia sugestia, ale upewnij się, że w 100% Twój DB jest nadal hostowany w localhost. Na przykład, jeśli administrator sieci wybrał (lub zmienił na) hosting Amazon DB, będziesz potrzebować tej nazwy hosta!

 1
Author: The One and Only ChemistryBlob,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-15 15:52:45

W moim przypadku importowałem nową bazę danych i nie byłem w stanie połączyć się ponownie po tym. W końcu zdałem sobie sprawę, że to problem z przestrzenią.

Więc możesz usunąć ostatnią bazę danych i rozszerzyć dysk twardy lub co zrobiłem, przywrócić migawkę mojej maszyny wirtualnej.

Na wypadek, gdyby ktoś uznał, że jest to przydatne

 1
Author: Evan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-01-21 09:20:45

Napotkał ten problem podczas próby połączenia mysql w kliencie SSH, okazało się, że dodanie ścieżki gniazda do polecenia jest pomocne podczas przełączania między gniazdami jest konieczne.

> mysql -u user -p --socket=/path/to/mysql5143.sock
 0
Author: Jaak Kütt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-24 14:47:05

Jest to problem, jeśli kończy ci się miejsce na dysku. Rozwiązaniem jest uwolnienie trochę miejsca z dysku twardego.

Proszę przeczytać więcej, aby mieć Wyjaśnienie:

Jeśli używasz MySQL w Linuksie sprawdź wolne miejsce na dysku twardym za pomocą polecenia dysk Wolny:

 df 

Jeśli masz coś takiego:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2              5162828   4902260         0 100% /
udev                    156676        84    156592   1% /dev
/dev/sda3              3107124     70844   2878444   3% /home

To jest problem, a teraz masz rozwiązanie!

Od mysql.sock chce być utworzony w folderze mysql, który prawie zawsze znajduje się pod folder główny nie mógł tego osiągnąć z powodu braku miejsca.

Jeśli regularnie podajesz polecenie ls w katalogu mysql (w OpenSUSE 11.1 jest w /var/lib/mysql) otrzymasz coś w stylu:

hostname:/var/lib/mysql #
.protected  IT     files        ibdata1             mysqld.log  systemtemp
.tmp        NEWS   greekDB      mysql               mysqld.pid  test
ARXEIO      TEMP1  ib_logfile0  mysql.sock          polis
DATING      deisi  ib_logfile1  mysql_upgrade_info  restore

Mysql.plik sock pojawiający się i znikający często (musisz spróbować allot z ls, aby trafić instancję z mysql.plik sock w folderze).

To spowodowane niewystarczającą ilością miejsca na dysku.

Mam nadzieję, że pomogę niektórym!!!! Dzięki!
 0
Author: c.chasapis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-13 19:49:48

Musiałem wyłączyć explicit_defaults_for_timestamp z mojego.cnf.

 0
Author: powtac,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-01 10:13:29

Wypróbuj pierwsze 2, 3 rozwiązania. Error is stil popup & If you can not find /var/lib/mysql/mysql.sock

find /var/ -name mysql.sock

Sprawdź dostępne miejsce w /var /

df

Jeśli katalog jest pełny usuń niektóre nietypowe pliki / katalogi

rm /var/cache/*

Prawdopodobnie twój problem zostanie rozwiązany teraz.

 0
Author: Sadee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-13 15:56:27

Jeśli jesteś w skorupie sf.net , Spróbuj:

mysql --host=mysql-{LETTER} --user={LETTER}{GROUP ID}admin -p

Zmień {LETTER} i {group ID} jak pokazano w bazie danych MySQL profilu administratora projektu.

 0
Author: Chetabahana,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-03 20:58:11