정보보안공부
# 세부설정 # 서버만들기 # Dynamic Web Project 만들기 ## 윈도우에서 환경변수 설정 --> cmd 들어간뒤 set java_home으로 환경변수 확인 # Tomcat 실행 # JSP File 만들기
# Left join ( 왼쪽 테이블만 존재하는 것 출력) -> select * from A left join B on A.userID = B.userID where B.userID is null - A 테이블과 B 테이블에서 userID라는 컬럼에 값이 B에는 없고 A에만 존재하는 행을 출력한다. - 물건을 사지않은 사람의 회원정보만 조회할수있다. ( A : 회원테이블, B : 구매 테이블 ) # Right join ( 오른쪽 테이블만 존재하는 것 출력 ) -> select * from A right join B on A.userID = B.userID where B.userID is null #############################################################..
# having 절은 group by를 통해 그룹 지은 값을 대상으로 조건을 걸 수 있다. # group by로 그룹 지은 대상을 where를 가지고 조건을 사용할 수 없다. # having 절은 반드시 group by 뒤에 와야 한다. # select userID, sum(price * amount) '총 구매 액' from buyTBL group by userID; # select groupName, sum( price * amount ) from buyTBL group by groupName; -> 모든 구매 상품들 중에서 상품 분류 별로 토탈 구매액이 얼만지 알아내기 위한 쿼리이다. # group by를 사용할때 with rollup을 붙여 select하면 총 합계를 계산해서 제일 마지막 행에 덧..
# having 절은 group by를 통해 그룹 지은 값을 대상으로 조건을 걸 수 있다. # group by로 그룹 지은 대상을 where를 가지고 조건을 사용할 수 없다. # having 절은 반드시 group by 뒤에 와야 한다. # select userID, sum(price * amount) '총 구매 액' from buyTBL group by userID; # select groupName, sum( price * amount ) from buyTBL group by groupName; -> 모든 구매 상품들 중에서 상품 분류 별로 토탈 구매액이 얼만지 알아내기 위한 쿼리이다. # group by를 사용할때 with rollup을 붙여 select하면 총 합계를 계산해서 제일 마지막 행에 덧..
# show table status; -> 지정 돼 있는 데이터베이스에 테이블 목록과 함께 상성정보를 출력해 주는 쿼리이다. 테이블 생성일, 행의 개수, 인코딩 등 다양한 정보가 확인 가능하다. # 테이블에 저장 돼 있는 데이터가 많을 때 select 쿼리를 전송하면 MySQL에 부하도 증가하고 결과를 알아오는데 오랜 시간이 걸린다. # 테이블에 만들어져 있는 컬럼을 확인하기 위한 용도로 select 쿼리를 날린다면 시간이 오래 걸릴 수가 있다. # describe employees; -> 지정한 테이블에 컬럼 정보를 확인할 수 있다. 컬럼이름, 자료형, Null 유무, PK 유무 등등 # 프로젝트를 중간에 투입했을 때 다이어그램이 안 만들어져 있는 상황이 있다. (08.01) -> 이미 만들어져 있는 ..
# Limit to Hosts Matching : 계정을 생성할 때 설정하는 옵션인데, 반드시 설정해야 하고 생략할 수 없다. 이 계정으로 어느 IP에서 접속하는 것을 허용할 것인지를 지정하는 옵션이다. 보안을 위해서 계정을 만들 때 특정 IP로 제한을 함으로써 계정에 비밀번호가 유출됐을 때 피해를 최소화할 수 있는 옵션이다. 특정 IP 한개로만 제한할 수도 있고, 모든 IP에서 접속할 수 있게 허용할 수도 있고, 특정 IP대역에서만 접속할 수 있게 제한할 수도 있다. # IP대역으로 제한한다는 것은 예를들어 100.100.100.1~254 중에 어느 IP로든지 접속해도 접속을 허용하겠다라는 설정하는 것을 뜻 한다. # 제한할 IP를 %로 설정하는 것은 어느 IP에서도 접속할 수 있게 허용하겠다라는 설정..
# 데이터 베이스 모델링 : 현실세계에 있는 "사물" 또는 "작업"을 DBMS의 테이블로 변경하는 작업을 의미한다. # 모델링 예시) 백화점에 가면 직원도 있고 고객도 있고 백화점에 진열된 상품(물품)들도 있다. 이를 데이터베이스 모델링을 진행하게 되면 직원들은 [직원 테이블]로 만들어내고, 고객들은 [회원 테이블]로 만들어내고, 진열 된 상품들은 [판매 물품 테이블]로 만들어내는 행위를 모델링한다고 한다. =========================1단계========================== 쇼핑몰 데이터베이스를 구축한다고 가정한다. 쇼핑몰에 방문한 고객의 명단, 고객이 어떤 물건을 구매 했는 지 구매내역, 2가지를 데이터베이스에 저장하기로 결정했다. 어떤 고객은 아무 물품도 구매하지 않고 ..
# 트리거 진행 # 네이버, 구글 등 웹 사이트에서 회원가입을 할 때 회원정보를 3년 또는 5년 동안 개인 정보를 보관한다. 약완에 써져있다. # 회원가입을 할 때 입력했던 데이터들은 전부 DB에 저장이 되는 데, 회원탈퇴를 했을 때 DB에 저장 돼 있는 데이터가 삭제 되는 지?? # 회원탈퇴를 해도 입력했던 내 정보는 DB에서 삭제가 안된다. # 로그인을 할 때나 회원 정보를 수정할 때 select 쿼리를 무조건 사용해야 한다. # 위에 상황에서 사용하는 회원 테이블에 회원이 탈퇴하면 회원테이블에 정보를 삭제한다. # 회원정보를 저장하는 테이블은 통상 적으로는 2개를 운영한다. - 현재 회원으로 유지 중인 정보를 저장하는 테이블 - 탈퇴한 회원 정보를 저장하는 테이블 # 회원 탈퇴가 진행 됐을 때는 현..