Puncte:0

Nu pot accesa serverul localhost mysql. EROARE 2002 (HY000): Nu se poate conecta la serverul MySQL local prin socket-ul „/var/run/mysqld/mysqld.sock”

drapel pk

Am moștenit o mașină ubuntu cu mysql instalat și nu știu cum. Problema mea este că nu pot accesa mysql.

Iată câteva informații despre gazda mea:

cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.1 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.1 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

Versiunea MySQL mysql Ver 8.0.27-0ubuntu0.20.04.1 pentru Linux pe x86_64 ((Ubuntu))

Acesta este un mesaj de eroare:

$ mysql -u root -p
EROARE 2002 (HY000): Nu se poate conecta la serverul MySQL local prin socket-ul „/var/run/mysqld/mysqld.sock”

---

$ service mysqld start
Nu s-a pornit mysqld.service: Unitatea mysqld.service nu a fost găsită.

Acest fișier /var/run/mysqld/mysqld.sock nu exista.

EDITARE CU MAI MULTE INFORMAȚII

$ netstat -tlpn
Conexiuni la internet active (numai servere)
Proto Recv-Q Trimitere-Q Adresă locală Adresă străină Stat PID/Nume program
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 99/systemd-resolved
tcp 0 0 0.0.0.0:22 0.0.0.0:* ASCULTĂ 136/sshd: /usr/sbin
tcp 0 0 127.0.0.1:25 0.0.0.0:* ASCULTĂ 303/master
tcp 0 0 127.0.0.1:6010 0.0.0.0:* ASCULTĂ 313/sshd: root@pts/
tcp6 0 0 :::80 :::* ASCULTĂ 138/apache2
tcp6 0 0 :::22 :::* ASCULTĂ 136/sshd: /usr/sbin
tcp6 0 0 ::1:25 :::* ASCULTĂ 303/master
tcp6 0 0 ::1:6010 :::* ASCULTĂ 313/sshd: root@pts/
$ systemctl pornește mysql
Lucrarea pentru mysql.service a eșuat deoarece procesul de control a ieșit cu cod de eroare.
Consultați „systemctl status mysql.service” și „journalctl -xe” pentru detalii.
$ systemctl status mysql.service
* mysql.service - MySQL Community Server
     Încărcat: încărcat (/lib/systemd/system/mysql.service; dezactivat; prestabilit furnizor: activat)
     Activ: eșuat (Rezultat: cod de ieșire) din joi 2022-01-27 08:32:50 CET; acum 10s
    Proces: 5687 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (cod=exit, status=0/SUCCESS)
    Proces: 5696 ExecStart=/usr/sbin/mysqld (code=exit, status=1/FAILURE)
   PID principal: 5696 (cod=ieșit, stare=1/Eșec)
     Stare: „Pornire server în curs”
      Eroare: 2 (Nu există un astfel de fișier sau director)

27 ianuarie 08:32:50 osticket systemd[1]: mysql.service: Proces principal ieșit, cod=ieșit, stare=1/Eșec
27 ianuarie 08:32:50 osticket systemd[1]: mysql.service: a eșuat cu rezultatul „exit-code”.
27 ianuarie 08:32:50 osticket systemd[1]: Nu s-a pornit MySQL Community Server.
27 ian 08:32:50 osticket systemd[1]: mysql.service: lucrare de repornire programată, contorul de repornire este la 5.
27 ianuarie 08:32:50 osticket systemd[1]: S-a oprit MySQL Community Server.
27 ian 08:32:50 osticket systemd[1]: mysql.service: Cererea de pornire s-a repetat prea repede.
27 ianuarie 08:32:50 osticket systemd[1]: mysql.service: a eșuat cu rezultatul „exit-code”.
27 ianuarie 08:32:50 osticket systemd[1]: Nu s-a pornit MySQL Community Server.
$ pwd && ls
/var/log
alternative.log apache2 auth.log.4.gz dpkg.log.1 lastlog mysqld.err php7.4-fpm.log.2.gz php7.4-fpm.log.8.gz syslog.3.gz wtmp
alternative.log.1 apt btmp dpkg.log.2.gz mail.log php7.4-fpm.log php7.4-fpm.log.3.gz php7.4-fpm.log.9.gz syslog.4. gz wtmp.1
alternative.log.2.gz auth.log btmp.1 dpkg.log.3.gz mail.log.1 php7.4-fpm.log.1 php7.4-fpm.log.4.gz private syslog.5. gz
alternative.log.3.gz auth.log.1 dist-upgrade dpkg.log.4.gz mail.log.2.gz php7.4-fpm.log.10.gz php7.4-fpm.log.5. gz syslog syslog.6.gz
alternative.log.4.gz auth.log.2.gz dmesg faillog mail.log.3.gz php7.4-fpm.log.11.gz php7.4-fpm.log.6.gz syslog.1 syslog. 7.gz
alternative.log.5.gz auth.log.3.gz dpkg.log jurnal mail.log.4.gz php7.4-fpm.log.12.gz php7.4-fpm.log.7.gz syslog.2 .gz ubuntu-advantage.log
$ cat /var/log/mysqld.err
2022-01-26T12:23:07.952718Z 0 [EROARE] [MY-010083] [Server] --verbose este pentru utilizare cu --help; ați vrut să spuneți --log-error-verbosity?
2022-01-26T12:23:07.952814Z 0 [EROARE] [MY-010095] [Server] Nu s-a putut accesa directorul pentru --secure-file-priv. Vă rugăm să vă asigurați că directorul există și este accesibil de către MySQL Server. Valoare furnizată: /var/lib/mysql-files
2022-01-26T12:23:07.953735Z 0 [EROARE] [MY-010119] [Server] Se anulează
$ namei -l /var/lib/mysql-files
f: /var/lib/mysql-files
rădăcină rădăcină drwxr-xr-x /
drwxr-xr-x rădăcină rădăcină var
drwxr-xr-x root root lib
                     mysql-files - Nu există un astfel de fișier sau director

Am încercat să o repar în multe feluri, dar nu reușesc. Ma poate ajuta cineva?

Mulțumiri.

drapel us
Care este conținutul lui `/var/log/daemon.log`?
xabikip avatar
drapel pk
Fișierul @TeroKilkanen `/var/log/daemon.log` nu există pe gazda mea.
drapel us
Ce fișiere conține `/var/log`? Este foarte ciudat că `daemon.log` nu este acolo, aceasta este ținta standard de jurnal în Ubuntu și multe alte distribuții Linux.
xabikip avatar
drapel pk
@TeroKilkanen Acum puteți vedea fișierele `/var/log` la întrebare
drapel in
`/var/log/mysqld.err`?
xabikip avatar
drapel pk
@GeraldSchneider nimic interesant în `/var/log/mysqld.err`. Puteți vedea la întrebare.
drapel in
Ai o definiție ciudată a cuvântului „interesant”. Ai verificat `/var/lib/mysql-files`? Vă rugăm să afișați `namei -l /var/lib/mysql-files`
xabikip avatar
drapel pk
@GeraldSchneider Nu există `/var/lib/mysql-files`. Puteți vedea rezultatul `namei -l /var/lib/mysql-files` la întrebare.
drapel us
Să ne întoarcem puțin. Ați moștenit această mașină. Care este scopul exact al mașinii și care este obiectivul dvs.? În mod clar, are o instalare nefuncțională a MySQL. Dacă nu se cunoaște cazul de utilizare, diagnosticarea problemei de configurare MySQL este inutilă.
xabikip avatar
drapel pk
@TeroKilkanen Există o aplicație care a fost nefolosită de mult timp. Acum mi s-a cerut să-l repornesc și să ruleze, iar aplicația folosește o bază de date. Deci, încerc să rulez din nou, dar am această problemă cu DB.
drapel us
Problema aici este că această bază de date nu a funcționat când aplicația a fost scoasă offline. Directorul de date pentru MySQL a fost inexistent, deci nu există date pentru aplicație. Trebuie să verificați dacă aceasta este într-adevăr gazda DB pe care a folosit-o aplicația. Dacă nu, atunci trebuie să găsiți gazda corectă.
Puncte:0
drapel us

Numele serviciului este mysql în Debian / Ubuntu, deci trebuie să utilizați systemctl pornește mysql pentru a porni serverul.

xabikip avatar
drapel pk
Cu `systemctl start mysql` este, de asemenea, da-mi o eroare. Cu `systemctl start mysql` este, de asemenea, da-mi o eroare. Am pus mai multe informatii in intrebare.
Puncte:0
drapel gb

netstat -tlpn - este mysql rulează pe portul 3306? sau altundeva? implicit, conexiunea la localhost se face printr-un socket try add --protocolul 3306 - vedea Cum să forțezi MySQL să se conecteze prin TCP în loc de un socket Unix? - de asemenea, ps axe | grep mysql și apoi lsof -p <mysqld pid> și căutați IPv4 sau IPv6 sau socket - socket-ul poate fi plasat într-un loc diferit de locul în care se așteaptă clientul.

xabikip avatar
drapel pk
Am pus informațiile despre `netstat -tlpn` pe întrebare. Nu văd nimic despre mysql
Petr Chloupek avatar
drapel gb
ce zici de `ps axe | grep mysql` macar ruleaza?
xabikip avatar
drapel pk
`ps axe | grep mysql` aceasta este rezultatul `2445 pts/2 S+ 0:00 grep --color=auto mysql`
Puncte:0
drapel in

Mysqld-ul dvs. nu pornește și indică următoarea eroare în jurnalul de erori:

Nu s-a putut accesa directorul pentru --secure-file-priv. Vă rugăm să vă asigurați că directorul există și este accesibil de către MySQL Server. Valoare furnizată: /var/lib/mysql-files

/var/lib/mysql-files lipsește, așa că trebuie să-l creați.

sudo install -o mysql -g mysql -m 0700 -d /var/lib/mysql-files

După aceea, ar trebui să puteți porni mysqld folosind systemctl pornește mysql.

xabikip avatar
drapel pk
Am creat `/var/lib/mysql-files` așa cum spui și acum îl am `drwx------ 2 mysql mysql 4096 27 ianuarie 13:45 mysql-files`. Apoi porniți mysqld folosind `systemctl start mysql`, dar am aceeași eroare `Job for mysql.service failed deoarece procesul de control a ieșit cu cod de eroare`. ;(
drapel in
Vă rog. Citiți jurnalul de erori.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.