웹마스터 팁
XE 1.5 이상으로 DB 이전시 일부 DB가 빠질 경우 - 내용추가(0203)
2012.02.02 13:49
http://sejin7940.co.kr/?mid=xe_tips&document_srl=23679 글을 퍼왔습니다.
---------------------------------
아직 이런 글이 XE Tips 부분등에 올라온게 없는걸 보니..
아직은 유지들이 XE 1.5 로 DB이전한 케이스가 거의 없나보네요. ^^
저와 같은 시행착오 겪으실 분들을 방지하고자, XE 1.5 이상으로 DB이전 툴 제작시 주의하실 점을 적어드립니다.
XE 1.5로 DB 마이그레이션할 경우... 때로는 자료가 일부 안 넘어가는 현상이 발생하는 경우가 있을겁니다.
원인은 XE 1.5 이후부터 강화된 필터(filter) 기능 때문입니다.
XE 1.5 부터는 이메일 및 홈페이지주소 에 관해 형식 필터링이 이뤄지고 어긋날 경우 등록이 아예 안 됩니다.
이는 회원가입시 뿐만 아니라, 글 작성시와 댓글 작성시에 모두 적용되는 사항입니다.
기존 사이트의 이메일주소나 홈페이지 형식이 잘못 된 글들을 그대로 이전시키려하면
결국 이 글들이 다 제외되어버리는 현상이 1.5 로의 이전시 발생하게 되는거죠
제가 테스트해보니, ZB4는 물론이고, 기본의 XE 1.4 버전에서도 이 이메일과 홈페이지 필터링이 안 되어있기에
이메일과 홈페이지가 잘못 기재된 글들이 꽤 있을 수 있는데, 이 글들이 다 이전이 안 된다는거죠
해결하려면, 결국 마이그레이션 툴 자체를 수정해서 이메일이나 홈페이지 형식이 잘못된 경우 해당 값을 삭제하거나..
아니면 XE의 해당 입력 쿼리마다 들어 있는 filter 를 지워버리거나, 아예 필터.js 파일을 수정하시면 됩니다.
(회원가입시 이메일이 필수면, 이메일 주소를 임의로 형성을 하셔야할 수도 있습니다. 아니면 안 넘어갈 수 있어요)
이렇게 필터가 강화되어서 이게 통과가 안 되면 글이 등록이 안 된다는게..안내가 안 되어있고
현재 배포되어있는 DB 이전 툴쪽에는 적용되어있는 예가 없기에..
이렇게 간단히라도 정보를 남겨놓습니다 ^^;;
--------------- 내용 추가 합니다 (120203) ----------------
이메일 형식등이 잘못 기재되는 유형이 워낙 다양한데다가...
가장 큰 문제는 회원가입시에 이메일이 필수사항이라는 점이죠.. 이메일잘못기재되었다고 강제로 없애면
결국 회원가입이나 로그인등에 큰 문제가 발생하더군요.
따라서... 해결책은..
modules/document/queries/insertDocument.xml 에서 filter="email" 와 filter="homepage" 를 지우고
modules/comment/queries/insertComment.xml 에서 filter="email" 와 filter="homepage" 를 지우고
modules/member/queries/insertMember.xml 에서 filter="email" 와 filter="homepage" 를 지운 뒤에
DB이전을 하는겁니다. 그러면 이메일주소가 틀려도 전부 다 이전이 될겁니다.
그 후에 다시 filter 값들을 다 복원해줍니다. (그럼 XE 1.5 에서의 원 의도대로 filter 가 되겠죠)
이제 문제는, 잘못된 이메일주소 등으로 등록된 회원이 글을 쓸 때 발생합니다
회원이 글을 쓰면 회원정보를 기반으로 자동으로 이메일주소와 홈페이지주소가 기재가 되는데
회원정보의 이메일이 잘못 되면, 당연히 글 등록시 필터에 갈려 계속 에러메세지가 발생하게 됩니다
그러나, 글쓴이는 이메일기재란도 없는데, 왜 이런 메세지가 나와 글이 등록이 안 되는지 모르겠죠?
common/lang/lang.xml 파일에 가셔서
3452번줄 즈음에.. <item name="invalid_email"> 부분의 언어를 바꿔주시면 됩니다.
<value xml:lang="ko"><![CDATA[%s의 값은 올바른 메일 주소가 아닙니다.]]></value> 부분을
<value xml:lang="ko"><![CDATA[%s의 값은 올바른 메일 주소가 아닙니다.\n만약 회원이시면 회원정보에서 이메일을 수정해주시기 바랍니다]]></value>
이런식으로 변경하면 되는거죠.
이 부분은 Core 에 해당되기에, 상황에 따라 XE 업그레이드로 지워질 수도 있는 부분인데 당장은 어쩔 수가 없네요 ^^;
기억해두셨다가, 혹시 Core 로 덮히면 다시 수정해주셔야합니다.
이렇게하면, DB이전이 깔끔하게 처리가 되겠네요. ^^;;
댓글 7
-
영이632
2013.07.24 20:13
-
똑디
2013.08.02 19:13
혹시 1.7버전대에서도 테스트를 해보셨는지요? 이번에 자료옮길 작업이 있어 처리하다 댓글이 안옮겨져서 애를 먹었는데..
전 결국 엑셀파일로 저장해서document_srl 값 맞춰서 수동으로 이전했네요.
-
sejin7940
2013.08.02 19:22
DB 이전시 (import) 1.7버젼에서는 댓글이 이전이 안 되는 경우
xe/modules/comment/queries/insertComment.xml 에서
<column name="status" var="status" notnull="notnull" filter="number" /> 부분을
<column name="status" var="status" notnull="notnull" filter="number" default="0" /> 로 변경해주시면 됩니다.
-
똑디
2013.08.02 20:06
수작업 하기전에 한번 질문 남길걸 그랬네요.^^
작업은 끝났지만 알려주신 팁을 확인하고자 말씀하신 대로 수정해서 처리해보니 정상적으로 데이터 이전이 되네요.
다른분들도 하위버전에서 자료 옮기실때 꼭 이글을 먼저 보셨으면 좋겠는데...
sejin7940님 팁 감사합니다.
-
알쑤크림
2014.03.17 15:32
1.7.4.1 로 버전 업 후
<column name="status" var="status" notnull="notnull" filter="number" default="0" /> 부분이 없는 경우엔요?
다시 적어줘야하나요?
-
심아부장
2015.04.20 11:14
위에 수정해야하는 쿼리문이들어간 파일들 3개가 이전서버(OLD)에서 수정해야 하나요??? 새로운서버(NEW)의 파일을 수정해야 하나요???
-
sejin7940
2015.04.21 12:39
새로운 서버 쪽입니다.
제목 | 글쓴이 | 날짜 |
---|---|---|
썸네일 특정 파일로 불러오기 [18] | Lansi | 2014.01.21 |
유챗 팝업창으로 만들기 [1] | oscarmike | 2014.04.26 |
모바일 이미지축소모드 | kdp | 2015.05.07 |
모바일 이미지 제거모드 | kdp | 2015.05.07 |
게시판의 MP3파일 갯수 표시하기 | kdp | 2015.05.07 |
[서버운영] 웹 재요청 방지 및 트래픽 감소를 위한 방법 | 마루디자인 | 2015.05.06 |
member 모듈 업데이트가 계속 나오는 경우 | 고니고니 | 2015.05.06 |
속도관련 나노팁. [5] | 1052 | 2015.05.04 |
익명게시판에서 임시저장된 글을 불러와 등록하면 익명처리되지 않고 글쓴이 정보가 기록되는 버그 수정 [1] | sejin7940 | 2015.01.23 |
팝업모듈에서 jQuery 충돌 해결 - 팝업창이 안뜰때. [5] | 똑디 | 2013.03.22 |
xe설치시 퍼미션 문제나 DB엑세스 문제 해결하기 | 길가던분 | 2015.05.01 |
[애매모호]스케치북 게시판을 뭔가 큼직큼직하게 눈에 잘들어오게 바꾸기 [10] | socialskyo | 2014.01.03 |
PC에서 모바일화면 보는방법 [2] | 빅스타 | 2015.04.29 |
스케치북 게시판 추천+등록 버튼 만들기 (수정) [8] | 숭숭군 | 2012.09.22 |
양력을 음력으로... [7] | pupstar | 2001.08.14 |
[초간단 자바스크립트!] 이미지 드래그하기..~~ [8] | ∑Ztxy | 2003.11.02 |
간편 css 압축 | Ansi™ | 2015.04.21 |
XE 1.5 이상으로 DB 이전시 일부 DB가 빠질 경우 - 내용추가(0203) [7] | sejin7940 | 2012.02.02 |
정렬을 사용자정의값으로 한 경우 저장이 안 되는 현상 수정 [1] | sejin7940 | 2015.01.06 |
프리 반응형 템플릿(html/css/js) 다운받을 수 있는 곳 [1] | jhsongsh | 2014.10.28 |
아 정말 감사합니다.
저같은 경우에는 데이터 들여오기를 했더니 댓글이 안들어와서 고생하다가 묻고답하기 게시판에 올려서 필터라는 부분을 알게되었답니다. 그래서 추가 검색하다가 이 글을 보게 됐네요.
말씀하신 팁대로 하니 누락되는 글 없이 다 들어오는군요. 좋은 팁 감사합니다!