Score:0

ไม่สามารถเข้าถึงเซิร์ฟเวอร์ localhost mysql ข้อผิดพลาด 2002 (HY000): ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ในเครื่องผ่านซ็อกเก็ต '/var/run/mysqld/mysqld.sock'

ธง pk

ฉันได้สืบทอดเครื่องอูบุนตูโดยติดตั้ง mysql และฉันไม่รู้ว่าต้องทำอย่างไร ปัญหาของฉันคือฉันไม่สามารถเข้าถึง mysql ได้

นี่คือข้อมูลบางส่วนของโฮสต์ของฉัน:

แมว / etc / os-release
NAME="อูบุนตู"
VERSION="20.04.1 LTS (โฟกัสแอ่ง)"
ID=อูบุนตู
ID_LIKE=เดเบียน
PRETTY_NAME="อูบุนตู 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=โฟกัส
UBUNTU_CODENAME=โฟกัส

เวอร์ชัน MySQL mysql Ver 8.0.27-0ubuntu0.20.04.1 สำหรับ Linux บน x86_64 ((Ubuntu))

นี่คือข้อความแสดงข้อผิดพลาด:

$ mysql -u รูท -p
ข้อผิดพลาด 2002 (HY000): ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ในเครื่องผ่านซ็อกเก็ต '/var/run/mysqld/mysqld.sock'

---

$ บริการ mysqld เริ่มต้น
ไม่สามารถเริ่ม mysqld.service: ไม่พบหน่วย mysqld.service

ไฟล์นี้ /var/run/mysqld/mysqld.sock ไม่มีอยู่จริง

แก้ไขด้วยข้อมูลเพิ่มเติม

$netstat -tlpn
การเชื่อมต่ออินเทอร์เน็ตที่ใช้งานอยู่ (เฉพาะเซิร์ฟเวอร์)
Proto Recv-Q Send-Q Local Address ที่อยู่ต่างประเทศ State PID/ชื่อโปรแกรม
tcp 0 0 127.0.0.53:53 0.0.0.0:* ฟัง 99/แก้ไข systemd
tcp 0 0 0.0.0.0:22 0.0.0.0:* ฟัง 136/sshd: /usr/sbin
tcp 0 0 127.0.0.1:25 0.0.0.0:* ฟัง 303/หลัก
tcp 0 0 127.0.0.1:6010 0.0.0.0:* ฟัง 313/sshd: root@pts/
tcp6 0 0 :::80 :::* ฟัง 138/apache2
tcp6 0 0 :::22 :::* ฟัง 136/sshd: /usr/sbin
tcp6 0 0 ::1:25 :::* ฟัง 303/master
tcp6 0 0 ::1:6010 :::* ฟัง 313/sshd: root@pts/
$ systemctl เริ่มต้น mysql
งานสำหรับ mysql.service ล้มเหลวเนื่องจากกระบวนการควบคุมออกด้วยรหัสข้อผิดพลาด
ดู "สถานะ systemctl mysql.service" และ "journalctl -xe" สำหรับรายละเอียด
$ systemctl สถานะ mysql.service
* mysql.service - เซิร์ฟเวอร์ชุมชน MySQL
     โหลดแล้ว: โหลดแล้ว (/lib/systemd/system/mysql.service; ปิดใช้งาน; การตั้งค่าล่วงหน้าของผู้ขาย: เปิดใช้งาน)
     ใช้งานอยู่: ล้มเหลว (ผลลัพธ์: exit-code) ตั้งแต่พฤ. 2022-01-27 08:32:50 CET; 10 วินาทีที่แล้ว
    กระบวนการ: 5687 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
    กระบวนการ: 5696 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
   PID หลัก: 5696 (รหัส=ออก สถานะ=1/ล้มเหลว)
     สถานะ: "กำลังเริ่มต้นเซิร์ฟเวอร์"
      ข้อผิดพลาด: 2 (ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว)

27 ม.ค. 08:32:50 น. osticket systemd[1]: mysql.service: ออกจากกระบวนการหลักแล้ว, รหัส=ออกแล้ว, สถานะ=1/ล้มเหลว
27 ม.ค. 08:32:50 osticket systemd[1]: mysql.service: ล้มเหลวด้วยผลลัพธ์ 'exit-code'
27 ม.ค. 08:32:50 osticket systemd[1]: ไม่สามารถเริ่ม MySQL Community Server
27 ม.ค. 08:32:50 น. osticket systemd[1]: mysql.service: งานรีสตาร์ทตามกำหนดเวลา ตัวนับการรีสตาร์ทอยู่ที่ 5
27 มกราคม 08:32:50 osticket systemd[1]: หยุดเซิร์ฟเวอร์ชุมชน MySQL
27 มกราคม 08:32:50 osticket systemd[1]: mysql.service: เริ่มคำขอซ้ำเร็วเกินไป
27 ม.ค. 08:32:50 osticket systemd[1]: mysql.service: ล้มเหลวด้วยผลลัพธ์ 'exit-code'
27 ม.ค. 08:32:50 osticket systemd[1]: ไม่สามารถเริ่ม MySQL Community Server
$ pwd && ล
/var/log
Alternatives.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
Alternatives.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
Alternatives.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 syslog.5 ส่วนตัว gz
Alternatives.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
Alternatives.log.4.gz auth.log.2.gz dmesg ล้มเหลว log mail.log.3.gz php7.4-fpm.log.11.gz php7.4-fpm.log.6.gz syslog.1 syslog 7.gz
Alternatives.log.5.gz auth.log.3.gz dpkg.log วารสาร mail.log.4.gz php7.4-fpm.log.12.gz php7.4-fpm.log.7.gz syslog.2 .gz อูบุนตู-advantage.log
$ cat /var/log/mysqld.err
2022-01-26T12:23:07.952718Z 0 [ข้อผิดพลาด] [MY-010083] [เซิร์ฟเวอร์] --verbose ใช้สำหรับ --help; คุณหมายถึง --log-error-verbosity?
2022-01-26T12:23:07.952814Z 0 [ข้อผิดพลาด] [MY-010095] [เซิร์ฟเวอร์] ไม่สามารถเข้าถึงไดเรกทอรีสำหรับ --secure-file-priv โปรดตรวจสอบว่ามีไดเร็กทอรีอยู่และสามารถเข้าถึงได้โดย MySQL Server ค่าที่ให้มา : /var/lib/mysql-files
2022-01-26T12:23:07.953735Z 0 [ข้อผิดพลาด] [MY-010119] [เซิร์ฟเวอร์] กำลังยกเลิก
$ namei -l /var/lib/mysql-ไฟล์
f: /var/lib/mysql-files
ราก drwxr-xr-x ราก /
drwxr-xr-x รูท var
drwxr-xr-x ราก lib
                     mysql-files - ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว

ฉันพยายามแก้ไขมาหลายวิธีแล้วแต่ทำไม่ได้ ใครก็ได้ช่วยฉันที

ขอบคุณ.

us flag
เนื้อหาของ `/var/log/daemon.log` คืออะไร?
xabikip avatar
pk flag
@TeroKilkanen `/var/log/daemon.log` ไฟล์ไม่มีอยู่ในโฮสต์ของฉัน
us flag
`/var/log` มีไฟล์อะไรบ้าง? เป็นเรื่องแปลกมากที่ไม่มี `daemon.log` ซึ่งเป็นเป้าหมายบันทึกมาตรฐานใน Ubuntu และ Linux อื่น ๆ อีกมากมาย
xabikip avatar
pk flag
@TeroKilkanen ตอนนี้คุณสามารถดูไฟล์ของ `/var/log` ในคำถามได้
in flag
`/var/log/mysqld.err`?
xabikip avatar
pk flag
@GeraldSchneider ไม่มีอะไรน่าสนใจใน `/var/log/mysqld.err` คุณสามารถดูคำถาม
in flag
คุณมีคำจำกัดความที่แปลกของคำว่า "น่าสนใจ" คุณตรวจสอบ `/var/lib/mysql-files` หรือไม่ โปรดแสดง `namei -l /var/lib/mysql-files`
xabikip avatar
pk flag
@GeraldSchneider ไม่มี `/var/lib/mysql-files` คุณสามารถดูผลลัพธ์ของ `namei -l /var/lib/mysql-files` ในคำถาม
us flag
ย้อนกลับไปสักหน่อย คุณได้รับเครื่องนี้ วัตถุประสงค์ที่แท้จริงของเครื่องจักรคืออะไร และเป้าหมายของคุณคืออะไร? เห็นได้ชัดว่ามีการติดตั้ง MySQL ที่ไม่ทำงาน การวินิจฉัยปัญหาการตั้งค่า MySQL นั้นไร้ผล เว้นแต่จะทราบกรณีการใช้งาน
xabikip avatar
pk flag
@TeroKilkanen มีแอปที่ไม่ได้ใช้งานมานาน ตอนนี้ฉันได้รับคำขอให้สำรองข้อมูลและเรียกใช้ และแอปใช้ฐานข้อมูล ดังนั้นฉันจึงพยายามเรียกใช้อีกครั้ง แต่ฉันมีปัญหากับ DB
us flag
ปัญหาที่นี่คือฐานข้อมูลนี้ไม่ทำงานเมื่อแอปออฟไลน์ ไม่มีไดเร็กทอรีข้อมูลสำหรับ MySQL ดังนั้นจึงไม่มีข้อมูลสำหรับแอป คุณต้องตรวจสอบว่านี่เป็นโฮสต์ DB ที่แอปใช้จริงหรือไม่ ถ้าไม่ใช่ คุณต้องหาโฮสต์ที่ถูกต้อง
Score:0
ธง us

ชื่อบริการคือ มายเอสคิวแอล ใน Debian / Ubuntu ดังนั้นคุณต้องใช้ systemctl เริ่ม mysql เพื่อเริ่มเซิร์ฟเวอร์

xabikip avatar
pk flag
ด้วย `systemctl start mysql` ก็ทำให้ฉันมีข้อผิดพลาดเช่นกัน ด้วย `systemctl start mysql` ก็ทำให้ฉันมีข้อผิดพลาดเช่นกัน ฉันใส่ข้อมูลเพิ่มเติมในคำถาม
Score:0
ธง gb

netstat -tlpn - คือ มายเอสคิวแอล ทำงานบนพอร์ต 3306? หรือที่อื่น? โดยค่าเริ่มต้นการเชื่อมต่อกับ localhost จะผ่านซ็อกเก็ต ลองเพิ่ม --โปรโตคอล 3306 - ดู จะบังคับให้ MySQL เชื่อมต่อด้วย TCP แทนซ็อกเก็ต Unix ได้อย่างไร - อีกด้วย, ป.ล. ขวาน | grep mysql แล้ว lsof -p <mysqld pid> และมองหา IPv4 หรือ IPv6 หรือซ็อกเก็ต - ซ็อกเก็ตอาจถูกวางไว้ในตำแหน่งที่แตกต่างจากที่ไคลเอนต์คาดหวัง

xabikip avatar
pk flag
ฉันใส่ข้อมูลของ `netstat -tlpn` ในคำถาม ฉันไม่เห็นอะไรเลยเกี่ยวกับ mysql
Petr Chloupek avatar
gb flag
แล้ว `ps ax | grep mysql` ? มันกำลังวิ่งอยู่หรือเปล่า?
xabikip avatar
pk flag
`ps ขวาน | grep mysql` นี่คือเอาต์พุต '2445 pts/2 S+ 0:00 grep --color=auto mysql'
Score:0
ธง in

mysqld ของคุณไม่เริ่มทำงานและระบุข้อผิดพลาดต่อไปนี้ในบันทึกข้อผิดพลาด:

ไม่สามารถเข้าถึงไดเรกทอรีสำหรับ --secure-file-priv โปรดตรวจสอบว่ามีไดเร็กทอรีอยู่และสามารถเข้าถึงได้โดย MySQL Server ค่าที่ให้มา : /var/lib/mysql-files

/var/lib/mysql-files ขาดหายไป ดังนั้นคุณต้องสร้างมันขึ้นมา

sudo ติดตั้ง -o mysql -g mysql -m 0700 -d /var/lib/mysql-files

หลังจากนั้นคุณควรจะสามารถเริ่มใช้ mysqld ได้ systemctl เริ่ม mysql.

xabikip avatar
pk flag
ฉันได้สร้าง `/var/lib/mysql-files` อย่างที่คุณพูดและตอนนี้ฉันมี `drwx------ 2 mysql mysql 4096 27 ม.ค. 13:45 mysql-files` จากนั้นเริ่ม mysqld โดยใช้ `systemctl start mysql` แต่ฉันมีข้อผิดพลาดเดียวกัน 'งานสำหรับ mysql.service ล้มเหลวเนื่องจากกระบวนการควบคุมออกด้วยรหัสข้อผิดพลาด' ;(
in flag
โปรด. อ่านบันทึกข้อผิดพลาด

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา