MariaDB - 온라인 이동/보관 테이블
MySQL의 Syslog 테이블을 "회전"/보관하는 스크립트가 있습니다.이 스크립트:
- Linux 수준에서 "My ISAM" 테이블 파일의 이름을 바꾼 다음 압축합니다.
- MySQL에서 테이블 이름을 바꿉니다.
두 단계는 "온라인"입니다.MySQLd를 재시작할 필요가 없습니다.
이제 마리아DB(Debian Stretch)에 새로운 Syslog 데이터베이스를 구축했습니다.테이블은 My ISAM이 아닌 InnoDB를 사용하고 있습니다.이 스크립트는 파일을 이동한 후 MySQL 내부의 테이블 이름을 변경하는 두 번째 실행에서 실패합니다.
에러 1050 (42S01):'SystemEvents_1' 테이블이 이미 있습니다.
테이블의 참조는 어딘가에 보관됩니다(테이블스페이스 내부 시스템 테이블?).그렇게 하는 걸 막을 수 있을 겁니다
질문: transactional=0으로 테이블을 ARIA 엔진으로 마이그레이션하면 작동합니까?
고마워, 빈스
더 이상은 불가능하다고 생각합니다.제 테이블을 MyISAM(그리고 트랜잭션=0의 아리아)으로 변환했는데 같은 오류 메시지가 나왔습니다.파일 시스템 파일 이름을 직접 바꾸는 대신 내 sqldump를 사용하여 테이블을 내보내는 것이 가장 좋은 방법이라고 생각합니다.편리성은 떨어지지만 선택한 엔진에 상관없이 항상 내 sqdump가 작동합니다.
언급URL : https://stackoverflow.com/questions/47560186/mariadb-online-move-archive-tables
'programing' 카테고리의 다른 글
setjmp/longjmp 및 지역 변수 (0) | 2023.10.17 |
---|---|
부트스트랩 응답 텍스트 크기 (0) | 2023.10.17 |
Oracle에서 저장 프로시저를 팀 단위로 작업할 수 있는 툴? (0) | 2023.10.17 |
Symfony 2: 교리 쿼리 작성기가 있는 관련 없는 테이블의 내부 조인 (0) | 2023.10.17 |
MariaDB Galera Cluster의 비동기 복제 (0) | 2023.10.17 |