DB-WAS 연동하기
mysql 서버 설치(DB)
1) 설치
#sudo apt-get install mariadb-server
2) 서버 실행
Mariadb 특정버전에서 서버 구동이 로컬서버 디폴트설정이다. 이 부분을 변경해 줘야 함.
vi /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 0.0.0.0
#systemctl start mariadb
3) 계정 생성
#mysql
모든 호스트에서
>> use mysql;
>> create user 'mydb'@'%' identified by 'abcd';
>> grant all privileges on . to mydb@'%';
>> flush privileges;
아래는 생략/제한된 호스트에서
>> create user 'mydb'@'10.0.2.5' identified by 'abcd';
>> grant all privileges on . to mydb@'10.0.2.5';
>> flush privileges;
WAS(tomcat server) 영역에서 4) 실행
4) 접속 테스트
mysql -u mydb -h 10.0.2.15 -p
톰캣 서버 연동 작업 (톰캣was에서 작업)
1) 커넥터 수동 설치
wget https://dlm.mariadb.com/1965742/Connectors/java/connector-java-2.7.5/mariadb-java-client-2.7.5.jar
cp mariadb-java-client-2.7.5.jar /usr/lib/jvm/java-1.8.0-openjdk-amd64/lib/
cp mariadb-java-client-2.7.5.jar /usr/local/tomcat/lib/
wget https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-5.1.40.tar.gz
tar xvf mysql-connector-java-5.1.40.tar.gz
cp mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /usr/local/tomcat/lib/
2) 환경변수 세팅 (*주의 : 아래 설정에서도 파일의 경로를 확인해 봐야 한다)
vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/
export CATALINA_HOME=/usr/local/tomcat
PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/mariadb-java-client-2.7.5.jar:$CATALINA_HOME/lib/mariadb-java-client-2.7.5.jar
source /etc/profile
→ 스크립트 파일을 수정한 후에 수정된 값을 바로 적용하기 위해 사용하는 명령어
3) 홈페이지 소스 올리기
/usr/local/tomcat/webapps/ROOT/conndb.jsp
WEB_WAS_DB 연결 jsp
```
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
String uid = request.getParameter("username");
String pwd = request.getParameter("password");
String DB_URL = "jdbc:mysql://20.0.2.6:3306/smart_mes";
String DB_USER = "mydb";
String DB_PASSWORD= "abcd";
String sel = "";
ResultSet rs = null;
Connection conn;
Statement stmt;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
stmt = conn.createStatement();
//사용자 정보 조회
sel = "select * from user_info where username='" + uid + "' and password='" + pwd + "'";
rs = stmt.executeQuery(sel);
if (rs.next()) {
out.println("Success");
}
else
out.println("Fail");
conn.close();
} catch(Exception e) {
out.println(e.getMessage());
}
%>
```DB 서버_SQL 내 userInfo table 생성하기
create database naver_com;
use naver_com;
create table userInfo ( uid int, uname varchar(20), pass varchar(128), profile varchar(200), priority int );
insert into userInfo (uid, uname, pass, profile, priority)values(0, "admin", password("1234"), "관리자", 0);
insert into userInfo (uid, uname, pass, profile, priority)values(1, password("user1"), "abcd", "행인1", 1);
insert into userInfo (uid, uname, pass, profile, priority)values(2, password("user2"), "abcd", "행인2", 1);
insert into userInfo (uid, uname, pass, profile, priority)values(3, password("user3"), "abcd", "행인3", 1);
```
<html>
<body>
<form method="GET" action="./login.jsp">
login : <input type="text" name="username" value = ""/> </br>
passwd :<input type="text" name="password" value = ""/> <p>
<input type="submit" value="login">
</form>
</body>
</html>
```cf. OVF 파일 만들기
image 파일을 만들면 어느 환경, 운영체제에서나 install을 할 수 있다. vmware에서는 export to OVF로 만들면 img 파일을 만들 수 있음. 다른 컴퓨터에서 설치할 수 있음
키페어란?
이 키가 있는 암호화 파일을 인증키를 하나 주면 인증키를 가지고 콘솔에 접속 인증키!
0.0.0.0/0 → /0은 전체 IP, 어디서 접속해도 접속할 수 있도록
소스가 0.0.0.0/0인 규칙은 모든 IP 주소에서 인스턴스에 액세스하도록 허용합니다. 알려진 IP 주소의 액세스만 허용하도록 보안 그룹을 설정하는 것이 좋습니다.
/32 → 고정된 IP
adduser __ : 유저 추가
(cf. userdel 유저 삭제, id __ 조회)
passwd __ : 패스워드 추가
vi /etc/sudoers : password로 로그인 할 수 있도록 no를 yes로 변경

vi /etc/ssh/sshd_config : 유저명 추가하고 ALL 권한 주기
systemctl restart sshd
