전체 글 (499) 썸네일형 리스트형 Day 35 (Oracle DB) control_file DBwn가 Data file에 데이터를 저장하고 LGwr이 Redo log file을 저장한다. 이 파일들을 통제 해주는 것이 control file이다. control file은 작은 이진파일이고 물리적 데이터베이스의 현재 상태 정의, 동기화 정보를 저장하고 데이터베이스의 무결성을 유지관리한다. 그래서 control file을 이동하거나 복사하게 되면 동기화가 깨져 DB시스템을 사용할수없게 된다. control file은 mount상태에서 open한다. control file에는 데이터 베이스 이름 및 식별자, 데이터베이스 생성 시간, 테이블 스페이스 이름, 데이터 파일 및 리두 로그 파일의 이름과 위치, 현재 리두로그 파일의 시퀀스 번호, 체크포인트 정보, 실행 취소 세그먼트(.. Day 34 (Php+oracle, 암호학) php_db 평가 제공된 소스코드에 보안상의 문제를 개선해서 재 프로그램 한다. . 조건 1. 추가된 소스 코드에는 반드시 주석이 포함돼야 한다. - 추가된 변수와 기능에 대한 주석을 모두 포함한다. - 주석이 없는 경우는 점수에서 제외됨. . 조건 2. 프로그램 전반에 들여쓰기, 개행 등의 기술방법이 반드시 일정해야 한다. - 프로그램이 정상 실행되어야한다. - 제한 시간은 2시간입니다. require함수를 사용하여 url무단접속을 차단하고 싶었지만 사용법을 몰라 무식하게 인증하였다. ===================================================================== 개방통신로는 누구나 다 볼수있는 선로로서 보안이 전혀 없다. 원문을 송신하게 되면 도청이나 임.. Day 34 (Oracle DB) 사용자 세션의 확인과 제한 모드를 위한 사용자의 강제 종료 제한 모드에서는 특별한 권한이 필요하다. 따라서 보통은 관리자만 사용한다. 만약 근무중에 DB접속을 제한해야 하는 일이 생긴다면 제한모드를 사용하거나 케이블을 해지하면 로그가 남기때문에 현명하지 못하다. 이때는 Unix에서 DB를 연결하는 허브를 종료하면 된다. SELECT logins FROM V$INSTANCE; // 현재 인스턴스의 제한모드 활성화 상태를 확인한다. ALTER SYSTEM [ENABLE|DISABLE] RESTIRCTED SESSION; //제한모드 활성화|비활성화 한다. SELECT count(*) FROM tab; SELECT sid, serial#, username, status FROM V$SESSION WHERE l.. Day 33 (Oracle) 오라클 startup과 shutdown 참고로 sysdba권한을 일반계정으로 줄 수 있지만 일반계정은 sysdba권한을 받더라도 사용할 수 없다. startup[nomount|mount|open[read only | read write]] 오라클 시작 shutdown[immediate|transactional|normal|abort] 오라클 종료 실습1. 오라클 startup과 shutdown한다. 실습2 오라클을 단계별로 startup 한다. V$INSTANCE는 퍼포먼스테이블이다. 퍼포먼스테이블은 시스템테이블스페이스에 있다. 더보기 실습3. 오라클 shutdown의 옵션을 사용해본다. 모든 사용자의 접속이 종료될때까지 기다린다. 모든 트랜젝션이 종료되길 기다리지만 진행중이지 않은 세션은 강제 종료시킨.. Day 33 (Php + Oracle) 사용자 인증 암호는 문자열을 다른 사용자가 알아보지 못하게 치환 하는 방식이다. 암호를 복호화 할때 사용 하는 표를 난수표라고 한다. 해시코드도 문자열을 다른 사용자가 알아보지 못하게 치환 하는 방식으로 복호화가 불가능하다. 해시코드를 일방향 함수라고도 한다. 입력의 길이는 무제한이지만 출력의 길이는 일정하다. 이는 보안상 매우 위험한데 입력한 길이에 상관없이 출력이 일정하기 때문에 추측이 가능하고 우연히 같은 해시코드가 사용될 가능성이 있다. 하지만 발생 빈도수는 낮다. 이는 위협이 있는데 위험은 낮다고 할수있다. 해시코드 생성함수는 모든 랭귀지에 있지만 자신이 사용하는 프로그램만 사용해야 한다. php에서 상태정보가 없다. 따라서 다른 페이지로 이동시 상태유지가 되지 않는다. 이를 해결하기 위해서는 .. Day 32 (Oracle) 데이터 딕셔너리 및 동적 성능 뷰 사용 이번 챕터에서는 뷰와 테이블을 테이블로 생각하겠다. 즉, 뷰와 테이블은 실제로 데이터가 저장되는 것에 대한 차이를 갖는데 이번 챕터에서만 둘다 저장된 데이터로 간주한다는 것이다. 데이터베이스와 함께 생성되는 객체가 있다. 이 객체는 물리적인 저장공간을 차지하고 있어 object라고 한다. segment또한 일종의 object이다. 이러한 객체에는 데이터딕셔너리, 성능테이블, PL/SQL패키지, 데이터베이스이벤트트리거가 있다. 데이터 딕셔너리 와 동적 성능 뷰는 메타데이터라고 하는데 데이터 딕셔너리는 데이터베이스의 객체에 대한 정보를 저장한다. 동적 성능 뷰는 Dynamic Performence Truble-shooting Table이라고 하며 perfomence t.. Day 32(Php + Oracle) 2차원 배열로 패치 oci_fetch_array는 행마다 null값이 나올때까지 패치를 진행하고 한행씩 열의 값을 대입하는 열고정 행변환 방식으로 진행된다. oci_fetch_all은 2차원 배열자체로 데이터를 가져와서 한번에 모든 데이터를 패치한다. 넣는 데이터의 열의 값이 한행씩 들어가서 행고정 열변환 방식으로 진행이된다. oci_fetch_all과 oci_fetch_array의 차이는 oci_fetch_all의 경우 데이터를 배열로 한번에 불러와서 원하는 데이터를 조작이 가능하지만 한번에 모든 데이터를 읽어오기때문에 리소스 차지 비율이 크다. 그리고 데이터를 미리 불러오고 출력하는 형식이기 때문에 리소스를 해지를 보다 빠르게 선언할 수 있으며 나올 행의 갯수를 미리 파악할수있어 가독성이 높다. 반면.. Day 31 (Oracle) 파라미터파일은 지정된 디렉토리에 지정된 이름으로 저장되어 있다. 과거에는 pfile만 있었는데 클러스터기능이 추가되면서 spfile이 생겨났다. pfile은 텍스트로 이루어져 있고 spfile은 바이너리코드로 이루어져있다. 실습에서는 spfile만 사용할것이다. spfilSID.ora파일이라고 적어놓은 것은 실습과정중에서 단일 DB를 사용하기 때문에 SID라고 적은 것이다. 엄밀히 말하면 spfileDB이름.ora로 사용해야 한다. SID는 인스턴스이름이기 때문이다. SQL실습중 바이너리파일을 수정한 방법은 'ALTER SESSION SET'명령어를 사용하여 'nls_data_format'이라는 파라미터 값을 변경했다. 만약 pfile이나 spfile이 손상되거나 지워졌을때 복구는 p파일과 sp파일을 이.. 이전 1 ··· 52 53 54 55 56 57 58 ··· 63 다음