티스토리 뷰
일단 내 환경은 Spring MVC 였고, restful한 url 사용, Mybatis, MySQL를 사용하는 환경이었다.
카페24에 db 연동(연결,접속)을 하려는데 자꾸 500 에러가 발생.
catalina.out 을 열어서 로그를 확인해 보니 Access denied 에러 발생.
구글을 다 뒤져보고, 카페24에 문의글도 남겼지만 결국 해결 못함.
나같은 사람이 또 있을까봐 남겨둔다.
카페24 호스팅 db연동 AtoZ 매뉴얼
** 카페 24 호스팅 후 DB (MySQL) 연결하는 법
1) 일단 내가 호스팅한 웹에 붙이고자 하는 DB를 통채로 Export하여 ~.sql 파일로 만들어둠(백업 --> 해당 방법의 자세한 내용은 MySQL export 하는법 찾아보면 됨).
2) 카페24의 '서비스 접속관리 > MySQL 웹어드민 접속 > 상단 탭 Import > 아까 백업해둔 sql 파일을 선택하여 저장하면 내 DB의 테이블 및 데이터들이 가져와짐.
3) MyBatis와 DB를 연결하는 파일 (나는 context-datasource.xml 이었음) 을 수정
<bean id="dataSourceSpied" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/카페24아이디"/> <property name="username" value="카페24아이디"/> <property name="password" value="카페24DB접속비번"/> </bean> |
4) 호스팅 서버 (경로:/home/hosting_users/카페24아이디/tomcat/conf) 에 있는 server.xml 의 18line의 주석 해제 후, 아래와 같이 수정
<Resource name="jdbc/카페24아이디" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/카페24아이디" username="카페24아이디" password="카페24DB접속비번" maxActive="20" maxIdle="10" maxWait="3000"/> |
5) 호스팅 서버 (경로:/home/hosting_users/카페24아이디/tomcat/conf) 에 있는 context.xml 의 맨 마지막 중 </context> 바로 위에 4번과 동일한 내용을 넣고 저장.
6) 수정한 3개의 파일 (3~5파일)을 호스팅에 덮어씌우고 톰캣 껐다 킴.
7) DB 연결작업 완료.
+) 혹시, 카페24에서 제공해주는 phpMyAdmin 툴이 불편하여, 자신이 쓰는 툴(예:MySQL workbench)로 카페24의 스키마를 불러오고 싶다면, 카페24 외부서버 만 쳐서 구글링 해도 외부 ip로 원격 접속이 가능하다.
++) 7번까지 완료하였는데, 혹시 'Table '테이블명' doesn't exist' 라는 에러가 뜨면, 카페24의 웹 어드민(=phpMyAdmin)에 있는 스키마의 테이블명의 대/소문자를 확인하자.
나의 경우에는 Mybatis 및 기존 스키마의 테이블명들은 모두 대문자로 되어있었는데, DB백업 및 phpMyAdmin에 해당 DB Import하는 작업을 거치면서 테이블명들이 모두 소문자로 바뀌어 있었다.
대소문자를 구분하므로, MyBatis 쿼리문에 썼던 문자 그대로로 phpMyAdmin의 테이블명들을 모두 바꿔주어야 한다.
'Java' 카테고리의 다른 글
외부url에서 xml로 파싱해와서 원하는 값만 추출하기 (xPath 사용) (0) | 2018.02.20 |
---|---|
HashMap 에서 최대값(Max) 뽑기 (0) | 2018.01.31 |
Generics란? (0) | 2017.02.08 |
System 클래스의 스트림 멤버들 (0) | 2017.02.06 |
Hello World! (0) | 2017.02.06 |