2015.02.16 23:44

스쿨호스팅으로 홈페이지 서버 이전하기

그누보드로 제작한 홈페이지를 기준으로 했을 때

 

 

wonjustory.com이라는 사이트는 현재 카페24의 가상서버호스팅에서 작동하고 있다. 이걸 이번에 새로 가입한 스쿨호스팅의 가상서버로 이전 하려고 한다.

 

 

1. 홈페이지 파일 통째로 압축하기

tar 명령을 이용하면 어렵지 않게 홈페이지를 통째로 압축 할 수 있다. 이때 중요한 건 각 디렉토리나 파일의 퍼미션까지 함께 유지하면서 압축 해야 한다는 것이다.

 

SSH2을 이용해 서버에 원격 접속한다. 필자는 SecureCRT라는 프로그램을 이용하는데 텔넷 프로그램은 무료도 많이 있으니 어떤 것을 사용해도 무관하다.

 

서버를 이전 할 때는 가능하면 본 서버와 이전하려는 서버의 환경을 최대한 똑같게 설정하는 것이 좋다. 다행히도 카페24와 스쿨호스팅의 서버 환경은 매우 비슷하다. 사용자는 계정 정보만 통일 시켜 주면 이전하는데 큰 어려움이 없다.

즉, DB 계정 정보라던가 리눅스 사용자 계정 정보를 똑같이 설정한다.

예를 들어 원본 서버의 DB 계정과 비밀번호, 이름이 test / 1234 / testdb 이렇다면 새 서버에도 가능하면 똑같은 정보로 DB를 생성하는 것이 추가 작업이 필요 없이 간단히 서버를 이전 할 수 있다.

 

만약 그럴 여건이 되지 않는다면 파일을 새 서버로 복사 한 후에 DB connect 정보를 변경해 주어야 한다.

 

파일을 압축 할 때 사용하는 tar 사용 법은 http://ziumb.tistory.com/81를 참고하자.

원본 서버가 카페24라고 할 때 홈페이지 파일이 있는 home 디렉토리로 이동한다. 필자가 옮기려고 하는 홈페이지 파일은 /home/wonjustory 이 경로에 들어있다.

]# cd /home/wonjustory

 

이 경로 안에는 www라는 디렉토리가 있는데 이 디렉토리를 통째로 압축한다. (이전하려는 새 서버에도 홈디렉토리에 www라는 서브 디렉토리를 생성한다. 계정 추가 방법은 http://ziumb.tistory.com/83를 참고한다.)

 

wonjustory]# tar cvfpz wonjustory.tar www

 

파일 압축이 끝나면 ll 명령으로 확인 한다. 현재 경로에 wonjustory.tar 이라는 파일이 있다면 성공이다. 만약 오류가 있거나 파일이 생성되지 않았다면 저장공간이 부족해서 발생하는 것일 수도 있다. 그런 경우엔 불필요한 파일은 삭제하고 백업 공간으로 잠시 옮겨 공간을 확보한다.

 

 

 

 

2. 압축한 파일을 클라이언트(PC)로 내려받기 한다. 

FTP로 서버에 접속해 보면 압축 한 파일이 존재한다. 이 파일을 내 컴퓨터로 내려받기 한다. wget을 이용하는 방법이 있긴 하지만 설명이 복잡하니 FTP을 이용하기로 한다.

 

3. 데이터베이스 통째로 백업받기

이제는 DB를 통째로 백업 받아서 내 컴퓨터에 저장한다. 이 때는 phpMyAdmin을 이용하거나 mysqldump 명령을 이용한다. DB 백업과 복구는 http://ziumb.tistory.com/85를 참고한다.

wonustory]# mysqldump -u아이디 -p패스워드 wonjustory > wonjustory.sql

 

 

wonjustory라는 데이터베이스를 wonjustory.sql이라는 파일로 모두 백업한다. 

 

 

 

wonjustory.sql이라는 백업 파일이 생겼다. 이 파일을 내 컴퓨터로 내려받기 한다.

mysql 명령이 익숙하지 않다면 phpMyAdmin을 이용하자. http://www.phpmyadmin.net/에서 서너 단계 구버전의 phpMyAdmin 파일을 내려받기 한 후 백업하려는 계정에 업로드 하면 바로 사용이 가능하다. phpmyadmin 설치 방법은 다른 블로그를 참고하자.

 

 

wonjustory.sql.zip은 phpmyadmin으로 백업한 파일이다. wonjustory.tar은 홈페이지 파일을 통째로 압축 한 파일이다. 필자는 ziumsoft.com 홈페이지도 이전해야 하기 때문에 다른 홈페이지도 같이 서버 이전을 진행 중이다. 이렇게 백업한 파일을 이제는 새 서버로 이전하면 된다.

 

 

 

 

4. 새 서버에 계정 준비하기

필자는 스쿨호스팅 가상서버로 홈페이지를 이전하려고 한다. 일단 서비스를 처음 가입하게 되면 root 외에는 사용자가 없다. wonjustory라는 사용자를 추가하고 아파치의 httpd.conf를 수정한다.

 

http://ziumb.tistory.com/83

위의 포스팅에 계정 추가와 아파치 설정 방법이 설명 돼 있다. phpmy라는 사용자 대신 내 계정 이름으로 등록한다.

 

5. 새 서버에 백업한 파일 업로드 하기

FTP를 이용해 스쿨호스팅(새 서버)에 등록한 계정으로 접속한다. (홈페이지를 이전할 계정)

 

서버에 업로드한 상태. 파일 두 개가 있다. sql 파일은 zip으로 압축이 되어 있다면 반드시 압축을 풀고 sql 파일을 업로드 해야 한다. wonjustory.tar은 tar 명령을 이용해 압축을 풀면 파일은 알아서 복구가 된다. sql 파일은 phpMyAdmin으로 복구하면 편하지만 이 프로그램이 없다면 mysqldump를 이용해 복구한다.

 

< ! > 집중

원본 서버였던 카페24에서 계정의 홈 디렉토리에 홈페이지 파일이 들어갈 서브 디렉토리의 이름은 www였다. 이전할 새 서버(스쿨호스팅)에서도 홈페이지에 올려질 서브 디렉토리의 이름을 www로 한다.

 

5. 압축을 풀어서 파일을 복구한다.

 

SSH2로 원격 접속해서 복구하려는 계정으로 이동한다. 파일 두 개가 보인다. 일단 wonjustory.tar의 압축을 푼다.

wonjustory]# tar xvfpz wonjustory.tar

압축은 금방 풀린다. ㅡ,.ㅡ

 

 

퍼미션까지 모두 유지 된 상태로 파일이 복구 되었다.

 

6. 데이터베이스를 생성한다.

이제 wonjustory라는 데이터베이스를 생성해야 한다. 데이터베이스를 생성 할 때는 원본 서버에서 사용하던 계정 정보와 똑같이 한다. (아이디와 비밀번호, 데이터베이스 이름)

 

http://ziumb.tistory.com/84 데이터베이스 생성 방법은 이 곳에 설명이 되어 있다.

mysql> use mysql;

mysql> CREATE DATABASE 디비명 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

mysql> insert into user (host, user, password) values('%', '디비명', password('비밀번호'));
mysql> flush privileges;

mysql> GRANT ALL PRIVILEGES ON 디비명.* TO 사용자@localhost IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
mysql> flush privileges;

grant로 접근 권한을 줄 때는 비빌번호에 password()라는 함수를 사용하지 않는다.

 

7. 데이터베이스를 복구한다.

]# cd /home/wonjustory

홈 디렉토리로 이동

 

wonjustory]# mysql -u사용자 -p비밀번호 데이터베이스이름 < wonjustory.sql

데이터베이스 복구

 

 

 

 

 

홈페이지 이전 작업은 여기까지 끝이 났다.

앞으로 해야 할 것은 도메인의 네임서버를 변경해야 한다. 현재 wonjustory.com의 네임서버는 카페24의 주소로 돼 있다. 이걸 스쿨호스팅의 네임서버로 변경해 주어야 새롭게 이전한 서버의 홈페이지가 정상적으로 접속이 되는지 확인 할 수 있다.

 

급하게 확인 해야 한다면 httpd-vhosts.conf에서 ServerName으로 등록한 도메인에 서브도메인을 설정해서 홈페이지를 연결 시킬 수 있다. 필자는 ziumsoft.com이 ServerName으로 등록 되어 있기 때문에 가상 서버를 설정 할 때 wj.ziumsoft.com 등으로 주소를 지정하면 바로 연결이 가능하다. 하지만 서버를 완전히 이전하는 만큼 도메인의 네임서버를 변경하고 확인하는 것이 보다 확실 할 것이라고 여겨진다.

 

새 서버로 네임서버가 적용되려면 최소한 24시간 이상은 기다려야 한다.

 

만약 그누보드로 제작한 홈페이지인데 새 서버의 데이터베이스 계정이 원본 서버와 다르다면 홈페이지 /에 dbconfig.php라는 파일이 있다. 이 파일을 열어 데이터베이스 정보를 수정해야 한다.

 

 

 

홈페이지 서버 이전을 모두 끝내고 도메인의 네임서버도 변경해 주었다면 새 서버(스쿨호스팅)의 가상서버호스팅관리에서 이전한 홈페이지의 도메인을 등록해야 한다.

 

 

 

MySQL 백업과 복구 http://ziumb.tistory.com/85

MySQL 데이터베이스 생성 http://ziumb.tistory.com/84

리눅스에 계정 생성하고 홈페이지 연결하기 http://ziumb.tistory.com/83

 

        

Trackback 0 Comment 4
  1. BoniK 2015.06.17 09:45 신고 address edit & del reply

    포스팅하신 글 잘봤습니다.
    질문이 있는데 스쿨호스팅 가상 서버호스팅은 속도가 어떤가요?
    그리고 저는 서버 전문가가 아니라 리눅스 명령어는 하나도 모르는데 그냥 다른 곳에서 운영하던 사이트 (웹호스팅)를 스쿨호스팅 가상서버호스팅으로 이전하려면 많이 어려울까요?

    • ZIBSIN 2015.06.17 11:13 신고 address edit & del

      저의 다른 포스팅에는 카페24의 가상서버 설정에 관한 것도 있습니다.
      웹프로그래머들이 가장 선호하는 서버 임대 업체가 아마 카페24와 스쿨호스팅일 것입니다.
      카페24와 스쿨은 사양이 거의 비슷합니다.
      저는 카페24의 보급형을 사용하다 속도가 느려서 스쿨로 옮겼지만 다른 사용자는 카페24가 더 낫다고 하는 사람도 있기 때문에 VPS 특성상 서버를 공유해서 사용하는 이웃 사용자들을 잘 만나야 할 거 같습니다.
      서버 관리 메뉴는 카페24가 더 좋다고 봅니다.
      그래서 리눅스 명령을 잘 모른다면 카페24를 추천드립니다.
      리눅스 명령을 모르는 상황에서 운영중인 홈페이지를 이전 한다는 건 어려운 일입니다.
      적어도 압축 명령과 퍼미션의 이해, DB 백업과 복구 정도는 이해 하셔야 합니다.
      DB는 phpMyAdmin을 이용하면 간단하고 자료 파일은 tar 명령을 이용해서 이전 하셔야 합니다.
      http://ziumb.tistory.com/81 여기를 참고 하시기 바랍니다.

  2. BoniK 2015.06.17 14:33 신고 address edit & del reply

    이웃 사용자들을 잘만나야 속도가 잘 나오는거군요. 웹호스팅보다 속도면에서 훨씬 낫다는 보장이 없는거겠네요. 웹호스팅 쓰면서 PhpMyAdmin으로 DB백업, 복구는 많이 해봤는데 포스팅하신 다른 글을읽어보니 PhpMyAdmin도 그냥 나오는게 아니군요.ㅎㄷㄷ 열심히 공부하면 할 수는 있을 것 같은데 속도가 보장된게 아니라서 포기하는게 낫다는 판단을 하게 됐네요. 바쁘실텐데 친절하게 답변주셔서 정말 감사합니다. 좋은 하루 되세요.

  3. ZIBSIN 2015.06.17 14:59 신고 address edit & del reply

    혹시 다른 사용자 분들 오해 있으실까봐 덧붙이자면,
    비교했던 카페24와 스쿨은 사양이 거의 비슷합니다.
    이웃 사용자를 잘 만나야 한다는 건 서버 한 대의 자원을 여럿이 나눠 쓰다보니 어느 한 사용자의 트래픽이 과할 때 다른 나머지 사용자가 피해를 볼 수 있습니다.
    그럴 때는 회사에서 트래픽이 과한 사용자에게 통보를 해서 서비스 업그레이드를 권하거나 다른 서버로 이동을 시켜줍니다.
    속도는 비용에 비례한다고 볼 수 있습니다.
    보급형이 너무 늦다 싶으면 그 윗 단계 서비스로 업그레이드 하고 사용료를 조금 더 지불하면 됩니다.
    해당 포스팅은 5천원/월 보급형을 예시로 한 것입니다.
    현재 스쿨호스팅 보급형을 사용하고 있는데 속도나 가격대비 만족하는 편입니다.