웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
Mysql 데이타베이스 백업및 복구(2)...
2002.06.22 11:58
안뇽하세요~ 오늘은 mysql 전체 백업을 하는 방법을 알아보겠습니당...
mysql을 소스 설치가 아닌 RPM으로 설치한 Redhant 7.3이 깔린 Mysql을 기준으로 설명합니당..
음...일단 이 방법은 Root 권한이 있는 분들..즉, 서버 관리를 하시는 분들에게 유용할것 같네요...
우선 두가지 방법이 있는데여..
첫번째방법, - mysql 폴더를 전체 카피 한다.
cp -arv /var/lib/mysql /home/cream/public_html/mysql
/var/lib/mysql 안에 있는 내용들을 전부다 /home/cream/public_html/mysq 로 카피를 하라는
명령 입니다. cp 옵션에 -arv 에 대해서 설명을 하자면,
a : 원본 파일 또는 디렉토리의 속성과 시간 등을 그대로 복사.
r : 디렉토리를 복사할 경우 디렉토리에 포함된 모든 파일, 디렉토리까지 복사한다.
v : 복사되는 내용을 그대로 화면에 출력한다.
이런 내용입니당..
복사한 파일들을 잘 보관하신 후에 새로 설치하신 서버라던지 아니면 DB가 망가져서 다시 복구 하실때
/var/lib/mysql 폴더 안에 있는 내용을 지우신 후에 다시 넣어주고 mysql을 재시작 하시면 됩니다.
두번째방법. - mysqldump를 사용한다.
어떻게 보면 두번째 방법이 더 효율적이기도 하고 관리 하기도 편하다는 생각이 드네요..
이건 제가 쓰고 있는 방법인데요...저는 일주일에 한번씩 자동으로 cron을 돌려서
날짜별로 따로 전체DB를 저장 한답니다. 전체 백업 방법을 알아볼까용?
이 명령은 mysql 루트 권한이 있어야 실행되겠져?
[root@ns /]# mysqldump -uroot -p --all-databases > /home/cream/public_html/mysql/alldb.sql
설명을 하자면 mysqldump는 명령어를 말하구요..
-uroot 는 유저는 root 이고
-p는 패스워드를 지정해주는것이구요..root의 패스워드가 12345일때 -p12345 이렇게 하셔도 됩니다.
--all-databases 요건 데이타베이스에 있는 모든 DB를 지칭합니다.
> 는 백업하는 방향을 나타내구여..
/home/cream/puclic_html/mysql/alldb.sql 의 위치로 alldb.sql 이란 이름으로 저장하라는 의미
입니다.
이렇게 하고 확인을 해보시면 alldb.sql 이라구 딱 나올거에여...
복구 하는 방법.
1. 우선 /var/lib/mysql 안에 있는 파일들을 모조리 지워주시구요.
2. [root@ns /]# mysql -uroot -p -A < /home/cream/public_html/mysql/alldb.sql 하신후
패스워드 입력.
3. mysql 재시작. /etc/rc.d/init.d/mysqld restart (RPM설치일 경우)
이렇게 해주시면 /var/lib/mysql/ 폴더 안에 지웠던 파일들이 새로 생성이 되어 있을거에요..
요렇게 해서 전체백업을 알아봤습니다.
사실 위와 같은 방법은 man 페이지를 이용해서 제가 알게된거랍니다.
서버를 관리 하시는 분들은 정말 man 이란 명령어가 얼마나 도움이 되는지 아실거에요..
정말 유용한 정보랑 옵션이 많거든요...man을 더 잘 사용하시면 위의 방법보다 더 좋은 방법이
나오실것 같네요...
그럼 좋은 정보가 되길 바랍니다..
mysql을 소스 설치가 아닌 RPM으로 설치한 Redhant 7.3이 깔린 Mysql을 기준으로 설명합니당..
음...일단 이 방법은 Root 권한이 있는 분들..즉, 서버 관리를 하시는 분들에게 유용할것 같네요...
우선 두가지 방법이 있는데여..
첫번째방법, - mysql 폴더를 전체 카피 한다.
cp -arv /var/lib/mysql /home/cream/public_html/mysql
/var/lib/mysql 안에 있는 내용들을 전부다 /home/cream/public_html/mysq 로 카피를 하라는
명령 입니다. cp 옵션에 -arv 에 대해서 설명을 하자면,
a : 원본 파일 또는 디렉토리의 속성과 시간 등을 그대로 복사.
r : 디렉토리를 복사할 경우 디렉토리에 포함된 모든 파일, 디렉토리까지 복사한다.
v : 복사되는 내용을 그대로 화면에 출력한다.
이런 내용입니당..
복사한 파일들을 잘 보관하신 후에 새로 설치하신 서버라던지 아니면 DB가 망가져서 다시 복구 하실때
/var/lib/mysql 폴더 안에 있는 내용을 지우신 후에 다시 넣어주고 mysql을 재시작 하시면 됩니다.
두번째방법. - mysqldump를 사용한다.
어떻게 보면 두번째 방법이 더 효율적이기도 하고 관리 하기도 편하다는 생각이 드네요..
이건 제가 쓰고 있는 방법인데요...저는 일주일에 한번씩 자동으로 cron을 돌려서
날짜별로 따로 전체DB를 저장 한답니다. 전체 백업 방법을 알아볼까용?
이 명령은 mysql 루트 권한이 있어야 실행되겠져?
[root@ns /]# mysqldump -uroot -p --all-databases > /home/cream/public_html/mysql/alldb.sql
설명을 하자면 mysqldump는 명령어를 말하구요..
-uroot 는 유저는 root 이고
-p는 패스워드를 지정해주는것이구요..root의 패스워드가 12345일때 -p12345 이렇게 하셔도 됩니다.
--all-databases 요건 데이타베이스에 있는 모든 DB를 지칭합니다.
> 는 백업하는 방향을 나타내구여..
/home/cream/puclic_html/mysql/alldb.sql 의 위치로 alldb.sql 이란 이름으로 저장하라는 의미
입니다.
이렇게 하고 확인을 해보시면 alldb.sql 이라구 딱 나올거에여...
복구 하는 방법.
1. 우선 /var/lib/mysql 안에 있는 파일들을 모조리 지워주시구요.
2. [root@ns /]# mysql -uroot -p -A < /home/cream/public_html/mysql/alldb.sql 하신후
패스워드 입력.
3. mysql 재시작. /etc/rc.d/init.d/mysqld restart (RPM설치일 경우)
이렇게 해주시면 /var/lib/mysql/ 폴더 안에 지웠던 파일들이 새로 생성이 되어 있을거에요..
요렇게 해서 전체백업을 알아봤습니다.
사실 위와 같은 방법은 man 페이지를 이용해서 제가 알게된거랍니다.
서버를 관리 하시는 분들은 정말 man 이란 명령어가 얼마나 도움이 되는지 아실거에요..
정말 유용한 정보랑 옵션이 많거든요...man을 더 잘 사용하시면 위의 방법보다 더 좋은 방법이
나오실것 같네요...
그럼 좋은 정보가 되길 바랍니다..
댓글 5
-
논리에러
2002.06.22 12:32
-
이휘은
2002.06.22 13:10
네..제가 빠트렸네요...
mysqldump -uroot -p --all-databases 가 맞습니다... -
백승희
2002.07.11 13:57
man도 좋지만 단시간에 가장빠른 사용법확인은 해당 명령어 다음에 --help 치면 대부분은 다 나옵니다.
mysqldump --help 엔터
그럼... -
송범섭
2002.09.03 00:30
도대체 어떻게 하라는거야? ㅡㅡ;
어디서 실행하는지 조차 모르는 바보에게
제대로 된 TIP을 가르쳐 주십쇼 -
박정호
2002.12.13 19:01
제목 | 글쓴이 | 날짜 |
---|---|---|
리눅스 서버를 구축해 보자! #1 [11] | 꼬토 | 2002.11.21 |
ab 를 이용한 간편한 아파치 성능 측정 [2] | 정인배 | 2002.11.15 |
윈xp pro 를 net 서버로 바꾸기
[7]
![]() | 정회철 | 2002.11.13 |
사용자 자동 등록 쉘스크립트 [1] | 편리 | 2002.11.05 |
OpenBSD3.2 설치가이드 - 완결 [3] | pravda | 2002.11.02 |
[Apache] 윈도우 NT 계열에 서비스 등록하기
[1]
![]() | 스카이 | 2002.09.08 |
웹호스팅의 꽃 A.P.M.~ 을 알아보자! (1부) [9] | 임현 | 2002.08.25 |
http://도메인/~아이디 를 http://도메인/아이디 로 ^^ [11] | 임현 | 2002.07.31 |
오랜만에 올리는 팁이군요. - 웹호스팅 쉽게해보기! - [8] | 임현 | 2002.07.28 |
특정 파일(ex: mp3,avi,mpg)만 찾아서 자동으로 삭제하기! | 임현 | 2002.06.27 |
Mysql 데이타베이스 백업및 복구(2)... [5] | 이휘은 | 2002.06.22 |
간단팁 서버 Info! [4] | 임현 | 2002.06.21 |
하드디스크의 모든성능을 써버리자! [4] | 임현 | 2002.06.14 |
[알아서 나쁠것없는 10원짜리 팁!] 수십 수백명사용자의 일괄생성 방법! [6] | 임현 | 2002.05.09 |
Apache2.0.35 + php4.3.0-devel 설치하기;; [15] | Cksoft | 2002.04.08 |
리눅스 아주 간단한 사용자 계정 주기-_- [7] | i- | 2002.03.12 |
근사모의 APM_steup3설치 법 [5] | 뽀유★ | 2002.03.01 |
아파치 가상 유저 설정하기 [6] | i- | 2002.02.24 |
에러페이지를 서버관리자가 지정한 페이지로. [1] | teenteenv | 2002.02.21 |
[APM자동설치] APM_Setup 3 ( Apache, PHP4, MySQL, Perl, Tomcat ) [6] | 근땅e | 2002.02.06 |
mysqldump -uroot -p --all-databases >alldb.sql 이렇게 하던지
mysqldump -uroot -p -A >alldb.sql 이렇게 하니까 되네요