MySQL 오류 : / var / lib / mysql이있는 파티션이 너무 찼습니다!

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

이것은 파티션이 거의 다 찼음을 나타냅니다.



답변

마침내 실행하여 문제를 해결했습니다 sudo /etc/init.d/mysql start. 방금 sudo명령 앞에 삽입해야했습니다 .


답변

이 시도:

sudo service mysql stop
sudo service mysql start

답변

제 경우에는 서버의 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

문제를 해결했다


답변

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


답변

나는 같은 문제에 직면했다. 내 경우에는 다른 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 ]

답변

파티션에서 /var 에는 을 채울 수있는 많은 파일을 축적하는 여러 디렉토리가 있습니다.

내 경우에는 로그가 /var/logs채워져 저장 됩니다./var mysql을 시작하지 못했습니다.

오래된 로그 중 일부를 삭제하면 문제가 해결되었습니다. 로그 회전이없는 경우이 프로세스가 없으면 로그가 단일 파일에 많은 GB를 추가 할 수 있으므로 acerlo를 사용하는 것이 좋습니다.


답변

제 경우에는 위의 어느 것도 도움이되지 않았습니다. 문제 /var실제로 가득 찼습니다.

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

그래서 방금 ncdu너무 많은 공간을 차지하고있는 것을 확인하는 데 사용 했습니다.

sudo ncdu /var

으로 d다시 쓸모없는 내용을 삭제하고 다시 시작

sudo systemctl restart mysql.service

그리고 voilà, 모든 것이 지금 작동합니다.