본문 바로가기
Linux

CentOS7버전 프로그램설치 cmake,mysql,tomcat

by Gyona 2023. 6. 20.

파일 위치 설정해주기 maximum disk size 50 memory 8, cd/dvd7버전으로 넣어주기 - 호환, 개발모드용으로 설정

centOS7은 현재 서비스종료 상태로 다운되어있는 iso를 사용해야한다.

centOS8 stream은 현재사용중인 mysql,java,cmake버전과 호환상에 문제가 있다.

 

작업tip
작업할때는 vi모드 사용
원하는 글자 찾을때는 ESC누르고 / 찾을 단어
맨밑줄로 가고싶을때는 ESC / shift+G
수정후 빠져나올때는 ESC두번 CTRL + : 빠져나온후 저장은 wp! 저장하지 않고 나올 때 q!
작업중인지 확인하려면 pe –ef |grep (원하는시스템이름)
rpm -qa | grep java 파일 찾을떄(ex.java관련된거찾을 때)
mysql 재시작할때
service mysqld restart
systemctl restart

 

초기설정

# cd /etc/sysconfig/network-scripts/ ls치고 ifcfg-무엇인지 확인!

 

회사 컴퓨터 IP 192.168.10은 동일하며 그 후 번호는 충돌하지 않도록 설정해준다.

Cmd 창에서 사용중인 ipconfing 를 통해 확인 할수 있다. 중복되지 않도록 설정해준다.

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 ) SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                    

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 추가

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장

 

 

저장후 네트워크 재시작

service network restart 또는

systemctl restart network

putty 작업  /ftp

vmware로 네트워크 설정을 해주고 난후에는 putty로 접속이 가능하다.

ftp로 작업할 파일을 올린다. 경로는 /usr/local/bin 에서 주로 작업한다.

 

1. pcre-devel 설치 및 설정

yum -y install pcre-devel

+) yum update

 

<빌드 환경 설치>

yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel

 

 

yum -y install gcc-c++ 

 

 

2. MySQL 설치 (5.5 이상 버전 설치 -> 5.5 버전 이상은 cmake 컴파일 필요 )

<기존 설치된 mysql, cmake 삭제>

yum remove -y mysql* cmake

 

<cmake>

7버전 압축 풀기tar xvf 압축파일 이름

cd cmake-3.5.2

./bootstrap

./configure

make

make install

 

<mysql 그룹 및 계정 생성>        

Sql 압축되어있는곳 찾고 압축 풀어준다. tar xvf 파일이름

groupadd mysql

useradd -g mysql mysql

 

<mysql> (나가서 /src 폴더 밑에있음 or 최초 파일넣은 곳 위치 확인) 5.6.30버전이 빌드가 안됨

cd mysql-5.6.30

/usr/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=330

make

make install

 

<mysql 그룹 및 계정 권한 설정 (계정명:그룹명)>

chown -R mysql:mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

 

<DB 설치 및 생성>

압축풀고 위의 작업을 하고 나면 cd /usr/local/mysql 이 자동으로 생긴다.

cd /usr/local/mysql

yum install -y perl-Data-Dumper

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

 

 

<Mysql 설정파일 및 데몬 복사 / base, datadir 설정>

cp support-files/my-default.cnf /etc/my.cnf

à 메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음

à 이미 존재하는 파일이라면 덮어씌우면 됨

 

cp support-files/mysql.server /etc/init.d/mysqld

cd

chmod 755 /etc/init.d/mysqld

vi /etc/init.d/mysqld

 SHAPE  \* MERGEFORMAT

basedir=
datadir=
작성되어 있는 부분에 아래 내용과 같이 작성
#basedir=/usr/local/mysql
#datadir=/usr/local/mysql/data
 
 

 

<환경변수 등록 및 MySQL 데몬 실행>

cd ~

vi .bash_profile ( #PATH 부분에 아래 내용과 같이 작성 )

 SHAPE  \* MERGEFORMAT

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
 

                       

source .bash_profile          

service mysqld start

 

 

 

< mysql root 계정 비밀번호> cd /usr/local/mysql/bin

# mysql –uroot –p 접속

비밀번호 : enter키 치기 (공백)

 

# ./mysqladmin -u root password ‘암호입력’ (암호설정하는 과정)

ex) mysqladmin -u root password ‘securerun’

 

비밀번호 : securerun

mysql 나가는 코드: quit

 

< 리눅스 시작시 mysql 구동되도록 설정 >

chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld

 

<DB 생성 및 sql import > DB 접속 후 프로젝트 데이터베이스 생성

mysql -uroot –p

패스워드 입력

create database 프로젝트;

quit

 

빠져나온후 mysql –uroot –p 프로젝트 < DB.sql

 

mysql 접속 후 use 프로젝트; 입력후 show tables;을 통해서 데이터가 들어왔는지 확인가능!

 

3. JDK

cd /usr/local/ 경로에 mkdir java

/usr/local/java 경로에 jdk-6u12-linux-i586.tar.gz 파일 압축해제(tar -xvf [압축파일명]) (파일명 다를 수 있음)  ( 아래 내용 추가 )

vi /etc/profile    // jdk1.8.0_362  

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin
 

source /etc/profile

java -version (버전확인)

 

4. Tomcat (현재 버전 tomcat 6.0.45이지만, tomcat 8 설치 가능 -> tomcat 8 jdk1.8이상)

/usr/local/server/ 경로에 tomcat 압축파일 압축해제 (경로 아래에 tomcat directory 존재 해야 함 /usr/local/server/tomcat)

 

cd /usr/local/

mkdir server

/usr/local/server 경로에

 

Tomcat tar파일 압축 해제 후 tomcat8.5.24명칭 tomcat으로변경

 

vi /etc/profile  ( 기존에 등록된 내용에서 아래 내용 추가 ) jdk64비트 32비트 경로 달라서 설치시 확인잘하기

 SHAPE  \* MERGEFORMAT

export JAVA_HOME=/usr/local/java/jdk1.8.0_191
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 

source /etc/profile

 

/usr/local/server/tomcat/bin/startup.sh (Tomcat 실행) >> bin파일에 가서 startup.sh로 실행해도 괜찮음

/usr/local/server/tomcat/bin/shutdown.sh (Tomcat 중지)

 

cd /etc/rc.d/init.d/

 

vi tomcat vi 모드로 아래내용 추가 붙여넣을 때 내용이 변경될수 있으니 확인!

 SHAPE  \* MERGEFORMAT

#!/bin/sh
# Source function library
. /etc/rc.d/init.d/functions
source /etc/profile
export TOMCAT_HOME=/usr/local/server/tomcat
# see how we were called.
case "$1" in
start)
echo -n "Starting tomcat: "
daemon $TOMCAT_HOME/bin/startup.sh
echo
;;
stop)
echo -n "Shutting down tomcat: "
daemon $TOMCAT_HOME/bin/shutdown.sh
echo
;;
restrart)
$0 stop
$0 start
;;
*)
echo "Usage : $0 {start|stop|restart}"
exit 1
esac
exit 0

chmod 755 tomcat

/etc/rc.d/init.d/tomcat

cd /etc/rc.d/rc0.d           

ln -s ../init.d/tomcat K14tomcat

cd /etc/rc.d/rc3.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc5.d

ln -s ../init.d/tomcat S90tomcat

cd /etc/rc.d/rc6.d

ln -s ../init.d/tomcat K14tomcat     

 

cd /usr/local/server/tomcat/conf/

 

vi server.xml

 

( SHAPE  \* MERGEFORMAT

Host name="localhost"
<Context path="" docBase="/home/web/프로젝트"  reloadable="false" 
  allowLinking="true"/> 설정 확인

àdocBase 설정은 어떤 경로에 있는 파일을 구동 시킬 것인지 설정 프로젝트 폴더 경로 )

 

<환경설정> 7버전에 맞춰 포트번호를 추가 (마지막에 추가권장)

vi /etc/sysconfig/iptables

 SHAPE  \* MERGEFORMAT

포트추가
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
 

 

포트추가  해주고 난 후에 (centos7이상)

 firewall-cmd --permanent --zone=public --add-port=8080/tcp

 firewall-cmd --permanent --zone=public --add-port=3306/tcp

 firewall-cmd --reload //변경사항 적용

5. 프로젝트 

/home/web 경로 밑에 프로젝트 파일 압축 해제

 

cd /home/web/프로젝트/WEB-INF/classes/egovframework/egovProps

vi globals.properties

 SHAPE  \* MERGEFORMAT

Globals.Password = mysql root비밀번호 입력
 

 

vi /etc/my.cnf ( 대소문자 구분 설정. 아래 내용과 같이 설정 )

 SHAPE  \* MERGEFORMAT

lower_case_table_names=1
 

 

<DB설정>

DB 접속 경로★

/usr/local/mysql/bin  ->

/ 또는 다른 폴더에서 실행할 경우 -> mysql –uroot –p

안될경우 > yum install mysql-server

 

한 뒤에 mysql root 계정 접속 (mysql -uroot –p , / 경로에서 하기

use 프로젝트;

 

1

DELIMITER $$

DROP FUNCTION IF EXISTS fn_codeNm$$

CREATE FUNCTION fn_codeNm(cmmCode1 VARCHAR(10), cmmCode2 VARCHAR(15))

RETURNS varchar(60)

BEGIN

DECLARE cmmCode VARCHAR(60);

SET cmmCode = (SELECT CODE_NM FROM tb_tz_cmmndetailcode where CODE_ID = cmmCode1 and CODE = cmmCode2);

RETURN cmmCode;

END $$

DELIMITER ;

 

2

CREATE USER 'root'@'%' IDENTIFIED BY '비밀번호’; (root 계정에 view 권한주기)

GRANT ALL ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

 

3

show global variables like 'log_bin_trust_function_creators';

SET GLOBAL log_bin_trust_function_creators='ON';

GRANT SELECT ON mysql.proc TO root@'%';

flush privileges;

 

à오류 발생 시, mysql 재 시작 후 1,2,3 적용 하면서 확인 필요

 

 

<pdf파일 확인(프로젝트 왼쪽메뉴에 있는 매뉴얼 클릭 시 나타나는 파일)>

/home/web/프로젝트/upload 경로에

프로젝트Manual.pdf , 프로젝트ManualAdmin.pdf , 프로젝트ManualCompany.pdf ,

프로젝트ManualPM.pdf (권한별 매뉴얼 총 4) 파일이 존재하는지 확인하고, 없을 경우 추가

 

<ubireport(리포팅 툴)>

/home/web/프로젝트/ubireport/license 경로에 License.xml 파일 추가 -pass

 

cd /home/web/프로젝트/UbiDaemon

vi ubidaemon.property  (URL IP주소(또는 localhost라고입력하면됨) 입력)

 

cd /home/web/프로젝트/WEB-INF/lib

vi ubigateway.property  (DB정보 설정) password확인

 

/usr/local/java/jdk1.8.0_191/jre/lib/fonts/ 경로에 gulim.ttc 폰트 파일 추가 (폰트 없을 경우 리포트에 한글 깨짐)

 

cd /home/web/프로젝트/UbiDaemon/bin

./ubidaemon_start.sh

 

 

+) 마지막에 service tomcat stop,start 해줘야함! user/local/server/tomcat/bin 으로 들어가서 ./shutdown.sh ./shartup.sh와 같음

DB가 안먹힐경우(sql재시작) -> service mysqld restart

 

6. DB 백업 스크립트 적용

1. mysql 계정 backup 생성 (root계정은 crontab 등록 시 스크립트에서 적용x) -> mysql 접속

create user 'backup'@'localhost' identified by 'securerun';

grant all privileges on *.* to 'backup'@'localhost';

flush privileges;

 

2. login-path 설정 (계정 노출시키지 않기 위함) -> /usr/local/mysql/bin 경로에서

./mysql_config_editor set --login-path=mutal_backup --host=localhost --user=backup --password

 

3. script 755권한 설정 및 crontab 등록

chmod 755 backup_script.sh (실행파일로 변경)

crontab –e (crontab 설정)

아래 입력 후 저장

0 1 * * * /home/backup_script.sh   -매일백업

0 1 * * 0 /home/backup_script.sh  - 일요일에 매주 백업 월요일로 하고 싶으면 0 1 * * 1 으로 설정

 

 

 

 

Error Log 화면에 나타내기

/home/web/프로젝트/WEB-INF/jsp/egovframework/com/cmm/error/ 경로에서

egovError.jsp / dataAccessFailure.jsp / egovBizException.jsp 파일에 아래 소스 코드 추가

- 서버 콘솔 로깅

<%

           Throwable ex = (Throwable)request.getAttribute("exception");

           ex.printStackTrace();

%>

- 화면에 직접 에러를 보이고 싶을 때

${exception.message}

에러 타입: <%= exception.getClass().getName() %> <br>

에러 메시지: <b><%= exception.getMessage() %>

 

★ 각종오류 참고사항

* yum 오류

Loaded plugins: fastestmirror, security

Setting up Install Process

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was

14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again

-> 조치방법

vi /etc/resolv.conf 열어서

아래와 같이 추가해 준다

nameserver 168.126.63.1

nameserver 8.8.8.8(안되면 추가해보기)

 

* yum 오류 2

Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

->조치방법

GateWay가 잘못됐는지 확인해본다

 

bootstrap오류// gcc가 없어서 발생할 가능성높음

#yum -y install gcc*

#make file없는 오류// ./configure 실행하면 됨 ./bootstrap 다음에 실행권장