Score:1

ไม่สามารถเรียกใช้/ถอนการติดตั้ง/ติดตั้ง mysql ใหม่บน Ubuntu 20.04

ธง cn

หลังจากอัปเกรด Ubuntu 20.04 เป็นประจำ ฉันไม่สามารถเรียกใช้ mysql ได้อีก ฉันได้รับข้อผิดพลาดนี้

xxx@xxx:/etc/mysql$ mysql  

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

ฉันลองใช้ชุดค่าผสมต่างๆ เป็นเวลาประมาณ 5 ชั่วโมง แต่ก็ใช้ไม่ได้ผล ฉันยินดีที่จะกำจัดฐานข้อมูลปัจจุบันหากมีอยู่ในขณะนี้

นี่คือสิ่งที่ฉันได้รับเมื่อพยายามถอนการติดตั้งเซิร์ฟเวอร์ mysql:

xxxx@xxx:/etc/mysql$ sudo apt ลบเซิร์ฟเวอร์ mysql
กำลังอ่านรายการแพ็กเกจ...เสร็จแล้ว
สร้างต้นไม้พึ่งพา       
กำลังอ่านข้อมูลสถานะ...
ไม่ได้ติดตั้งแพ็คเกจ 'mysql-server' ดังนั้นจึงไม่ถูกลบ
0 เพื่ออัปเกรด 0 เพื่อติดตั้งใหม่ 0 เพื่อลบและ 0 เพื่อไม่อัปเกรด
1 ไม่ได้ติดตั้งหรือถอดออกอย่างสมบูรณ์
หลังจากการดำเนินการนี้ จะใช้พื้นที่ดิสก์เพิ่มเติม 0 B
การตั้งค่า mysql-server-8.0 (8.0.25-0ubuntu0.20.04.1) ...
ไม่สามารถหยุด mysql.service: หน่วย mysql.service ไม่ได้โหลด
เรียกใช้ rc.d: initscript mysql การดำเนินการ "หยุด" ล้มเหลว
mysqld จะบันทึกข้อผิดพลาดไปที่ /var/log/mysql/error.log
2021-06-11T12:46:36.625455Z 0 [ข้อผิดพลาด] [MY-010946] [เซิร์ฟเวอร์] ไม่สามารถเริ่ม mysqld daemon ตรวจสอบบันทึกข้อผิดพลาด mysqld
คำเตือน: ไม่สามารถเริ่มเซิร์ฟเวอร์ได้
หน่วยที่ตั้งไว้ล่วงหน้าล้มเหลว: ไฟล์ mysql.service: ลิงก์ถูกตัดขาด
/usr/bin/deb-systemd-helper: ข้อผิดพลาด: systemctl ที่ตั้งไว้ล่วงหน้าล้มเหลวใน mysql.service: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว
ไม่สามารถเริ่ม mysql.service: ไม่พบหน่วย mysql.service
เรียกใช้ rc.d: initscript mysql การดำเนินการ "เริ่ม" ล้มเหลว
ไม่พบ หน่วย mysql.service
dpkg: แพ็คเกจการประมวลผลข้อผิดพลาด mysql-server-8.0 (--configure):
 ติดตั้งแพ็คเกจ mysql-server-8.0 สคริปต์ย่อยกระบวนการหลังการติดตั้งส่งคืนสถานะการออกจากข้อผิดพลาด 1
พบข้อผิดพลาดขณะประมวลผล:
 mysql-เซิร์ฟเวอร์-8.0
E: กระบวนการย่อย /usr/bin/dpkg ส่งคืนรหัสข้อผิดพลาด (1)

เอาต์พุตของไฟล์ /var/log/mysql/error.log ซึ่งแสดงในเอาต์พุตด้านบนเป็นดังนี้:

2021-06-11T12:39:33.378397Z 0 [คำเตือน] [MY-011068] [เซิร์ฟเวอร์] ไวยากรณ์ 'expire-logs-days' เลิกใช้แล้วและจะถูกลบออกในรุ่นต่อๆ ไป โปรดใช้ binlog_expire_logs_seconds inste>
2021-06-11T12:39:33.379542Z 0 [ระบบ] [MY-010116] [เซิร์ฟเวอร์] /usr/sbin/mysqld (mysqld 8.0.25-0ubuntu0.20.04.1) เริ่มต้นเป็นกระบวนการ 9109
2021-06-11T12:39:33.380367Z 0 [คำเตือน] [MY-013242] [เซิร์ฟเวอร์] -- character-set-server: ปัจจุบัน 'utf8' เป็นนามแฝงสำหรับชุดอักขระ UTF8MB3 แต่จะเป็นนามแฝงสำหรับ UTF8MB4 ในอนาคต >
2021-06-11T12:39:33.608401Z 1 [ระบบ] [MY-013576] [InnoDB] การเริ่มต้น InnoDB ได้เริ่มต้นขึ้นแล้ว
2021-06-11T12:39:33.629330Z 1 [ข้อผิดพลาด] [MY-012263] [InnoDB] ไฟล์ข้อมูล innodb_system ที่ขยายอัตโนมัติ './ibdata1' มีขนาดต่างกัน 768 หน้า (ปัดเศษลงเป็น MB) มากกว่าที่ระบุใน การ>
2021-06-11T12:39:33.629486Z 1 [ข้อผิดพลาด] [MY-012930] [InnoDB] การเริ่มต้นปลั๊กอินถูกยกเลิกโดยมีข้อผิดพลาด ข้อผิดพลาดทั่วไป
2021-06-11T12:39:34.129573Z 1 [ข้อผิดพลาด] [MY-010334] [เซิร์ฟเวอร์] ไม่สามารถเริ่มต้น DD Storage Engine
2021-06-11T12:39:34.129950Z 0 [ข้อผิดพลาด] [MY-010020] [เซิร์ฟเวอร์] การเริ่มต้นพจนานุกรมข้อมูลล้มเหลว
2021-06-11T12:39:34.130270Z 0 [ข้อผิดพลาด] [MY-010119] [เซิร์ฟเวอร์] กำลังยกเลิก
2021-06-11T12:39:34.131554Z 0 [ระบบ] [MY-010910] [เซิร์ฟเวอร์] /usr/sbin/mysqld: การปิดระบบเสร็จสมบูรณ์ (mysqld 8.0.25-0ubuntu0.20.04.1) (Ubuntu)

และผลลัพธ์ของคำสั่งต่อไปนี้ให้:

ความช่วยเหลือของคุณในเรื่องนี้ได้รับการชื่นชมอย่างมาก ฉันไม่ต้องการติดตั้ง Ubuntu ใหม่อีกครั้ง

ขอขอบคุณ.

Score:0
ธง cn

ในที่สุดฉันก็สามารถถอนการติดตั้งได้อย่างสมบูรณ์

ก่อนอื่นให้ตรวจสอบว่ามีบริการที่เกี่ยวข้องกับ mysql ที่ใช้งานอยู่หรือไม่โดยเรียกใช้:

ls /etc/systemd/ระบบ

ฉันมี mysqld.service และ mysql.service ทำงานอยู่ ฉันสามารถลบทั้งสองอย่างได้โดยใช้คำสั่งต่อไปนี้

systemctl ปิดการใช้งาน mysqld.service
systemctl daemon-โหลดซ้ำ
การรีเซ็ต systemctl ล้มเหลว

สำหรับคำสั่งข้างต้น โปรดดู: https://superuser.com/questions/513159/how-to-remove-systemd-services

ในที่สุดฉันก็วิ่งเพื่อลบ mysql ออกทั้งหมด:

sudo apt --purge ลบ mysql-common

หมายเหตุ: ในกรณีที่คุณพบข้อผิดพลาดต่อไปนี้:

ทางเลือกในการอัปเดต: ข้อผิดพลาด: เส้นทางทางเลือก /etc/mysql/my.cnf.fallback ไม่มีอยู่

คุณสามารถสร้างลิงก์สัญลักษณ์เช่นลิงค์ด้านล่าง:

 sudo ln -s /etc/mysql/my.cnf /etc/alternatives/my.cnf

ตอนนี้ถ้าคุณลบโฟลเดอร์ /etc/mysql ไปแล้ว ไม่ใช่ปัญหา ให้สร้างใหม่อีกครั้งและสร้างไฟล์จำลองโดยใช้ชื่อ my.cnf โดยใช้:

sudo สัมผัส /etc/mysql/my.cnf

โพสต์คำตอบ

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