물에 살고싶은 개발자

MySQL과 JAVA 연동을 위한 MySQL Connector 다운 및 설치 본문

리눅스(Ubuntu)

MySQL과 JAVA 연동을 위한 MySQL Connector 다운 및 설치

돼지사랑 2018. 3. 17. 21:25


집에다 리눅스깔고 UI 환경에서 서버세팅을 하는사람들은 상관없을 얘기일수도있다.


일단 내얘기를 먼저 하자면 내 호스팅서버는 왜인지 패키지설치가 되지 않는다-_-..(문제 해결을 위해 여러번 검색해봣지만 아직도 해결못함..)


아무튼 그렇기때문에 간편하게 설치할수있는 방법 대신 직접 url 입력으로 다운받아서 압축풀고 설치하고 해야한다.


그렇기때문에 나랑 같은 상황에 있는 사람 혹은 이 방법이 필요한 사람 혹은 미래의 나를 위해 글을 남긴다.


자바설치랑 환경변수 설정이 완료된 상태이고 putty를 이용해서 서버세팅된 리눅스에 접속해서 이케이케 한다는 전제하에 글을 쓴다.




작업을 하는 윈도우나 맥 환경에서 아래 주소로 접속해보자

http://ftp.plusline.de/mysql/Downloads/Connector-J/


접속해보면 휑한 사이트에 뭔가 클릭할수있는 파일들이 주르르르르륵 있을것이다.


그중에서 본인이 원하는 버전이고 파일의 확장자가 tar.gz 로 끝나는 파일을 찾자.(컨트롤+F를 활용하자)


찾았으면 해당 파일을 우클릭하고 크롬브라우저가 지원하는 링크주소복사 기능을 이용해 주소를 복사하자


그럼 붙여넣기했을때 주소가 튀어나올것이다.


http://ftp.plusline.de/mysql/Downloads/Connector-J/mysql-connector-java-8.0.9-rc.tar.gz 


이런식으로 ㅇㅇ


자 이제 puuty 로 가자


일단 원하는 폴더로 cd 명령어를 이용해 이동한 뒤 아래 명령어들을 써주자


mysql 커넥터(자바) 다운로드

wget http://ftp.plusline.de/mysql/Downloads/Connector-J/mysql-connector-java-8.0.9-rc.tar.gz


~경로로 옮기기("~/"부분을 원하는 경로로 변경해도되고, 위에서 원하는 폴더로 이동했다면 이 명령어는 쓰지 않아도된다.)

mv -v mysql-connector-java-8.0.9-rc.tar.gz ~/

 

압축풀기

tar zxvf mysql-connector-java-8.0.9-rc.tar.gz


압축푼 폴더로 이동

cd mysql-connector-java-8.0.9-rc


jar 파일을 자바홈 라이브러리로 이동(그냥 옮기기 싫으면 cp 명령어를 써도 된다.)

mv mysql-connector-java-8.0.9-rc-bin.jar $JAVA_HOME/lib/


환경변수 추가 
vi /etc/profile
export CLASSPATH=.:$JAVA_HOME/lib/mysql-connector-java-8.0.9-rc-bin.jar
(이 내용을 사진처럼 입력하자 , CLASSPATH=.:$JAVA_HOME <- 요부분에 = 다음에 .이 오타였는지 있었는지 기억이 안난다. 안되면 .을 지우고 해보자)

저장하고 나온다음 저장 및 적용(vi 명령어인 : 다음 wq로 저장 후 종료)

source /etc/profile


그다음 간단하게 테스트 코드를 실행시켜서 확인해보면 된다.


import java.sql.*; 

 class jdbc {

    public static void main(String argv[]) {

        try {

            Class.forName("com.mysql.cj.jdbc.Driver");

            System.out.println("jdbc 드라이버 로딩 성공");

        } catch (ClassNotFoundException e) {

            System.out.println(e.getMessage());

        }

              

        try {

            String url = "jdbc:mysql://localhost:3306/DB명?serverTimezone=Asia/Seoul";

            Connection con = 

            DriverManager.getConnection(url,"root","password");

            System.out.println("mysql 접속 성공");

            Statement stmt = con.createStatement();

            ResultSet rs = stmt.executeQuery("select user from user where user = 'root'");

            System.out.println("Got result:");

                 

            while(rs.next()) {

                String no= rs.getString(1);

                String tblname  = rs.getString(1);

                System.out.println(" no = " + no);

                System.out.println(" tblname= "+ tblname);

            }

                 

            stmt.close();

            con.close();

        } catch(java.lang.Exception ex) {

            ex.printStackTrace();

        }

    }

}



출처: http://kingko.tistory.com/entry/JDK [Steadily .........]


테스트코드는 대략 이런느낌이면 충분하다.(어차피 연결되는것만 확인하면 그만이기때문)




테스트코드는 알아서 자바코드로 이케이케 코딩하고 아무튼 테스트에 성공한다면 끗


Ps. 혹 테스트하고나서 실행해봣는데도 익셉션이 터진다면 메세지를 확인해보자

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver not found in gnu.gcj.runtime.SystemClassLoader


에러메시지가 이것만 아니면 정상적으로 설치된것이다. 

Comments