ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 리눅스에 mysql을 설치 및 연동
    개발/개발관련 2019. 10. 23. 16:48

    centos6에 mysql5.6을 깔아야한다.

    0. 개요

    리눅스에 뭘 설치하고 제대로 연동 해보는걸 처음 해봤다... 그래서 삽질 엄청해서 mysql 깔아서 내 로컬과 연동시키는거까지 하루가 걸렸다... 설치만 반나절 ㅠㅠㅠㅠ

    일단 순서는 리눅스 종류를 알아야하며 종류나 버전에 맞게 mysql도 깔아야한다.

    나는 centos6이어서 mysql5.6버전을 깔았다. 5.6.15였나.. 무튼

    기본으로 깔려져있는 mysql이 있다. 찾아서 삭제 후에 mysql5.6을 설치해야한다.

    1. mysql 설치

    이것저것 인터넷에 나와 있는데로 했는데 왜 다 안되냐

    일단 yum을 업데이트한다.

    yum update
    yum upgrade


    의존 패키지 설치한다. 인터넷에 나와있는 이방법 저방법 해봤는데 cmake를 사용해야 제대로 깔리더라.

    yum install cmake gcc gcc-c++ cpp compat-gcc-32-g77 flex bison
    yum install libpng-devel libjpeg-devel freetype-devel gd-devel ncurses-devel


    mysql 계정을 생성한다

    groupadd -g 400 mysql → mysql 그룹 생성
    useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql → mysql 유저 생성

     

    기존에 mysql이 설치되어있는지 확인하고 있으면 삭제한다.

    rpm -qa | grep mysql
    yum remove mysql mysql-server
    rm -rf /var/lib/mysql

     

    리스트에 나오는 mysql은 yum remove를 이용해 삭제해준다. 파일명이나 리스트명이 다를수 있다.

    cmake 설치(mysql 5.5이상부터는 cmake를 이용하여 설치하기 때문에 먼저 cmake를 설치한 후 mysql설치를 진행.)

    mysql의 폴더 위치는 다를 수 있음

    ------------------

    cd /usr/local/src

    wget https://cmake.org/files/v3.9/cmake-3.9.6.tar.gz

    tar zxvf cmake-3.9.6.tar.gz

    cd cmake-3.9.6

    ./bootstrap

    make && make install

    wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

    tar xvfz mysql-5.6.15.tar.gz

    cd mysql-5.6.15

    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

    cmake -DMYSQL_DATADIR=/usr/local/mysql/data
    cmake -DDEFAULT_CHARSET=utf8
    cmake -DDEFAULT_COLLATION=utf8_general_ci
    cmake -DWITH_EXTRA_CHARSETS=all
    cmake -DWITH_INNOBASE_STORAGE_ENGINE=1
    cmake -DMYSQL_UNIX_ADDR=/tmp/mysql.sock
    cmake -DSYSCONFDIR=/etc
    cmake -DMYSQL_TCP_PORT=3306

    /usr/local/mysql/scripts/mysql_install_db \ --defaults-file=/usr/local/mysql/my.cnf \ --user=mysql \ --basedir=/usr/local/mysql/ \ --datadir=/usr/local/mysql/data \ --explicit_defaults_for_timestamp=on

    /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
    ------------

     

    일단 이렇게 하고 자동실행 설정한다.

     

    ------------

    cd /usr/local/mysql

    ln -s lib lib64

    chkconfig –add mysqld

    chkconfig mysqld

    -------------

     

    방화벽에 3306포트 추가한다.

     

    ------------

    vi /etc/sysconfig/iptables

    -A INPUT -p tcp -m state –state NEW -m tcp –dport 3306 -j ACCEPT ← 추가  

    /etc/init.d/iptables restart

    --------------

     

    my.cnf에 [mysqld] 밑에 lower_case_table_names = 1 추가한다. 쿼리에서 대소문자 구분 안하겠다는 뜻이다.

    그리고 서비스 실행~

    ----------

    service mysqld restart

    ----------

    그리고 mysql 들어가서 확인하면 끝~

    ----------

    mysql -u root -p


    show databases;
    ----------

     

    해서 데이터가 나오면 설치 끝!

    인터넷엔 여러가지 방법이 있다. centos6,7버전마다 설치방법이 다르고 mysql 버전마다 또 설치 방법이 다르다.

    이렇게 설치까지 반나절이 걸렸다.........

     

    2. 외부에서 접근

    이걸 서버 로컬에서만 쓸게 아니니까 외부에서도 이 디비에 접근 가능하도록 바꿔줘야한다. 기본으로 깔면 외부접근은 막아서 내 컴터에서 서버디비에 db툴에서 접근이 안된다.

    일단 내 컴터 cmd 창 열어서 telnet 디비서버아이피 포트번호 치면 연결안된다고 나올거다.

    연결된다고 나오면 외부접근 풀려있다는 뜻으로 이부분은 진행하지 않아도 된다.

    위에서 방화벽에 3306포트 추가하긴했는데 제대로 안되는 경우 이걸 따라면 되더라.

     

    -----------------

    iptables -I INPUT 1 -p tcp --dport 3306 -j ACCEPT

    service iptables save

    vi /etc/sysconfig/iptables

    service iptables restart

    -----------------

    내 컴터cmd 창에서 다시 telnet 하면 비밀번호 치라고 나올거다 그러면 연결된것이다. db툴에서 연결해보면 연결될것이다!

    그런데 이게 끝이 아니다...

     

    3. 자바설치

    mysql과 jsp 연동해야한다 ㅋㅋㅋㅋㅋㅋㅋ 다행인건 리눅스 mysql이랑 jsp 연동하는 드라이버가 로컬 라이브러리에 있어서 따로 다운받진 않았다. 없으면 다운받아야한다.

    이제 프로젝트에 맞는 jdk를 설치하면 된다. 자동적으로 원래 설치되어있는 자바는 버전이 안맞아서 삭제후 openjdk8설치했다.

    ------------

    rpm -qa | grep java

    yum remove 오픈jdk

    sudo yum install -y java-1.8.0-openjdk-devel.x86_64

    -------------

     

    4. SPRING 디비 연결 부분 변경

    디비 연결부분을 지금 설치한 디비ip, port로 변경한다.

    전에 잇던 디비를 스크립트로 뽑아서 새로운 디비에 넣고나서 로컬 서버 실행해서 사이트 접속하면 잘된다!!!!!!!!!!

    글은 짧지만 어제 오후 + 오늘 오전 + a 하루를 투자해서 겨우 mysql설치해서 연동까지밖에 못했다 ㅠㅠ

    내일부턴 apache 설치하고 프로젝트 빌드해서 넣고 개발서버에서 was 돌아가는지 확인해야한다

    728x90

    '개발 > 개발관련' 카테고리의 다른 글

    CORS 문제 해결  (1) 2019.11.14
    centos6 톰캣9설치  (0) 2019.10.25
    지도 api  (0) 2019.04.15
    스크립트에서 this  (0) 2019.01.28
    ejb? spring? spring boot까지?  (0) 2019.01.25
Designed by Tistory.