오늘 확인해보니 서버 디스크가 거의 꽉 차서 원인을 찾아봤습니다. 두 가지 이유가 발견되었습니다.
1. mysql-bin.000001 파일이 너무 크고
mysql> reset master;
로그를 지우려면
2. ;
1. 데이터베이스의 데이터를 백업합니다.
mysqldump -u root -p --extended-insert --all-databases --add-drop-database --disable-keys --flush-privileges --quick --routines --triggers > /home/all-database.sql //有的文档用的是这样的参数: mysqldump -q -uroot -p --add-drop-table --all-databases --events >/home/all-database.sql
로그인 후 복사
ibdata1이 수백 GB이면 백업 프로세스에 몇 시간이 걸릴 수 있습니다.
2. MySQL 서비스를 중지합니다.
service mysql stop
로그인 후 복사
3. ibdata1, ib_logfile* 및 기타 파일을 삭제합니다.
mv ibdata1 ibdata1.20160419 mv ib_logfile0 ib_logfile0.20160420 mv ib_logfile1 ib_logfile1.20160420
로그인 후 복사
4. my.cnf 구성 파일을 수정합니다.
vi /etc/mysql/my.cnf
로그인 후 복사
[mysqld] 하위 키에 다음 구성을 추가합니다.
innodb_file_per_table = 1
로그인 후 복사
6. MySQL 서비스
service mysql start ps -ef|grep mysql
로그인 후 복사
7. 데이터 복원(데이터 다시 가져오기)
mysql -u root -p Enter password: source /home/all-databaes.sql
로그인 후 복사