### SSH + rsync 로 백업 하기

    테스트 환경: a: 172.16.98.130 b:172.16.98.132 vmware , centos5.2
    


# 설정

a서버: ssh key file 생성

    ssh-keygen -d
    그냥 엔터

 

b서버로 복사
cd /root/.ssh/
scp -p root@172.16.98.130:/root/.ssh/id_dsa.pub ./authorized_keys2

 
# 테스트

a서버 /home/ 자료를 b서버 /home/test 로 옮긴다.

a서버 /home 밑 자료들
[root@localhost home]# ls
1  2  3  byoungguk

rsync -azv -e ssh 172.16.98.130:/home/* /home/test

[root@test1 byoungguk]# rsync -azv -e ssh 172.16.98.130:/home/* /home/test
root@172.16.98.130's password:
receiving file list ... done
1
2
3

sent 86 bytes  received 286 bytes  106.29 bytes/sec
total size is 333  speedup is 0.90


신고
크리에이티브 커먼즈 라이선스
Creative Commons License

WRITTEN BY
김병국
유용했던 자료를 기록해 두었습니다. 도움이 되시길~~~ Welcome! I started this blog as a way to give back to all of the other system administrators who have taught me something in the past. Writing these posts brings me a lot of enjoyment and I hope you fun

받은 트랙백이 없고 , 댓글이 없습니다.
secret

목적:

백업되지 않은 데이터 파일 완전복구
장애:

닫힌 백업 이후 테이블 스페이스 1개 생성했다.
그런데 그 테이블을 실수로 지워버렸다.

테이블스페이스 새로 생성


SQL> create tablespace test1 datafile '/oracle/oradata/orcl/test1.dbf' size 3M;

Tablespace created.


SQL> create user test1 identified by test1 default tablespace test1 temporary tablespace temp quota unlimited on test1;

User created.


SQL> grant connect to test1;

Grant succeeded.

SQL> grant resource to test1;

Grant succeeded.

SQL> connect test1/test1
Connected.


SQL> create table test1(id number);

Table created.


SQL> connect /as sysdba
Connected.
SQL> alter system switch logfile;

System altered.


SQL> connect test1/test1
Connected.

SQL> insert into test1 values(1);

1 row created.

SQL> commit;

Commit complete.

SQL> connect /as sysdba
Connected.
SQL> alter system switch logfile;

System altered.


SQL> !ls /oracle/oradata/orcl | grep test1
test1.dbf

SQL> !rm /oracle/oradata/orcl/test1.dbf  ---> 장애 발생


복구 과정:

SQL> alter tablespace test1 offline immediate;

Tablespace altered.


SQL> select * from v$recover_file;

     FILE# ONLINE  ONLINE_ ERROR                   CHANGE# TIME
---------- ------- ------- -------------------- ---------- ---------
         8 OFFLINE OFFLINE FILE NOT FOUND                0

SQL> select h.tablespace_name, d.name, h.error from v$datafile d, v$datafile_header h where d.file# = h.file#;

TABLESPACE_NAME NAME                                     ERROR
--------------- ---------------------------------------- --------------------
SYSTEM          /oracle/oradata/orcl/system01.dbf
SYSAUX          /oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1        /oracle/oradata/orcl/undotbs01.dbf
USERS           /oracle/temp/users01.dbf
EXAMPLE         /oracle/oradata/orcl/example01.dbf
GUK             /oracle/oradata/orcl/guk.dbf
TEST            /oracle/oradata/orcl/test.dbf
                /oracle/oradata/orcl/test1.dbf           FILE NOT FOUND   ---> 이 파일이 장애이다.

8 rows selected.


데이터 파일 재생성 

SQL> alter database create datafile '/oracle/oradata/orcl/test1.dbf' as '/oracle/oradata/orcl/test1.dbf';

Database altered.


recover 명령으로 복구

SQL> recover tablespace test1;
Media recovery complete.

복구된 파일 온라인으로 변경

SQL> alter tablespace test1 online;

Tablespace altered.

SQL> select * from v$recover_file;

no rows selected

SQL> connect test1/test1
Connected.
SQL> select * from test1;

        ID
----------
         1



저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

WRITTEN BY
김병국
유용했던 자료를 기록해 두었습니다. 도움이 되시길~~~ Welcome! I started this blog as a way to give back to all of the other system administrators who have taught me something in the past. Writing these posts brings me a lot of enjoyment and I hope you fun

받은 트랙백이 없고 , 댓글이 없습니다.
secret