전체 글 (495) 썸네일형 리스트형 Day 19 (Apache) 오늘은 Apache서버를 이용해서 계정별 홈페이지가 다르게 접속하는 방법에 대해 실습하겠다. 먼저 사용자 계정을 st01, st02, st03로 생성한뒤 Web서버에서 사용할 홈디렉토리의 권한 및 소유자, 소유그룹을 변경해 준다. 다음으로는 사용할 홈 디렉토리 내에 httpd://ip/~st01, httpd://ip/~st02, httpd://ip/~st03로 접속이 가능한 페이지(실습에서는 index.html)를 생성한다. apache서버 설정파일에서 변경할 부분은 httpd-userdir.conf부분이다. 이 부분은 기본적으로 주석처리 되어있는데 Include지시어를 사용하게 변경한다. Includ지시어는 파일을 참조해 파일안에 적힌 내용을 붙여넣기 하는 것과 같은 역할을 한다. /app/apache.. Day 19 (SQL) 트랜잭션(Transaction)과 잠금(Lock) 트랜잭션은 하나의 작업단위를 말하며 원자성(Aotomicity), 일관성(Consistency), 독립성(Isolation), 영속성(Durability)을 가진다. 원자성(Aotomicity)은 트랜잭션은 최소의 작업 단위로서 전체가 처리되거나 취소되는것이지 일부만 처리되지 않는 속성이다. 일관성(Consistency)은 트랜잭션이 실행된 이후 DB의 무결성은 반드시 유지되어야 하는 속성이다. 함수적 종속관계에 있어야 한다는 말이다. 독립성(Isolation)은 여러개의 트랜잭션을 여러 개 동시에 실행하더라도 각각의 트랜잭션은 서로 영향을 줄 수 없는 속성이다. 즉 실행이 종료되지 않는 트랜잭션의 결과는 다른 트랜잭션에서 참조하는 것이 불가능하다. 대표.. Day 18 (apache) 이번 시간에는 가상의 호스트를 사용하는 방법을 배워 보았다. 가상의 호스트를 사용하는 이유는 우리가 실제로 사용할수있는 IP는 한정적이라 하나의 아이피를 사용해서 여러 도메인에 연결하여 외부에서 볼때는 다른 아이피로 접속하는것과 같은 효과를 내는 것이다. 아이피가 충분히 많다면 도메인을 늘리는것은 어렵지 않다. 먼저 기본적으로 IP Alias를 이용하여 다른 아이피로 도메인에 접속하게 해보겠다. 이번에는 apache내부에서 VirtualHost를 이용해 다른 도메인을 구축하게 한다. 먼저 httpd.conf파일에서 httpd-vhosts.conf파일을 참조할수있게 해준다. DNS서버에 zone파일을 2개로 설정하고 각각 다른 도메인으로 작성한다. zone파일에 도메인을 바꿔줄 IP주소를 작성한다. hom.. Day 18 (SQL) DML문은 행단위 작업을 의미하며 INSERT, DELETE, UPDATE로 구성되어있다. 'INSERT INTO 칼럼 VALUES 값;'으로 구성되고, 테이블의 어떤 열에 어떤 값을 입력하겠다는 의미이다. 'UPDATE 테이블 SET 칼럼 = 값 [WHERE 조건];'으로 구성되고, 테이블의 어떤 열에 조건에 맞춘 값을 변경하겠다는 의미이다. 여기서 WHERE은 사용하지 않아도 되는데 사용하지 않는다면 모든 행의 값을 전부 변경한다. 'DELETE FROM 테이블 [WHERE 조건];'으로 구성되고, 테이블에서 조건에 맞는 행을 삭제한다는 의미이다. INSERT, DELETE, UPDATE를 사용하고 나면 COMMIT이나 ROLLBACK을 무조건 사용해줘야한다. 그렇지 않으면 테이블 내용 수정이 이루어.. Day 17 (apache) 이번에는 Web서버 중에 하나인 apache서버를 생성할것이다. apache서버는 리눅스 뿐만이 아니라 윈도우에서도 사용 가능하다. 먼저 apache서버를 설치할것인데 yum으로 설치하게 되면 실습에 필요한 기능이 없기 때문에 이번에는 compile하여 데몬을 설치했다. 모듈을 이용한 compile은 두가지 방식이 있다. 정적 모듈은 부족한 부분만 컴파일이 불가하여 새로 설치방식이고, 동적모듈은 컴파일에 부족한 부분을 추가하는 방식이다. 그래서 apache-enable하고, 동적 모듈을 사용하여 직접 컴파일했기 때문에 지정한 디렉토리에 모든게 들어가 있다. 하지만 yum은 실행파일은 bin에 있고, 설정파일은 etc에 있는 등 파일들이 분산되어 생성된다. 먼저 데몬을 압축시킨 압축 파일을 다운받는다. 그.. Day 17 (SQL) 단일 행 함수 변환함수 변환함수는 DB사용시 무조건 사용해 줘야한다. DB설정값에서 자동으로 해준다고 해도 불확실하므로 안전하게 한번 더 해준다. 날짜 출력을 변환하는 형식에서 연도는 YYYY로 4자리로 출력한다.(※YY나 RR도 있는데 두자리 표기는 1999년 Y2K이후에 사용하지 않는다.) 월을 출력하는 형식은 MM, MONTH, MON 3가지가 있는데 MM은 월을 두자리 숫자로 출력된다. MONTH는 영문이나 한글로 표현한 월이 출력된다. MON은 영문이나 한글로 표현하는 월을 약자로 출력한다. 하지만 한글에서는 MONTH나 MON이나 동일하다. 일을 출력하는 형식은 DD, DAY, DY 3가지가 있는데 DD은 일을 두자리 숫자로 출력된다. DAY는 영문이나 한글로 표현한 요일이 출력된다. DY는 .. Day 16 (DNS) 팀원들과 함께 아래와 같은 다중 도메인 서버를 구축했다. root와 cache서버를 담당하는 1명과 다른 인원들은 상위 DNS와 하위 DNS를 구성하고 다른 사람과 교차해서 구축한다. root DNS에서 주는 named.ca파일에 있는 내용에 root DNS의 주소만 있어야 한다. 원래 있던 root DNS내용이 있다면 그 주소로 검색을 할수 있기 때문에 지워야 한다. 여기까지는 관계나 순서만 정해진 후에 임의로 작성한 코드들이다. 이것들을 관계에 맞게 수정해야한다. 고쳐야 할것은 root DNS로부터 받은 named.ca파일과 /etc/resolv.conf파일, /etc/named.conf파일, /var/named/*.zone(*는 /etc/named.conf에서 설정한 zone파일 명이 들어가야 한다.. Day 16 (SQL) 집합 연산자는 집합의 역할을 하는 연산자이다. 합집합, 교집합, 차집합역할을 하는 연산자들이다. 합집합을 나타낼때는 UNION과 UNION ALL을 사용한다. 둘다 데이터를 모두 출력하는데 UNION은 중복값을 제외하고, UNION ALL은 중복값도 중복으로 출력한다. 교집합의 역할은 intersect 연산자가 하게 되는데 아래 예제에서 보듯이 AND를 사용해서 표기해도 같은 값이 나오고 성능에도 큰 차이가 없어 intersect연산자를 많이 사용하지 않는다. minus는 차집합을 나타내는 연산자인데 이것도 AND연산자로 동일하게 표현이 가능하기 때문에 굳이 사용하지 않는다. 아래 예제는 minus와 intersect를 사용한 것과 AND연산자를 사용했을때 출력값들이다. 실습 12 1. 화학과 학생과 교.. 이전 1 ··· 56 57 58 59 60 61 62 다음