기존에 있었던 프로젝트를 다른 서버로 마이그레이션을 하고, DB는 리눅스에서 window로 포팅하는 작업을 실시했다. 다음에 있을 마이그레이션 및 포팅 작업을 위해 작업을 한 내용을 기록한다.
순서
1. 프로젝트 소스 코드 이관 및 마이그레이션
2. 서버 구동을 위한 환경설정 변수 파일 수정
3. WAS 생성
4. DB 스키마 생성
5. DB 테이블 스페이스 생성
6. DB 데이터 이관
1. 프로젝트 소스 코드 이관 및 마이그레이션
기존 IDE는 이클립스(Eclipse)를 사용했는데, 그대로 이클립스(Eclipse)로 이관을 했다. 개발환경은 아래와 같다.
- Eclipse 2022-06
- JDK 1.7
- Tomcat 7.0
- Maven X
2. properties 파일 서버 설정 변경
기존의 jdbc 변수 설정 파일들을 오라클로 변경 했다.
- jdbc.driverClassname을 oracle.jdbc.OracleDriver로 변경했다.(기존에는 oracle.jdbc.driver.OracleDriver 이거를 사용했는데, 오라클의 버전이 올라감에 따라 oracle.jdbc.OracleDrive로 사용)
- jdbc.url은 jdbc:oracle:thin:@IP:DB 형식으로 변경
3. WAS 생성
WAS를 생성했는데, LifeCycleException이 발생했다. 이 문제는 간단하게 해결했다. 해결 방법은 아래의 URL에 정리했다.
4. DB 스키마 생성
DB 스키마를 생성하는데는 큰 문제가 없었다. 근데, 덤프 파일로 마이그레이션을 하지 않고 스크립트로 한 방에 진행하려고 하니 DB 스키마를 구성하는 순서에 간과한게 있었다. 테이블을 생성하기 전에 테이블 스페이스를 만들어야 했는데, 그 부분을 만들지 않고 진행했다. 그래서 테이블 스페이스를 만들었다.
5. DB 테이블 스페이스 생성
-- TABLESPACE 생성
CREATE TABLESPACE TEST_DATA
DATAFILE
'D:\Database\DBF\TEST_DATA.DBF' SIZE 8G AUTOEXTEND OFF
LOGGING ONLINE PERMANENT EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO ;
-- 기존에 있는 USER 날리기
DROP USER TEST CASCADE;
-- USER 생성
CREATE USER TEST IDENTIFIED BY TEST;
GRANT connect, resource, dba TO TEST WITH ADMIN OPTION;
ALTER USER TEST DEFAULT TABLESPACE TEST_DATA;
ALTER USER TEST TEMPORARY TABLESPACE temp;
기존에 테이블스페이스가 어떻게 생긴지 보고 싶으면 아래의 쿼리를 사용하면 된다고 한다.
SELECT A.TABLESPACE_NAME "테이블스페이스명",
A.FILE_NAME "파일경로",
(A.BYTES - B.FREE) "사용공간",
B.FREE "여유 공간",
A.BYTES "총크기",
TO_CHAR( (B.FREE / A.BYTES * 100) , '999.99')||'%' "여유공간"
FROM
(
SELECT FILE_ID,
TABLESPACE_NAME,
FILE_NAME,
SUBSTR(FILE_NAME,1,200) FILE_NM,
SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY FILE_ID,TABLESPACE_NAME,FILE_NAME,SUBSTR(FILE_NAME,1,200)
) A,
(
SELECT TABLESPACE_NAME,
FILE_ID,
SUM(NVL(BYTES,0)) FREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME,FILE_ID
) B
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME
AND A.FILE_ID = B.FILE_ID;
출처 : https://bangu4.tistory.com/14
근데, 위의 쿼리를 사용하지 않아도 아래의 쿼리를 사용해도 찾을 수 있다.
SELECT *
FROM DBA_TABLESPACES
6. DB 데이터 이관
- 작업 예정
2022년 09월 19일 v1.0 작성
'IT > 웹' 카테고리의 다른 글
DB에서 데이터 처리 VS WAS에서 데이터 처리 (0) | 2022.07.15 |
---|---|
JQuery Migrate Warning Messages 경고 없애는 방법 (0) | 2022.06.15 |
JQuery 1.12.3 버전에서 3.6.0 버전으로 업그레이드 작업 정리 (0) | 2022.06.15 |
[웹/Web] HTTP 쿠키의 개념 (0) | 2022.05.16 |
크롬(Chrome) 캐시 비우기 및 강력 새로고침 하는 방법 (0) | 2022.05.15 |
Tomcat 9.0 다운로드 및 설치하는 방법 (0) | 2022.03.15 |
X-Frame-Options 옵션 정리 (0) | 2022.03.13 |
MyBatis 동적 쿼리 사용 방법 (0) | 2021.12.27 |
최근댓글