[server] 이 파일들은 무엇이며 수동으로 삭제할 수 있습니까?

[root@jiaoyou mysql]# pwd
/var/lib/mysql
[root@jiaoyou mysql]# ls -ls
338256 -rw-rw---- 1 mysql mysql 346030080 2010-04-22 08:08 ibdata1
626812 -rw-rw---- 1 mysql mysql 641222072 2010-01-26 07:17 mysql-bin.000008
316892 -rw-rw---- 1 mysql mysql 324173772 2010-03-25 12:51 mysql-bin.000009
52724 -rw-rw---- 1 mysql mysql  53931666 2010-04-12 12:13 mysql-bin.000010
10136 -rw-rw---- 1 mysql mysql  10359639 2010-04-22 08:32 mysql-bin.000011

mysql> SHOW BINARY LOGS;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000008 | 641222072 |
| mysql-bin.000009 | 324173772 |
| mysql-bin.000010 |  53931666 |
| mysql-bin.000011 |  10360680 |
+------------------+-----------+

이 파일은 ibdata1, mysql-bin.000008그리고 mysql-bin.000009나 수동으로 그 중 일부를 삭제하는 … 너무 많은 내 공간을 차지하고, 그것은 확인 될 것인가?

업데이트
MySQL의 마스터 / 슬레이브를 사용하고 있지 않습니다. 모든 바이너리 파일을 삭제하고 비활성화하는 방법은 무엇입니까?



답변

그것들은 mysql bin 로그입니다. rm으로 서버를 삭제하면 서버가 심각하게 자극을받을 수 있습니다.

대신, PURGE BINARY LOGS TO 'mysql-bin.010';루트 mysql 사용자로 사용하여 파일을 안전하게 삭제하십시오.

자세한 내용은 찾을 수 있습니다 여기에 문서에.


답변

다음은 mysql 서비스의 로그 파일입니다. /etc/my.cnf 파일을 업데이트하여 설정을 사용자 정의 할 수 있습니다

디스크 공간을 차지하는 경우 유지하려는 일 수에 따라 로그를 자동으로 지우도록 설정을 추가하십시오.

예를 들어 아래 설정은 90 일보다 오래된 모든 로그를 삭제합니다.

**expire_logs_days=100**

이 설정을 반영하려면 mysql 서비스를 다시 시작해야합니다

/etc/init.d/mysql restart

도움이 되었기를 바랍니다


답변

mysql-bin파일 중 하나 거래 내역 또는 복제의 목적을 위해 모두 전형적으로 바이너리 로그입니다. 이진 로깅을 비활성화하려면 log-bin*cnf 에서 행을 주석 처리하면 됩니다. log-slave-updates활성화 된 경우에도 주석 처리해야합니다.

ibdata*파일은 innodb_data_file_path설정으로 지정된 InnoDB 테이블 스페이스의 일부입니다 . InnoDB 테이블이없고 먼저 skip-innodbcnf에서 사용하여 InnoDB를 비활성화하지 않는 한 삭제하지 않는 것이 좋습니다 .


답변

로깅을 완전히 비활성화하려면 구성 파일 (일반적으로 /etc/my.cnf)에서 log-bin 값을 주석 처리해야합니다.

#log-bin = /var/log/mysql/mysql-bin.log

ibdata1 파일에는 실제 데이터베이스가 포함되어 있다고 생각합니다 .innodb를 사용하지 않으므로 확실하지 않습니다. 따라서 해당 데이터베이스를 제거하지 않는 것이 좋습니다. “PURGE BINARY LOGS TO …”명령은 이진 로그를 제거합니다.


답변