Oracle Data Types
0. 데이터 타입 및 길이의 중요성 각 데이터 타입의 고유한 특성이 있다 -> 컬럼 속성에 맞는 데이터 타입을 사용했느냐 여부에 따라서 많은 차이가 발생 적절하지 못한 데이터 타입 선정 -> 수행속도 저하, 불필요한 자원의 낭비 초래 각 데이터 타입의 특성에 따라 정보를 가장 효율적으로 처리하기 위한 적절한 데이터 타입을 선정해야 한다 CHAR, VARCHAR, NUMBER, DATE, […]
0. 데이터 타입 및 길이의 중요성 각 데이터 타입의 고유한 특성이 있다 -> 컬럼 속성에 맞는 데이터 타입을 사용했느냐 여부에 따라서 많은 차이가 발생 적절하지 못한 데이터 타입 선정 -> 수행속도 저하, 불필요한 자원의 낭비 초래 각 데이터 타입의 특성에 따라 정보를 가장 효율적으로 처리하기 위한 적절한 데이터 타입을 선정해야 한다 CHAR, VARCHAR, NUMBER, DATE, […]
MySQL 필드의 데이터 타입 정리 (대부분 MS-SQL,Access 와 비슷하지만 몇가지가 틀림,또한 Access 의 경우, 이제 더이상 업그레이드가 되지 않지만,MS-SQL 의 경우, 계속 업그레이드 되면서 필드 타입도 추가되는 추세임대표적예: MS-SQL2005 버전에서는 smallint,bigint 등 새로운 타입이 추가되었음?) ———————————————————————– MySQL 데이터베이스에는 크게 다음과 같은 세 가지 데이터 타입이 있다.===========================================================데이터타입 내용 예제———————————————————–숫자형 숫자를 저장하는 필드 TINYINT, INT, FLOAT———————————————————–문자형 문자를
출처 : http://blog.daum.net/miracle_jhw/14 1장. Pro*C 소개와 기본 특징 1-1. Pro*C 개요 SQL 문은 절차형 언어가 아니다. 그래서 오라클을 포함한 많은 데이터베이스는 PL/SQL이라는 절차형 언어를 제공한다. DBMS의 버전이 높아지면서 이전과 다르게 PL/SQL에도 다양한 기능이 추가되었다. 예를 들면, TCP/IP, HTTP, FILE I/O 등과 같은 기능이 추가되어 다양한 방식의 프로그래밍이 가능해졌다. 하지만 오라클 외부 프로그램과의 연동 등에 있어서
형식) sourceanalyzer -64 -Xmx8G -Dcom.fortify.sca.RmiWorkerMaxHeap=4G -XX:-UseGCOverheadLimit -XX:MaxPermSize=256M -j 3 -logfile [로그파일] -scan -f [FPR파일] 1) CLI 예제 및 설명 sourceanalyzer -b build_id -64 -Xmx6144M -Dcom.fortify.sca.RmiWorkerMaxHeap=3072M -XX:-UseGCOverheadLimit -XX:MaxPermSize=256M -j 6 -logfile scan.log -scan -f build_id.fpr 위 CLI 예제에 노란색으로 표시된 영역이 Parallel mode 옵션입니다. -j scan 시 사용할 CPU 코어이며, -Dcom.fortify.sca.RmiWorkerMaxHeap는 각 CPU 코어가 사용할 힙
설정 파일 경로 : Fortify SCA 설치경로\Core\config\fortify-sca.properties 설정 변경 예제 : 소스 파일 확장자가 .biz일 경우, 아래 노란색 표시 부분처럼 변경 후 소스 재분석(예제 fpr 첨부, 참조바람) com.fortify.sca.DefaultFileTypes=java,jsp,jspx,tag,tagx,tld,sql,cfm,php,phtml,ctp,pks,pkh,pkb,xml,config,settings,properties,dll,exe,inc,asp,vbscript,js,ini,bas,cls,vbs,frm,ctl,html,htm,xsd,wsdd,xmi,py,cfml,cfc,abap,xhtml,cpx,xcfg,jsff,as,mxml,cbl,cscfg,csdef,wadcfg,appxmanifest,wsdl,plist,biz # Custom Rules## This property controls what directory is searched to pick up custom rules. If it is set, the default# (Core/config/customrules) will not be searched #com.fortify.sca.CustomRulesDir=${com.fortify.Core}/config/customrules
[Fortify]임의의 소스파일 확장자 매칭 방법 더 읽기"
■ 윈도우즈 wmic bios get serialnumber SerialNumberMP26PB8 ■ OpenBSD sysctl hw.serialnohw.serialno=MP26PB8 ■ Linux dmidecode -t system | grep SerialSerial Number: MP26PB8
/etc/udev/rules.d/70-persistent-net.rules 파일 삭제 후 리부팅
vmware-CentOS 이미지 복사 후 네트워크 설정 더 읽기"
■ 다운로드 http://www.oracle.com/technetwork/database/features/instant-client/ instantclient-basiclite-nt-12.1.0.1.0.zipinstantclient-odbc-nt-12.1.0.1.0.zipinstantclient-sqlplus-nt-12.1.0.1.0.zip C:\Program Files (x86)\instantclient_12_1 디렉토리에 차례대로 푼다. ■ 환경변수 추가 TNS_ADMINC:\Program Files (x86)\instantclient_12_1 LD_LIBRARY_PATHC:\Program Files (x86)\instantclient_12_1 PATH 추가;C:\Program Files (x86)\instantclient_12_1 ■ C:\Program Files (x86)\instantclient_12_1\tnsnames.ora 추가 TEST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.100)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = SIDTEST) ) ) ■ 접속 시험sqlplus test_user/password@TEST
윈도우 Oracle Instant Client 설치 더 읽기"
※ sqlplus / as sysdba 에서 실행한다. ■ DATA DICTIONARY 성능 평가 SELECT sum(gets) “gets”, sum(getmisses) “getmisses” , round( (1-(sum(getmisses)/sum(gets)) )*100,2) “Hit Ratio”FROM gv$rowcacheWHERE gets > 0 ; ☞ 이 값은 Hit Ratio가 95% 이상이면 정상이다. 만약 수치가 높으면 shared_pool_size의 값을 증가 시켜야 한다. ■ LIBRARY CACHE 성능 평가 select to_char(trunc(sum(reloads)/sum(pins)*100, 5),99.99999)||’% (less than 1%)’ “Library Cache
■ 파티션 테이블이란… 테이블을 컬럼별로 쪼개어 각각의 물리적 테이블스페이스로 분산 ■ 파티션 테이블 장점 – 데이터 액세스시 범위를 줄여 Performance 향상을 가져올 수 있음.- 여러 분할 영역으로 관리되어 데이터 훼손 가능성이 감소 되고, I/O 성능 향상을 가져 올 수 있음.- 각 분할 영역을 독립적으로 백업하고 복구 할 수 있음. ■ 파티션 테이블 생성 예 (Range
Oracle Partition Table 설명 더 읽기"
1. [백업] 아래 테이블들을 백업한다. (exp 또는 SQL Developer를 사용)INGRIAN.ING_AUTHORIZED_USERINGRIAN.ING_ENCRYPTED_TABLEINGRIAN.ING_ENCRYPTED_COLUMNINGRIAN.ING_PROPERTY (선택) – Oracle exp (백업 시)exp userid=INGRIAN/123456 file=safenet.dmp log=safenet_exp.log tables=INGRIAN.ING_AUTHORIZED_USER,INGRIAN.ING_ENCRYPTED_TABLE,INGRIAN.ING_ENCRYPTED_COLUMN,INGRIAN.ING_PROPERTY – Oracle imp (복구 시)imp userid=INGRIAN/123456 fromuser=INGRIAN file=safenet.dmp log=safenet_imp.log ignore=y tables=INGRIAN.ING_AUTHORIZED_USER,INGRIAN.ING_ENCRYPTED_TABLE,INGRIAN.ING_ENCRYPTED_COLUMN,INGRIAN.ING_PROPERTY 2. [백업] INGRIAN.ING_PROPERTY.INSTANCE_ID를 참조하여 Connector의 Instance ID 기록해 놓는다. (중요!!)(ex: 24808-6737-4501-6982)※ Instance ID 얻는 쿼리SELECT PRPTY_VAL_NM FROM INGRIAN.ING_PROPERTY WHERE PRPTY_KEY_NM=’INSTANCE_ID’;
DataSecure Connector 재설치 시 백업항목 더 읽기"
1. INGRIAN Object 삭제 sqlplus INGRIAN/123456 @drop_ingidx.sqlsqlplus INGRIAN/123456 @drop_ingrian_functions.sqlsqlplus INGRIAN/123456 @drop_ingrian_procs.sqlsqlplus INGRIAN/123456 @drop_java_ingidx.sql 2. 오라클 INGRIAN 계정 삭제 DROP USER INGRIAN CASCADE;DROP TABLESPACE TS_INGRIAN INCLUDING CONTENTS AND DATAFILES; 3. 아래를 실행 rm -f $ORACLE_HOME/javavm/lib/IngrianNAE.propertiesrm -f $ORACLE_HOME/javavm/lib/loadProperties.*
DataSecure Java Connector 삭제방법 더 읽기"
■ 상황 1. 복호화 안됨2. INGRIAN DB계정 이상 ■ 해결방법 1. [백업] 필요한 테이블을 백업한다. (백업 방법 참조) 2. [계정 삭제] INGRIAN 계정 삭제 후 재 생성 3. [재 설치] ProtectDB 재 설치 (설치 시 INSTANCE ID를 이전 것으로 설정한다.) 4. [복원] 백업했던 테이블을 복원 한다. 예)Insert into INGRIAN.ING_ENCRYPTED_TABLE (ENCRPT_TBL_ID,DB_NM,TBL_OWNR_NM,ORGNL_TBL_NM,NEW_TBL_NM,ADD_ID_CLMN_FL,ID_CLMN_NM,ID_CLMN_DATA_TYPE_NM,ID_CLMN_LEN_QTY,ID_CLMN_PRCSN_QTY,ID_CLMN_SCALE_QTY,TMPRY_TBL_NM,TMPRY_TBL_TBLSPC_NM,INTRM_VW_NM,INSRT_TRG_NM,UPDT_TRG_NM,PRIMARY_KEY_COL_NMS,PRIMARY_KEY_NM,TMPRY_TBL_CREATE_FL,VW_CREATE_FL,SERVER_VERSION,SERVER_MIGRATION_VERSION,UDF_VERSION,SEQ_NM,OLD_DATA_EXIST_FL,CREATE_DT,CREATE_USER_NM,LAST_MDFY_DT,LAST_MDFY_USER_NM,META_CNTR,OP_ONLINE) values(1,”,’TEST’,’TBL_TEST’,’TBL_TEST_NEW’,’Y’,’ING_ROW_ID’,’NUMBER’,38,38,0,null,null,’TBL_TEST_IDV’,’TBL_TEST_INS_TRIG’,’TBL_TEST_UPD_TRIG’,null,null,’N’,’Y’,’4.3.1′,’4.2.0′,’4.3.0′,’ING_SEQ_1′,’N’,to_date(’14/01/26′,’RR/MM/DD’),’TEST’,to_date(’14/01/26′,’RR/MM/DD’),’TEST’,1,’N’); Insert into INGRIAN.ING_ENCRYPTED_COLUMN (ENCRPT_CLMN_ID,ENCRPT_TBL_ID,ORGNL_CLMN_NM,NEW_CLMN_NM,ENCRPT_KEY_NM,ENCRPT_ALGRTHM_NM,ENCRPT_MODE_NM,ENCRPT_PAD_NM,ENCRPT_IV_TYPE_CD,ENCRPT_IV_NM,ENCRPT_IV_CLMN_NM,ENCRPT_NULL_RPLCMNT_NM,ERR_RPLCMNT_ID,CLMN_ORGNL_DATA_TYPE_NM,CLMN_ORGNL_LEN_QTY,CLMN_ORGNL_PRCSN_QTY,CLMN_ORGNL_SCALE_QTY,CLMN_NULL_FL,CLMN_NEW_DATA_TYPE_NM,CLMN_NEW_LEN_QTY,CLMN_DATA_MGRT_FL,ENCRPT_FL,CREATE_DT,CREATE_USER_NM,LAST_MDFY_DT,LAST_MDFY_USER_NM,DMN_IDX_TBLSPC_NM,DMN_REG_IDX_NM,DMN_IDX_NM,DMN_IDX_CREATE_FL,DMN_IDX_FL,ROTATE_CLMN_NM,ROTATE_CLMN_CREATE_FL,ROTATE_KEY_NM,ROTATE_IV_NM,REROTATE_FL)
DataSecure 오류 복구 시나리오 #1 더 읽기"
원문 : http://msdn.microsoft.com/ko-kr/library/ms191320%28v=sql.110%29.aspx 이 항목에서는 Transact-SQL을 사용하여 SQL Server 2012에서 Transact-SQL 사용자 정의 함수를 만드는 방법에 대해 설명합니다. 항목 내용 시작하기 전에: 제한 사항 보안 사용자 정의 함수를 만들려면 스칼라 함수 만들기 테이블 반환 함수 만들기 시작하기 전에 제한 사항 사용자 정의 함수는 데이터베이스 상태 수정 동작을 수행하는 데 사용할 수 없습니다. 사용자 정의 함수에는
** SQL문은 대소문자를 구분하지 않지만 데이타는 대문자와 소문자를 구분한다 주석을 다는 방법은 /* 주석 */ 이거나 한줄만 주석 처리를 할 경우는 문장 맨앞에 –를 붙인다 ** 각각의 데이타베이스의 SYSOBJECTS 테이블에 해당 데이타베이스의 모든 정보가 보관되어 있다 SYSOBJECTS의 TYPE 칼럼으로 ‘U’=사용자 테이블, ‘P’=저장 프로시저, ‘K’=프라이머리 키, ‘F’=포린 키, ‘V’=뷰, ‘C’=체크 제약등 오브젝트 이름과 정보를 알 수 있다
Switches and versions The version information is not complete. Some switches are not available in all versions. Usually, a switch available in one version will also be available in later versions, but not always. Unless otherwise stated, most of the following switches are used on the Ghost command-line with Ghost.exe, Ghostpe.exe, or Ghostwks.exe. Switch Type
Symantec Ghost Switches and versions 더 읽기"
■ 1번 예제 (SELECT ingrian.ing_gn_rndm(8) FROM DUAL); ■ 2번 예제 DECLARE TEST_IN_VALUE RAW(2000);BEGIN TEST_IN_VALUE := ingrian.ing_gn_rndm(8);END; ■ 3번 예제 DECLARE TEST_IN_VALUE VARCHAR2(1024) := ‘TEST’; TEST_OUTPUT_VALUE VARCHAR2(1024);BEGIN TEST_IN_VALUE := ingrian.IngIdxGetProperty(TEST_IN_VALUE, TEST_OUTPUT_VALUE);END;
1. $ORACLE_HOME 디렉토리에 있는 설치 파일을 전부 삭제합니다. 2. /etc 디렉토리에 있는 orainst.loc, oratab 파일을 삭제합니다. 3. /usr/local/bin/oraenv 파일을 삭제합니다. 4. /tmp 디렉토리에서 관련된 파일을 삭제합니다. 5. oracle 설치시 생성한 계정의 환경설정 파일(.bash_profile)을 다른 위치에 복사합니다. 6. oracle 설치시 생성한 계정을 삭제합니다. 7. oracle 설치시 생성한 계정의 HOME 디렉토리를 삭제합니다.