# Git으로 수정 패치 파일 만들기

2231 단어 오라클MySQLGit
※작업 메모

개요·배경



Git에서 수정 패치 파일을 작성·적용할 때 실시한 작업 메모.
자작 앱에 대해서, 복수의 DB 환경에서 움직여야 하고, 그 전환을 원활하게 실시할 필요가 있었으므로,
「MySQL ⇔ Oracle」로 간단하게 변환할 수 있는 수정 패치를 작성했다.

작업 내용



대상 Repository까지 이동 후,
・수정 패치 작성: git format-patch [コミットid] (※1)
· 수정 패치 적용 : git am [patch file name]
(※1)현재 commit에서 지정 commit 전까지의 패치를 작성하기 위해, 이하의 커밋 이력이면,
"user ⇒ SpringUser로 수정"의 커밋 id를 지정하고 git format-patch를 실행하면,
「MySQL⇒Oracle에서 움직이도록 수정」까지의 수정을 포함한 패치가 작성된다.


덧붙여서 MySQL ⇒ 오라클에서 한 수정 내용


  • application.properties
  • # Oracle DB
    +spring.datasource.url=jdbc:oracle:thin:@192.168.10.103:1521:orcl
    +spring.datasource.username=**********
    +spring.datasource.password=**********
    +spring.datasource.driverClassName=oracle.jdbc.driver.OracleDriver
    
    # MySQL DB
    -spring.datasource.url=jdbc:log4jdbc:mysql://localhost:3306/springdb?serverTimezone=JST
    -spring.datasource.username=**********
    -spring.datasource.password=**********
    -spring.jpa.database=MYSQL
    -spring.datasource.driverClassName = net.sf.log4jdbc.DriverSpy
    
  • build.gradle
  • -runtimeOnly 'mysql:mysql-connector-java'
    +compile group: 'com.oracle.database.jdbc', name: 'ojdbc8', version: '19.8.0.0'
    
  • 각 Entity에서 Sequence를 사용하도록 수정
  • -@GeneratedValue(strategy = GenerationType.IDENTITY)
    +@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_CUSTOMER_GENERATOR")
    +@SequenceGenerator(name = "SEQ_CUSTOMER_GENERATOR", sequenceName = "SEQ_CUSTOMER", allocationSize = 1)
    

    참조



    후기



    최근에는 오라클의 유상 서포트가 높다고 하는 것으로 PostgreSQL나 MySQL에 이행할 수 없는가 하는 문의가 있네요.
    그리고는 AWS Aurora로의 이행이라든가.
    DB 환경을 바꾸었을 경우의 영향 조사의 리스트라든지 누군가 정리하고 있지 않을까.

    좋은 웹페이지 즐겨찾기