한글이 웹에서는 보이나 디비에서는 깨져 있는 상태 정보
한글이 웹에서는 보이나 디비에서는 깨져 있는 상태본문
한글이 웹에서는 보이나 디비에서는 깨져 있는 상태
A라는 서버에서 B라는 서버로 계정을 옮기려고 할 때 나타나는 현상입니다.
A 서버는 php 에 mbstring 과 iconv 가 설치되어 있지 않습니다.
B 서버는 php 에 iconv 만 설치되어 있습니다.
A 서버 사용시 회원 가입 닉네임 입력 에러문제는
skin/member 의 ajax_mb_nick_check.php 를
//$reg_mb_nick = convert_charset('UTF-8','CP949',$reg_mb_nick);
이렇게 처리해서 사용해 왔습니다.
현재 계정을 이전하려고
A 서버 PhpMyAdmin 에서 sql 내보내기로 DB를 다운 받아
B 서버 PhpMyAdmin 로 sql 화일을 업로드 했더니 한글이 모두 깨져 버립니다.
Collation 은 두 서버 모두 utf8_general_ci 입니다.
A 서버에서는 웹에서는 한글이 입력도 되고 잘 보입니다.
그러나 PhpMyAdmin 로 들어가서 DB 를 보면 한글이
모두 깨져 있는 상태로 보입니다.
웹에서는 감사합니다. 라고 잘 보이는 문장이
PhpMyAdmin 로 들어가서 DB 테이블을 열어보면
감사합니다.
라고 보입니다.
DB에 들어가서 보면 깨져 있는데 웹에서는 멀쩡하고 보입니다.
아주 희한합니다.
UTF-8 문제이가 싶어 A 서버의 다른 계정에는 UTF-8 버전으로 설치해 보았는데
동일한 현상이 나타납니다.
A 서버는 telnet 이 지원되지 않고 ftp만 지원되어 PhpMyAdmin 만 사용할 수 있고,
B 서버는 telnet 은 사용할 수 있습니다.
mbstring 과 iconv 가 없는 서버에서 사용한 DB를 PhpMyAdmin 로 다운받아
다른 서버로 한글이 보일 수 있게 옮길 수 있는 방법이 있을지요..
A라는 서버에서 B라는 서버로 계정을 옮기려고 할 때 나타나는 현상입니다.
A 서버는 php 에 mbstring 과 iconv 가 설치되어 있지 않습니다.
B 서버는 php 에 iconv 만 설치되어 있습니다.
A 서버 사용시 회원 가입 닉네임 입력 에러문제는
skin/member 의 ajax_mb_nick_check.php 를
//$reg_mb_nick = convert_charset('UTF-8','CP949',$reg_mb_nick);
이렇게 처리해서 사용해 왔습니다.
현재 계정을 이전하려고
A 서버 PhpMyAdmin 에서 sql 내보내기로 DB를 다운 받아
B 서버 PhpMyAdmin 로 sql 화일을 업로드 했더니 한글이 모두 깨져 버립니다.
Collation 은 두 서버 모두 utf8_general_ci 입니다.
A 서버에서는 웹에서는 한글이 입력도 되고 잘 보입니다.
그러나 PhpMyAdmin 로 들어가서 DB 를 보면 한글이
모두 깨져 있는 상태로 보입니다.
웹에서는 감사합니다. 라고 잘 보이는 문장이
PhpMyAdmin 로 들어가서 DB 테이블을 열어보면
감사합니다.
라고 보입니다.
DB에 들어가서 보면 깨져 있는데 웹에서는 멀쩡하고 보입니다.
아주 희한합니다.
UTF-8 문제이가 싶어 A 서버의 다른 계정에는 UTF-8 버전으로 설치해 보았는데
동일한 현상이 나타납니다.
A 서버는 telnet 이 지원되지 않고 ftp만 지원되어 PhpMyAdmin 만 사용할 수 있고,
B 서버는 telnet 은 사용할 수 있습니다.
mbstring 과 iconv 가 없는 서버에서 사용한 DB를 PhpMyAdmin 로 다운받아
다른 서버로 한글이 보일 수 있게 옮길 수 있는 방법이 있을지요..
댓글 전체
음..일단은 db의 캐릭터셋을 확인해보세요.
만약에 ecukr로 되어있다면..덤프시에 깨지면
mysqldump [db명] [테이블명] --default-character-set=euckr --extended-insert=FALSE -p > [db명].[테이블명].sql
만약에 urf8로 되어있다면.. 덤프시에 깨지면
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=58038&sca=&sfl=wr_name%7C%7Csubject&stx=%BC%DB%C8%BF%C1%F8&sop=and
둘다 귀찮으면, 단 root권한이 있을경우
my.cnf 파일을 열어서
[mysqldump]
default-character-set = utf8
추가 해주면 됨...
만약에 ecukr로 되어있다면..덤프시에 깨지면
mysqldump [db명] [테이블명] --default-character-set=euckr --extended-insert=FALSE -p > [db명].[테이블명].sql
만약에 urf8로 되어있다면.. 덤프시에 깨지면
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=58038&sca=&sfl=wr_name%7C%7Csubject&stx=%BC%DB%C8%BF%C1%F8&sop=and
둘다 귀찮으면, 단 root권한이 있을경우
my.cnf 파일을 열어서
[mysqldump]
default-character-set = utf8
추가 해주면 됨...