ข้อผิดพลาดของ MySQL: พาร์ติชันที่มี / var / lib / mysql เต็มเกินไป!


15

ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามเริ่ม MySQL: The partition with /var/lib/mysql is too full!

นี่คือผลลัพธ์ของdf -h:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       455G   77G  356G  18% /
none            4,0K     0  4,0K   0% /sys/fs/cgroup
udev            1,9G  4,0K  1,9G   1% /dev
tmpfs           387M  1,3M  386M   1% /run
none            5,0M     0  5,0M   0% /run/lock
none            1,9G  1,2M  1,9G   1% /run/shm
none            100M   28K  100M   1% /run/user

นี่แสดงให้เห็นว่าพาร์ติชั่นนั้นใกล้เต็มแล้ว


ขนาดของการลงชื่อเข้าใช้ binairy มีขนาดเท่าใด / var / lib / mysql /
Rinzwind

ฉันขอโทษถ้านี่เป็นคำถามที่โง่ แต่อันไหนเป็นบันทึกที่ถูกต้อง: ib_logfile0 หรือ ib_logfile1
จรวด

ฉันคิดว่า "server-bin. *" หรือ "mysql-bin. *"
Rinzwind

ดูเหมือนจะไม่มีไฟล์ดังกล่าวใน / var / lib / mysql ฉันได้ติดตั้ง mysql-server อีกครั้ง แต่ไม่มีอะไรเปลี่ยนแปลง
จรวด

รุ่นไหนที่คุณใช้โปรดอธิบายว่า
Chinmaya B

คำตอบ:


12

sudo /etc/init.d/mysql startในที่สุดผมก็คงได้โดยการเรียกใช้ ฉันต้องแทรกsudoต่อหน้าคำสั่ง


1
วิธีนี้สามารถแก้ไขปัญหาได้อย่างไร OP ได้รับข้อผิดพลาดนี้เมื่อพยายามเริ่ม MySQL และคำสั่งนี้ไม่ช่วยอะไรเลย
พอลโล

@ พอลโลมันช่วยได้จริงๆ sudoฉันลืมที่จะเพิ่ม
shukshin.ivan

4
ฉันไม่เข้าใจว่าสิ่งนี้มี 8 upvotes
Parth Thakkar

สิ่งนี้แก้ไขได้สำหรับฉัน ฉันไม่รู้ว่าทำไมมันถึงใช้ได้ แต่มันก็เป็นเช่นนั้น ฉันได้รับข้อผิดพลาดว่าพาร์ติชันเต็มเมื่อพยายามเริ่ม mysql ฉันรันคำสั่งโดยใช้ sudo และ mysql เริ่มต้นได้ดี
กาวิน

ว้าวsudo service mysql restartกำลังบอกว่าทุกอย่างดี แต่การใช้คำสั่งนี้แก้ไขปัญหาได้จริง ฉันไม่เข้าใจความแตกต่าง ...
George Dimitriadis

6

ลองนี้:

sudo service mysql stop
sudo service mysql start

1
ฉันมีปัญหาเดียวกัน 'พาร์ติชันที่มี / var / lib / mysql เต็มเกินไป!' และฉันแก้ไขมันด้วยวิธีนี้!
Steve Dörre

@KasiyA ใช่มันเป็นคำตอบสำหรับคำถาม ( แต่มันก็เป็นเช่นเดียวกับคำตอบที่ได้รับจาก rocketgear เอง) (หยุด / เริ่มต้นที่จะแก้ไขประกาศนี้)
Rinzwind

@Rinzwind เอ่อ ขอโทษ
αғsнιη

ในกรณีของฉันsudo /etc/init.d/mysql startไม่ทำงาน ....
Steve Dörre

3

ในกรณีของฉันข้อผิดพลาดเป็นผลมาจากการเปลี่ยนที่อยู่ IP บนเซิร์ฟเวอร์

cat /var/log/mysql/error.log

150427 23:01:08 InnoDB: 5.5.43 started; log sequence number 11731761
150427 23:01:08 [Note] Server hostname (bind-address): '192.168.1.234'; port: 3306
150427 23:01:08 [Note]   - '192.168.1.234' resolves to '192.168.1.234';
150427 23:01:08 [Note] Server socket created on IP: '192.168.1.234'.
150427 23:01:08 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
150427 23:01:08 [ERROR] Do you already have another mysqld server running on port: 3306 ?
150427 23:01:08 [ERROR] Aborting

การเปลี่ยน

 bind-address       

ใน

 /etc/mysql/my.cnf

เป็น ip ปัจจุบันและรีสตาร์ทเซิร์ฟเวอร์

sudo /etc/init.d/mysql start

แก้ไขปัญหา


2

มีสองปัญหาที่เป็นไปได้กับแพ็คเกจ Mysql:

  1. ปัญหาพื้นที่จริง ๆ :

    ดิสทริบิวชันส่วนใหญ่มีไดเรกทอรี / var ในพาร์ติชันรูทดั้งเดิมซึ่งไม่ใหญ่พอที่จะเก็บข้อมูลในชีวิตจริง พวกเขามักจะสร้างพาร์ทิชันแยกต่างหากสำหรับ / usr ด้วยพื้นที่มากมาย

    ตรวจสอบเรื่องนี้และคุณจะได้รับรายละเอียดและคำตอบของคุณ

    /server/256729/error-the-partition-with-var-lib-mysql-is-too-full

  2. มันเป็นข้อผิดพลาดที่อาจไม่ได้รับการแก้ไขและแก้ไขตามบทความนี้:

    https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.0/+bug/118523


1

ฉันประสบปัญหาเดียวกันในกรณีของฉันมีบริการ mysql อื่นกำลังทำงานอยู่

$ ps -aux | grep mysql
mysql     7241  0.0  5.1 562600 52812 ?        Ssl  13:36   0:02 /usr/sbin/mysql
ubuntu   13580  0.0  0.0  10468   916 pts/0    S+   15:50   0:00 grep --color=au

$ sudo kill  7241

จากนั้นฉันก็เริ่ม mysql

$ sudo /etc/init.d/mysql start
* Starting MySQL database server mysqld                                 [ OK ]

0

ในพาร์ติชั่น/varนั้นมีหลายไดเรกทอรีที่รวบรวมไฟล์จำนวนมากซึ่งสามารถเติมพาร์ติชั่นได้

ในกรณีที่บันทึกของฉันจะถูกบันทึกใน/var/logsการเติม/varป้องกันฉันจากการเริ่ม mysql

ฉันลบบันทึกเก่า ๆ เหล่านั้นและแก้ไขปัญหาของฉันแล้ว หากคุณไม่มีการหมุนบันทึกจะเป็นการดีกว่าที่คุณลอง acerlo เพราะถ้าคุณไม่มีกระบวนการนี้บันทึกสามารถเพิ่มได้มากถึงหลาย GB ในไฟล์เดียว


0

ในกรณีที่ไม่มีของฉันช่วยข้างต้นปัญหาคือการที่/varเป็นจริงเต็มรูปแบบ:

$ df -h
...
/dev/sda3       2.7G  2.7G     0 100% /var

ดังนั้นฉันเพิ่งใช้ncduเพื่อตรวจสอบสิ่งที่ใช้พื้นที่มาก:

sudo ncdu /var

ลบบางสิ่งที่ไร้ประโยชน์ด้วยdเริ่มต้นใหม่

sudo systemctl restart mysql.service

และvoilàทุกอย่างทำงานในขณะนี้


-1

เรียกใช้คำสั่งsudo apt-get --reinstall install mysql-serverเพื่อติดตั้ง MySQL อีกครั้ง มันจะสร้างไดเรกทอรีที่หายไปอีกครั้งและอนุญาตให้คุณเริ่มต้นเซิร์ฟเวอร์อีกครั้ง


นี่คือสิ่งที่ฉันได้รับ: dpkg: dependency problems prevent configuration of mysql-server: mysql-server depends on mysql-server-5.5; however: Package mysql-server-5.5 is not configured yet.ฉันจะใช้ - กำหนดค่าได้อย่างไร
จรวด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.