Web taemy's Site
텍스트큐브(textcube) 1.7.2 버전으로 업그레이드 했다.
얼마후 서버를 이전하기 전에 업그레이드를 해보기로 했다.

백업만 받아놓고, 무작정 덮어쓰기를 해버렸다.

큰 문제는 없는 듯.


# 몇몇 문제점.
1. 음. 몇몇글이 안뜨고 있다. 아마도 플러그인과 충돌이 나는 듯.
  좀더 보니, 글에 댓글이 있는 경우 안뜨네. 댓글 관련 플러그인을 살펴봐야 겠다.

잠깐 살펴보니, 다음 플러그인이 충돌이 일어나는지 작동시키면 뜨지 않는다.
 - 댓글/방명록 이모티콘표시
 - 새창으로 열기 링크
 - JP Entry Hits Plugin
일단 위 플러그인들을 해제하니 글이 잘 뜬다.

2. 그리고, 업로드시 이미지 미리보기가 안 보인다.(왜 그렇지? vista ,xp 모두 그러네.)
  요건 모르겠다. 미리보기창이 그냥 하얗게만 보인다.

3. .htaccess 가 바뀐다고 했는데, 그것때문인지.
  http://taemy.experlab.com/wiki  라고  textcube 디렉토리 밑으로 wiki 를 운영하고 있는데, 접근이 안된다.
  따로 rewrite rule 을 설정해 줘야 할 듯 하다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
마지막 태터툴즈 1.1.3 transition 으로 업그레이드를 했습니다.
이제 텍스트큐브의 시대가 오겠죠. ^^

일단 업그레이드 순서를 적어보면.

1. http://notice.tattersite.com/ko/26 에서 확장팩을 다운받는다.
2. 먼저 백업을 해야겠죠.(전 항상 Full 백업을 합니다.)
 File , DB 를 full backup 했습니다.
 # cp {tt_File_dir} {Backup_dir} -a
 # mysqldump {tt_DB} --extended-insert=false > {Backup_dir}/tt_DB.sql
 
3. 플러그인 데이터의 설정을 메모장에 옮겨놓는다.
 플러그인 설정을 기본설정과 다르게 했다면, 미리 옮겨놓는 것이 좋을 듯 함.
 플러그인을 비활성화 하게 되면 기본설정으로 초기화 됩니다.(이점 주의)

4. 플러그인을 비활성화(미사용)하고, 다운받은 파일을 압축풀고 복사
 # tar xvzf {down_files}
 # cp tt/* {tt_File_dir} -a  ( 혹시 덮어쓰기 프롬프트가 계속 나온다면, # alias cp=cp 를 해주고 다시 복사)

5. 관리자 화면으로 가면 업그레이드.(체크하는 화면)

6. 점검 및 플러그인 활성화(예전설정 복원)

7. 업그레이드 완료


ps. 별 문제는 없어 보이네요.
 스킨매니저 라는 플러그인이 좋아 보임.
 플러그인의 예전 설정을 옮기고 하는 것이 상대적으로 시간을 많이 소요했음.
 플러그인의 기본설정만 사용한다면, 아주 빠르게 업그레이드가 가능.

이올린에 북마크하기(0) 이올린에 추천하기(0)
mysql 4.0.x 버전에서 4.1.x 이상으로 업그레이드할때 버전별 차이점이 발견되어 정리한다.
(배포판 및 apm 버전에 따라 달라질 수 있다)

mysql 업그레이드시 4.1.x 버전과 5.0.x 버전별로 차이가 있었다.

# mysql console 에서는 정상인데, php (mysqlclient) 로 접속했을때
show local variables like 'cha%' ; 옵션이 달라지는 문제
그래서, php 로 작성된 프로그램의 글자가 깨지는 현상

4.1.x 에서는 모두 my.cnf 에서 설정이 가능하여, 둘다 적용이 되는데,
5.0.x 쪽은 php 쪽에서는 옵션이 먹히지 않는다.

그 때는  skip-character-set-client-handshake - 이 옵션이 포인트 (http://kldp.org/node/81341 )
my.cnf 의 [mysqld] 섹션에  위 옵션을 같이 써주면  php 쪽에서도 정상적인 옵션이 적용된다.


# php 에서 정상적인지 확인하는 코드

결과는 다음처럼 나오게 된다.
character_set_client : latin1
character_set_connection : latin1
character_set_database : latin1
character_set_filesystem : binary
character_set_results : latin1
character_set_server : latin1
character_set_system : utf8
character_sets_dir : /usr/share/mysql/charsets/
my.cnf 설정이 적용되면,  latin1 이 euckr / utf8 등으로 정상적으로 나오게 된다.

# 문제점.
my.cnf 를 통해 설정하게 되면 전체 시스템에 적용이 된다.
euckr , utf8 환경을 섞어서 쓰는 경우 문제가 발생할 수 있다.
그런경우 DB 접속 코드에 "set names euckr" 을 넣어서 사용한다.


# 참조
" mysql character set 'euc_kr' is not a compiled character set ... " 과 같은 에러메세지가 나올때
 * 기존 /etc/mysql/my.cnf 의 euc_kr 으로 된 부분을 euckr 로 변경
 * 4.0.x 에서는 euc_kr 을 썼는데,  4.1.x 버전 이상은 euckr 으로 쓴다.
 * my.cnf 에서 바꾸어 주기만 하면 된다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
예전에 1.1.0.2 에서 1.1.1 로 업그레이드 한 것과 비슷한 절차로 하면 된다.

업그레이드 전에는 항상 백업은 철저히

저번에 태터툴즈 업그레이드 할때도 느낀 것이지만,
업그레이드에 대한 가이드가 부족한 것 같다.

업그레이드를 하기 위해
http://www.tattertools.com/ko/ 로 접속을 해서
다운로드 페이지로 가겠지(http://www.tattertools.com/ko/guide01.php)

업그레이드 파일을 다운받고 업그레이드.

그런데, 업그레이드 전에 주의사항을 볼 수 있도록 다운로드 페이지에 연결을 해주면 좋을 것 같다.
바로 이런 페이지를 말이다.(http://forum.tattersite.com/ko/viewtopic.php?id=3067 )

그러면, 조금 삽질을 줄일 수 있을 듯.

오늘의 주의사항은.

사용자 삽입 이미지



위 이미지 처럼 업그레이드 후에 센터가 저렇게 보였다.
그 이유는 위에 있는 링크 에 있다.
새버전의 플러그인 중 CT_TNF_Notice 가 CT_TNF_Stories 로 바뀌면서 일어난 현상
CT_TNF_Notice 를 삭제해주면 된다.

그외에는 별 이상은 없는 듯.

좀더 살펴보고 문제가 있으면 추가 포스팅.


이올린에 북마크하기(0) 이올린에 추천하기(0)
이전편 1회에 이어서..

처리순서를 간단히 정리하자면.(1회의 언급한 내용)
  1. 업그레이드 전 dump (euckr , utf8 확인)
  2. mysql 업그레이드 ... ( 3.x , 4.0.x -> 4.1.x or 5.x )
  3. set names euckr 명시 (euckr 환경인경우)
  4. table 의 Engine , Charset 를 조정.
  5. 덤프 데이터 restore
  6. 확인.

# 위 업그레이드 절차를 좀더 자세히 설명한다.
  1. 업그레이드 전 dump (euckr , utf8 확인)
    • 명령은 간단한다.(추가적인 옵션등은 검색)
      • mysqldump {DB_name} > DB_name.sql
      • mysqldump {DB_name} -u {user_name} -p{password} > DB_name.sql
      • mysqldump -F -n --add-drop-table {DB_name}> DB_name.sql

  2. mysql 업그레이드 ... ( 3.x , 4.0.x -> 4.1.x or 5.x )
    • 각 배포판, APM 배포판 별로 업그레이드 한다.
      • 업그레이드 방법은 별도로 찾아본다.
    • 위 단계에서 dump 파일이 있으니, 안심해도 된다.
    • 다시 롤백을 해야할 상황은 없길 바란다.

  3. set names euckr 명시 (euckr 환경인경우)
    • dump 파일을 euckr , utf8 에 맞게 iconv 같은 것으로 변환을 하는 경우도 있는데, 굳이 필요 없다.
    • 이전 환경이 euckr 이면 dump 파일 맨 위에 "set names euckr" , utf8 이면 "set names utf8" 이라고 한줄 추가해 준다.

  4. table 의 Engine , Charset 를 조정.
    • 4.0.x 를 덤프하면 create table 부분에  " ) Type=MyISAM " 이라고 되어 있을 것이다
    • 덤프파일에서 Engine , Charset 을 적절히 바꾼다.
      • " ) ENGINE=InnoDB DEFAULT CHARSET=euckr " 형태로 바꾸어 준다.
      • 각각 InnoDB/MyISAM , euckr/utf8 로 적절한 환경으로 바꾸어 준다.

  5. 덤프 데이터 restore
    • 위 수정된 덤프파일을 저장한다.
    • mysql {DB_name} < DB_name.sql 으로 복구한다.

  6. 확인(my.cnf 등의 옵션 조정)
    • 데이터가 이상없는지 확인.
    • euckr 환경인 경우
      • my.cnf 의 mysqld 항목에 init_connect = 'set names euckr' 를 추가한다.
    • utf8 환경이라도 init_connect = 'set names utf8' 이라고 넣어주는 것이 좋다.
      • php 에서 위 설정을 해주지 않으면 latin1 으로 기본 설정된다.
    • chartset 에 관한 부분은 추후 더 정리할 예정.


# 업그레이드시 주의사항
  1. 테이블 charset 변경시 : alter table {테이블명} convert to character set utf8 명령으로 하면.
    • multibyte 를 사용하는 db 의 경우 필드 값이 반으로 줄어 버림
    • 그래서 dump 로 처리하는 것이 좋음
    • 덤프파일의 create table 항목의 charset 을 변경하는 방식으로 처리.
  2. 4.0.x 에서 dump 시 euckr , utf8 인지 확인
    • euckr 인 경우 덤프파일의 맨위에 set names euckr , utf8 은 set names utf8 를 삽입
    • 이부분만 주의하면 무리없이 진행가능.
  3. php 에서는 기본이 latin1 으로 잡힘
    • my.cnf 에 default-character-set 을 설정확인.
    • init_connect ='set names euckr' 최종 값이 설정됨.
    • init_connect 가 php 의 설정에 영향을 미침.
  4. dump 파일의 ENGINE , CHARSET 을 변경가능 (InnoDB , MyISAM) , (euckr , utf8)

ps. 좀더 자세한 설명이지만, 배포판별 mysql 업그레이드 방법, 세부 mysql 옵션등의 설명은 생략하였다.
   더 자세한 설명은 메뉴얼을 참조한다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
많은 웹사이트들이 APM - Apache + PHP + Mysql 조합으로 운영되고 있다.

Apache 는 1.x 버전에서 2.x 로의 버전 업그레이드가 되었고,
PHP 는 4.x , 5.x 버전으로 업그레이드가 되고 있다. 이제 6 버전이 개발중에 있다.

mysql 의 버전은 3.x 버전을 거쳐, 4.0.x , 4.1.x , 5.x  버전으로 업그레이드가 되었다.
그런데, mysql 의 버전 업그레이드를 하면서 내부적인 변화때문에 데이터의 호환성, 변경 문제를 겪게 되었다.
크게 (3.x ,4.0.x)  와  (4.1.x ,5.x) 의 두 그룹 사이의 업그레이드에 주의하면 된다.

한글 환경을 사용하는 국내에서는 charset(euckr , utf8) 에 조금만 주의를 하면
어렵지 않게 업그레이드 할 수 있다.

약간은 철지난 이슈이긴 하지만, 몇가지 주의사항 및
쉽게 업그레이드 할 수 있는 방법을 정리하고자 한다.

먼저 자신의 환경을 파악한다. euckr 환경인지, utf8 환경인지.
업그레이드시 euckr 환경으로 할지, utf8 환경으로 할지 등을 점검하고 업그레이드 한다.

가장 흔한 조합은
1. euckr 환경에서 사용하다가 업그레이드 euckr 환경을 계속 유지.
2. euckr 환경에서 utf8 환경으로 업그레이드
3. 테이블이 latin1 형식에서 euckr , utf8 환경으로 업그레이드
이 정도일 듯 하다.

가장 쉽고, 최선의 방법은 dump 후 restore 하는 방법이다.(당연하다고? ^^ )
아무튼 무작정 업그레이드 시도하기전에 백업은 필수!!

처리순서를 간단히 정리하자면.
  1. 업그레이드 전 dump (euckr , utf8 확인)
  2. mysql 업그레이드 ... ( 3.x , 4.0.x -> 4.1.x or 5.x )
  3. set names euckr 명시 (euckr 환경인경우)
  4. table 의 Engine , Charset 를 조정.
  5. 덤프 데이터 restore
  6. 확인.

구체적인 방법은 다음회에...(2회 보기)

ps. 총 3-4 회에 걸쳐 정리할 예정.

이올린에 북마크하기(0) 이올린에 추천하기(0)
태터툴즈 1.1.0.2 버전에서 1.1.1 로 업그레이드를 했다.
나온지 꽤 되었지만, 지금에서야 업그레이드를 했다.

http://blog.tattertools.com/104 : 업그레이드 공지

# 업그레이드 방법
1. 기존 자료 백업
2. 다운받은 자료를 압축풀고 기존에 덮어씌운다.
3. 다시 블로그에 접속하면, 다음과 같은 메세지가 나온다.

OK 를 눌러 점검하면 변경사항을 업그레이드 한다.

4. 업그레이드 완료.

# 문제점
트랙백을 삭제하려면 "rolloverClass is not definded" 다음과 같은 메세지가 뜬다.
  - 업그레이드를 잘 못 한것인지, 버그인지는 모르겠다.(더 살펴봐야 겠음)
  - 관련 TNF 글 에도 답은 없었다.


좀더 사용해 보면서, 문제점이 발생하면 추가로 포스팅 하겠음.



이올린에 북마크하기(0) 이올린에 추천하기(0)
1.1 릴리즈 되었을때 업그레이드 하려했지만, 속도가 느리다는 이야기가 있어
할까 말까 고민하고 있었는데, 이번 1.1.1 에서 개선되었다고 한다.

업그레이드 해야 겠다.

업그레이드 하면서 스킨도 http://taemy.experlab.com/wiki 와 비슷하게 통일해 봐야 겠다.
태터툴즈에 어울릴지는 모르겠다.

이올린에 북마크하기(0) 이올린에 추천하기(0)