Intro
안녕하세요 초보 DBA 다뉴입니다.
요번에 만나게 된 오류에 대해서 이야기 해볼까 하는데요.
MariaDB 운영서버 -> MariaDB DR서버로 자동 백업 / 원격지 복원하는 과정에서 발생되었습니다.
기존에 잘 운영되고있는 로직이였는데요.
DR서버에 잠시 테스트한다고 이것저것 건드렸다가 문제가 발생하게 되었습니다.
어떤 오류?
ERROR 1005 (HY000) Can't create table [Database Name].[Table Name]
테이블을 생성 할 수 없다고 나오는 데요, 뒤에 에러 코드가 추가로 더 있었습니다.
(errno: 184 "Tablespace already exists")
(errno: 184 "Tablespace already exists") 이라는 것을 보니
TableSpace에 이미 해당 테이블이 존재하여 만들려고 하는 테이블을 만들 수가 없는것 같습니다.
이유는?
제가 이것저것 테스트 하다가 실수로 DR서버의 MariaDB 데이터 폴더의 권한을 잘 못 변경하였습니다.
그래서 해당 데이터 폴더에 복원을 하던 도중
첫 번째 데이터베이스의 첫번째 테이블 삭제/생성 과정에서
TableSpasce에 해당 이름으로 이미 자리를 잡게 된거 같네요.
해결 방법
권한 설정
우선 문제가 되었던 폴더 권한 설정을 변경하였습니다.
mysql 디렉토리에 소유주 권한을 변경
--권한 설정 변경
chown -R mysql:mysql mysql
Table Space 확보
그리고 직접적으로 문제가 되었던 Table Space에 이미 자리 잡고있는 파일을 삭제하였습니다
데이터가 들어있는 mysql/[Database Name] 디렉토리로 이동 하여, [TableName].idb 파일을 삭제하였습니다.
Outro
위 내용으로 오류를 해결하였는데요.
리눅스에 아직 익숙치 않아 권한 설정등에 실수가 만든 MariaDB 데이터베이스 오류였습니다.
다른 실수가 다른곳에서 오류를 만들다 보니 원인 파악이 많이 어렵다고 느껴지네요.
이상 다뉴였습니다.
감사합니다.
'DATABASE > MariaDB' 카테고리의 다른 글
[MariaDB][Linux] MaxScale 설치 - Load Balancer (1) | 2023.08.03 |
---|---|
[MariaDB][Linux] Galera Cluster 설치 - 이중화 / HA 구성 (1) | 2023.07.26 |
[MariaDB] 현재 Process 보는 방법 및 모니터링 팁 (0) | 2023.07.22 |
[MariaDB][Error] Can't lock aria control file 'aria_log_control' for exclusive use, error: 11. (3) | 2023.07.21 |
[MariaDB] mysqldump를 활용한 백업의 모든 것과 복원 (8) | 2023.07.19 |
[MariaDB] SQL 파일 실행 - 대용량 insert 문 (0) | 2023.07.17 |
[MariaDB][Linux] MariaDB 설치 - Server/Client 기본 설치 방법 (0) | 2023.07.15 |
[DBA][MariaDB] 대용량 데이터 삭제 - 실패 경험과 작업 요령 (2) | 2023.07.12 |