2021. 7. 20. 16:35

맥에서 SQLPro Studio 로 오라클 접속하는데...

 

ORA-21561 : OID generation failed  에러가 자꾸 뜨더라.

 

 hosts 파일에 localhost 이름을 넣어줘야 한다.

 

이전에 내 맥북의 hostname를 알아야한다.

 

1. 터미널 열기

2. $> hostname 입력

3. 예로 tyson-Macbook.local 이런식으로 뜰거다.

4. $> sudo vi /etc/hosts 입력 해서 host파일열기

5. 암호입력후 접속

6. 127.0.0.1 localhost 라고 써는곳에서 i 눌러서 수정 

7. 

127.0.0.1 localhost localhost.localdomain tyson-Macbook.local

127.0.0.1 localhost localhost.localdomain  [내호스트네임]

로 입력해준다.

8. esc 누른후 ":wq" 입력해서 저장후 나가기.

9. 그리고, 재접속하면 접속됨.

 

Posted by Tyson
2018. 4. 24. 11:10

오라클 자동백을 하기 위해서 쉘 스크립트를 만들어서 쉘을 돌리게 백업하는 방법이다.


> vi backup.sh


치고 들어가서, 안에

밑에꺼를 써준다.

su - oracle -c "exp db유저/db패스워드 file=/home/oracle/backup/backup_`date +%Y%m%d`.dmp log=/home/oracle/backup/log/backup_log_`date +%Y%m%d`.log"


orcle 계정에서

 c 커멘드를 쓴다.

 exp 오라클 백업명령어

 유저명/유저패스워드 쓰고, 


file=은 저장 경로 및 파일명 를 적어주면 된다.

뒤에 `date +%Y%m%d`.dmp  이거는 파일명뒤에 날짜를 입력해준다.

예 ) backup_20180424.dmp 이렇게 저장된다.

여기에쓰는 콜론은 `이거다. 이거는 숫자1키옆에 있는 ~ 여기에 있는 콜론이다.

엔터옆의 " ' 이 아니다.

이거때문에 처음에 계속 에러 떴음.


그리고,  쉘 스크립트를 실행해 본다.

> ./backup.sh

또는 

> sh backup.sh 

하는데, 안 먹힐때가 있다.


이건 쉘 스크립트 실행권한을 줘야한다.


> chmod +x /home/oracle/backup/backup.sh

또는

> chmod +rx /home/oracle/backup/backup.sh


이렇게 해주고.

> ./backup.sh

하면 먹힌다. 


근데, 갑자기 


EXP-00056: ORACLE error 21561 encountered

ORA-21561: OID generation failed

에러를 토해낸다.

이거 해결법은 아래 포스트에 있다.


http://tyson.tistory.com/112




근데, 또 아래와 같은 에러가 뜬다.


Connected to: Oracle Database 11g Release 11.2.0.4.0 - 64bit Production

EXP-00028: failed to open /home/oracle/backup/backup_20180424.dmp for write

Export file: expdat.dmp >



이건, 오라클이 폴더권한이 없어서 그런거다.


그래서 위 경로 폴더에 777권한을 준다.


>chmod 777 /home/oracle/backup

>chmod 777 /home/oracle/backup/log


이렇게 준다.


그리고 다시 

> ./backup.sh

실행했을때, 자동으로 실행이 완료되면 스크립트 만들기는 끝난거다.



여기까지 하면 이제 cron에 등록만 해주면 된다.


크론에 등록법은 다음 포스트에서~

http://tyson.tistory.com/114



Posted by Tyson
2018. 4. 24. 10:49

오라클 백업시 (exp) 실행시 에러


Export: Release 11.2.0.4.0 - Production on Tue Apr 24 10:31:03 2018


Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.



EXP-00056: ORACLE error 21561 encountered

ORA-21561: OID generation failed


이란 에러가 계속떠서, 쉘 스크립트가 자동 실행이 안되는거다.


host파일에서 아이피 적고, 호스트 이름을 적어줘야한다.


vi /etc/hosts 


치면, 호스트 파일에 들어간다.


거기에서 내 아이피 호스트 이름을 써주면 된다.


예 :


192.168.0.10 TESTSERVER 


아이피 호스트이름(TESTSERVER)


이렇게 해주면 된다.


Posted by Tyson