오라클 데이터베이스 서버 엔진 레지스트리까지 클린 삭제, 재설치 오류 이젠 안녕!
오라클 데이터베이스 설치나 업그레이드할 때마다 ‘제대로 지워야 하는데’ 걱정부터 앞서지 않으세요? 저도 얼마 전 재설치하려고 했다가 잔여 파일 때문에 꼬이는 바람에 식은땀을 흘렸어요. 그냥 제어판에서 삭제하는 건 임시방편일 뿐, 오라클 데이터베이스 서버 엔진부터 윈도우 레지스트리까지 꼼꼼하게 청소해야 다음 설치가 깔끔하게 진행되더라고요. 오늘은 제가 직접 겪은 경험을 바탕으로, 재설치 오류를 확실하게 막아줄 오라클 완전 삭제 비법을 자세하게 알려드릴게요.
이 방법만 따라 하시면 묵은 때가 싹 벗겨진 듯한 후련함을 느끼실 수 있을 거예요. 핵심은 서비스 중지, 공식 삭제 도구 사용, 그리고 숨어있는 레지스트리 및 파일 잔재 제거입니다. 자, 이제 골치 아픈 흔적들을 함께 지워봅시다!
왜 단순 삭제만으로는 부족할까요? 서비스 중지부터 시작!
처음에 저는 단순히 프로그램 추가/제거에서 오라클을 지웠었어요. 그런데 재설치할 때마다 이상한 에러를 뱉어내더라고요. 알고 보니 윈도우 서비스나 레지스트리에 오라클 데이터베이스 서버 엔진 관련 흔적이 남아있기 때문이었습니다. 이 잔여물들이 새 설치를 방해하는 거죠. 그러니 가장 먼저, 현재 실행 중인 오라클 관련 프로세스를 모두 멈춰야 합니다.
윈도우 기준으로, ‘윈도우 키 + R’을 눌러 services.msc를 실행하거나, 작업 관리자의 ‘서비스’ 탭으로 이동하세요. 여기서 이름 앞에 ‘Oracle’이 붙은 모든 서비스(예: OracleServiceXE, OraDB19cListener 등)를 찾아서 마우스 오른쪽 버튼을 누르고 ‘중지’를 선택해 주세요. 혹시 리눅스 환경이라면, systemctl stop 명령어 등을 사용해 오라클 프로세스를 안전하게 종료해야 합니다. 이 작업이 바로 깔끔한 클린 삭제의 첫 단추랍니다.
deinstall.bat, 오라클 공식 청소 도구 활용하기
서비스를 멈췄다면, 이제 오라클이 공식적으로 제공하는 삭제 도구를 이용할 차례입니다. 이 도구가 수동으로 지우기 어려운 데이터베이스 구성 요소와 인벤토리 정보를 효과적으로 정리해 줍니다.
설치했던 오라클 홈 폴더 경로로 이동하세요. 보통은 C:app사용자명product버전dbhome_1deinstall 이런 식일 거예요. 이 deinstall 폴더 안에 있는 deinstall.bat 파일을 반드시 관리자 권한으로 실행해야 합니다. 명령 프롬프트 창이 뜨면 안내에 따라 필요한 정보(예: 데이터베이스 이름)를 입력하고 삭제를 진행하세요. 이 도구 덕분에 지워야 할 많은 파일들을 자동으로 처리할 수 있어 작업이 훨씬 수월해집니다.
만약 윈도우가 아닌 서버 환경에서 DB를 먼저 지워야 한다면, DBCA(Database Configuration Assistant)를 실행한 뒤 ‘Delete database’ 옵션을 선택하여 데이터베이스 자체를 먼저 제거해 주세요. 이렇게 하면 오라클 데이터베이스 서버 엔진의 구성 요소들이 먼저 정리되어 deinstall 과정이 더욱 깔끔해집니다.
레지스트리 깊숙한 곳의 잔재까지 찾아 지우는 법
deinstall을 마쳤어도, 윈도우 레지스트리에는 오라클의 흔적이 깊숙이 남아있을 수 있습니다. 이 잔재를 제거하는 것이 재설치 성공률을 높이는 핵심 단계예요. 레지스트리 수정은 위험할 수 있으니, 시작하기 전에 꼭 백업해 두시길 권장합니다.
윈도우 검색창에 regedit를 입력하여 레지스트리 편집기를 실행합니다. 그리고 아래 경로들을 따라가서 ‘Oracle’ 관련 키들을 모조리 지워주세요.
| 경로 | 삭제 대상 | 비고 |
|---|---|---|
| HKEY_LOCAL_MACHINESOFTWARE | Oracle 폴더 전체 | 주요 소프트웨어 정보 |
| HKEY_LOCAL_MACHINESOFTWAREWOW6432Node | Oracle 폴더 전체 | 64비트 환경의 32비트 잔여물 |
| HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices | Oracle로 시작하는 모든 키 | 서비스 정의 키 |
| HKEY_CLASSES_ROOT | Ora* 또는 Orcl* 키 | 파일 연결 정보 |
레지스트리까지 지우고 나면, ‘이젠 정말 다 지웠겠지?’ 안심이 되실 거예요. 리눅스 서버 환경이라면 /etc/oratab 파일이나 /etc/oraInst.loc 파일도 삭제해야 깔끔합니다.
남은 파일과 폴더, 숨겨진 찌꺼기까지 제거하기
레지스트리를 청소했으니, 이제 물리적인 디스크 공간을 정리할 차례입니다. 오라클은 여러 위치에 파일을 남기므로, 탐색기를 열어 수동으로 모든 Oracle 데이터베이스 서버 엔진 관련 폴더를 제거해야 합니다.
- C:app (오라클 설치 기본 경로이자 ORACLE_BASE가 위치한 곳입니다.)
- C:Program FilesOracle, Program Files (x86)Oracle
- C:ProgramData 폴더 내에 있는 ‘Oracle’ 관련 폴더 (ProgramData는 숨김 폴더일 수 있습니다.)
- 사용자 폴더 (C:Users사용자명) 내의 AppDataLocal, AppDataRoaming 등에도 숨겨진 ‘Oracle’ 폴더가 있는지 확인하고 삭제합니다.
특히 리눅스 서버에서는 $ORACLE_HOME과 $ORACLE_BASE 경로를 rm -fr 명령어로 제거해 주시고, /var/opt/oracle 같은 시스템 디렉터리도 놓치지 않고 확인해야 합니다. Oracle 삭제 데이터베이스 작업은 번거롭지만, 이 과정을 거쳐야만 다음 설치 시 예상치 못한 문제를 피할 수 있습니다.
마무리 단계: 환경 변수 정리와 최종 확인
모든 파일과 레지스트리 정리가 끝났다면, 마지막으로 환경 변수를 확인해야 합니다. 시스템 환경 변수 중 PATH나 CLASSPATH 등에 오라클 관련 경로가 남아있다면 모두 제거해 주세요. 이 변수들이 남아있으면 새로운 오라클 설치 시 혼란을 야기할 수 있습니다.
이제 시스템을 재부팅하세요. 재부팅 후, 명령 프롬프트(CMD)를 열고 sqlplus를 입력해 보세요. 만약 “내부 또는 외부 명령, 실행할 수 있는 프로그램 또는 배치 파일이 아닙니다.” 라는 메시지가 뜬다면, 오라클 잔여물이 깨끗하게 제거되었다는 뜻입니다. 이처럼 Oracle 삭제 데이터베이스 서버 엔진 레지스트리 클린 작업은 다음 설치를 위한 중요한 발판입니다.
완벽하게 모든 흔적을 지우셨다면, 이제 새로운 Oracle 데이터베이스 서버 엔진을 설치하셔도 충돌 없이 깔끔하게 진행될 거예요. 저도 이 과정을 통해 지긋지긋했던 재설치 오류에서 벗어날 수 있었습니다. 여러분도 성공적으로 클린 삭제를 마치셨기를 바라며, 다음 설치는 꼭 한 번에 성공하시길 응원합니다!
자주 묻는 질문
deinstall 도구를 사용했는데도 레지스트리를 지워야 하나요?
네, 공식 도구가 놓친 잔여물이 남을 수 있습니다.
레지스트리 백업은 어떻게 하는 게 좋을까요?
regedit에서 내보내기로 전체 백업이 가능합니다.
리눅스에서 ORACLE_HOME을 지울 때 주의할 점은 무엇인가요?
rm -fr 사용 시 경로를 반드시 재확인해야 합니다.