안녕하세요 jju_developer 입니다.
지난시간에 mysql에서 maria 디비로 연동하는 방법에 대해 알아보았습니다.
데이터베이스 MYSQL에서 MariaDB로 연동하기
안녕하세요 jju_developer 입니다. 오늘은 기존 mysql을 사용하다가 maria db로 연동을 해야하는 일이 생겨서 해당 부분을 기록하려고 합니다. 우선 mysql에 있는 모든 테이블과 정보들을 덤프로 떠서 그
jju240.tistory.com
본 게시물은 톰캣, 마리아 디비가 설치되어 있는 환경에서 시작됩니다.
<?xml version="1.0" encoding="UTF-8"?>
우리가 서버를 돌릴때 톰캣 설정을 해주었는데
설치된 곳에 들어가보면
D:\tomcat\apache-tomcat-9.0.30_jju\conf
여기 폴더에 들어가줍니다.
그러면 이렇게 server.xml이 있습니다.
결론적으로는 server.xml과 web.xml 둘다 수정을 해야한다는 말이 있는데
저는 server.xml 수정하고 pom.xml에 dependency 만 추가 하니까 바로 적용이 되더라구요!
server.xml 파일을 인텔리제이로 열어서 수정을 해주겠습니다!!

<Resource auth="Container"
<Resource auth="Container" 라고 시작되는 부분을 찾아서 다 바꿔줘야합니다.
기존에는 mysql로 되어있는 정보를 이제는 새로만든 maria 디비의 계정 정보를
입력하겠습니다!!!
수정전
driverClassName="com.mysql.jdbc.Driver"
이렇게 되어있던 부분을
수정후
driverClassName="org.mariadb.jdbc.Driver"
<!-- server.xml의 GlobalNamingResources 섹션에 다음을 추가합니다. -->
<GlobalNamingResources>
<!-- 다른 리소스들... -->
<!-- MariaDB 연결 설정 -->
<Resource
name="jdbc/myDB" <!-- JNDI 이름 -->
auth="Container"
type="javax.sql.DataSource"
maxTotal="100"
maxIdle="30"
maxWaitMillis="10000"
username="your_db_username"
password="your_db_password"
driverClassName="org.mariadb.jdbc.Driver"
url="jdbc:mariadb://your_db_host:your_db_port/your_db_name?characterEncoding=UTF-8" />
</GlobalNamingResources>
-- 예시
url="jdbc:mariadb://100.0.0.1:3016/test?characterEncoding=UTF-8"
pom.xml dependancies에 보기 편한곳에 아래 내용 넣고 저장
<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>3.1.4</version>
</dependency>
mysql 설정된 dependency를 꼭 삭제하지 않아도 괜찮습니다.

이렇게 잘 설정해주시고 maven 클린 한번 해주고
톰캣 재실행하면 잘뜨는것이 확인됩니다~~!!
maria db 10.6.5 버전을 사용하였구,
https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client/3.1.4
여기 들어가서
mariadb를 검색해서 최신 버전의 maven dependency코드를 복붙해서 넣어주었습니다.
그래들 사용하시면 위 링크 들어가셔서 복붙하세요!
잠깐!!!!
만약 스프링 레거시가 아니라
스프링 부트를 사용하신다면???
pom.xml과
resources 밑에 application.properties를 변경해주세요!
기존코드
# Database
dataSource.driverClassName=com.mysql.cj.jdbc.Driver
dataSource.url=jdbc:mysql://0000000:3016/test?characterEncoding=UTF-8&useSSL=false
dataSource.username=아이디
dataSource.password=비번
datasource.initialize=true
변경한 코드
여기서 바꾼 부분은 아래부분 하나만 입니다~
dataSource.driverClassName=org.mariadb.jdbc.Driver
그럼 오늘도 수고하셨습니다~

다음글
spring boot mysql -> mariadb로 연동시 났던 오류 모음집
안녕하세요 jju_developer입니다. 오늘은 mysql에서 mariadb로 연동시 났던 오류들을 총정리해보겠습니다~! [지난시간 내용 확인] [MariaDB] 데이터베이스 MYSQL에서 MariaDB로 연동하기 안녕하세요 jju_developer
jju240.tistory.com
'주니어 기초 코딩공부 > Database 기초' 카테고리의 다른 글
[MySQL] With절 이란? select 말고 with으로 시작하는 구문? CTE (55) | 2024.07.18 |
---|---|
spring boot mysql -> mariadb로 연동시 났던 오류 모음집 (2) | 2023.12.15 |
[MariaDB] 데이터베이스 MYSQL에서 MariaDB로 연동 덤프 뜨기 (0) | 2023.12.13 |
[MYSQL] 일정 시간단위로 데이터 가져오는 방법 (하루, 한시간, 한달) (2) | 2023.11.24 |
내 로컬 데이터베이스를 다른 사용자가 접근 할 수 있도록 변경하기 (2) | 2023.11.22 |