윈도우7 오라클 10g 설치하기

오라클 홈페이지에서 비슽용 오라클 제품을 다운로드 받는다.

10203_vista_w2k8_x86_production_db

받은 파일을 아래와 같이 수정한다.

수정 파일 : /db/Disk1/stage/prereq/db/refhost.xml , /db/Disk1/stage/prereq/db_prereqs/db/refhost.xml

<CERTIFIED_SYSTEM>

<OPERATING_SYSTEM>

<VERSION VALUE=”5.0″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

<OPERATING_SYSTEM>

<VERSION VALUE=”5.1″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

<OPERATING_SYSTEM>

<VERSION VALUE=”5.2″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

<!– Microsoft Windows Vista –>

<OPERATING_SYSTEM>

<VERSION VALUE=”6.0″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

<!– Microsoft Windows7 –>

<OPERATING_SYSTEM>

<VERSION VALUE=”6.1″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

</CERTIFIED_SYSTEM>

이 부분을 찾아볼수 있다.

기본적으로 아래와 같은 소스가 존재 하지 않는다면 직접 추가해 주면 되겠다.

<!– Microsoft Windows7 –>

<OPERATING_SYSTEM>

<VERSION VALUE=”6.1″>

<SERVICE_PACK VALUE=”1″/>

</OPERATING_SYSTEM>

 

수정파일 : /db/Disk1/install/oraparam.txt

[Certified Versions]

#You can customise error message shown for failure, provide …

Isolation level

출처 : http://cafe.naver.com/sqlserver.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=397

수많은 트랜잭션에 의해 데이터는 끊임없이 변경 및 ACCESS되고 있으며 이러한 과정 속에 검색되는
데이터 값의 어디까지를 내 트랜잭션에서 처리할 것인가를 결정하기 위해 ASE에서는 isolation level를
지정할 수 있다.

isolation은 다른 트랜잭션에 의해 변경되고 있는 dirty page를 읽을 수 있는가? 하나의 트랜잭션에서 검색
되는 데이터의 일관성을 유지할 것인가? 하나의 트랜잭션에서 발생되는 phantom 현상을 허용할 것인가에 따라 isolation의 level을 1,2,3으로 정의한다.

Dirty Read?

트랜잭션1이 데이터를 변경후 트랜잭션을 종료(commit또는 rollback)하지 않은 상태에서 트랜잭션2가 변경된 데이터로 접근할 수 있다

트랜잭션1이 변경한 데이터에 대해서 commit할 지 rollback할지 트랜잭션2는 알 수 없으므로 rollback과
함께 트랜잭션1이 종료한다면 트랜잭션2는 잘못된 데이터로부터 잘못된 처리를 할 수 …

MSSQL 관리자가 알아야 할 기법 11

1. 데이터베이스의 모든 테이블 행을 가장 빨리 세는 방법
SQL 서버 데이터베이스 내에 존재하는 시스템 테이블 ‘sysindexes’에는 ‘rows’란 컬럼이 존재한다. 이 컬럼은 테이블에 반영된 행들의 수를 갖고 있다. 다음 SQL문을 실행시키면 원하는 결과를 효과적으로 얻을 수 있을 것이다.

select o.name, rows
    from sysobjects o inner join sysindexes i on o.id = i.id
    where i.indid < 2
    order by o.name

where 절의 “indid<2” 부분은 클러스터드 인덱스(clustered index) 또는 힙(heap) 정보를 찾지 않기 위함이다. 이 결과는 실제로 트랜잭션(transaction)이 일어난 행만 카운트한다.

2. 스토어드 프로시져에 대한 파라미터로 테이블 이름을 사용하는 방법
이것을 위해서는 동적인 SQL을 사용해야 한다. 다음 스크립트를 참조하기 바란다.

Create proc 

DB Attach And Detach

다른 드라이브로 변경하시려면 우선은 디비에서 옮기려고하는 DB를 따로 분리해야 합니다.

그러기 위해서 사용하는 것이 master db의 storeprocedure를 보면 sp_detach_db 가 있습니다. sp를 사용하여 데이터베이스에서 분리를 시킴니다.

예제> sp_detach_db ‘데이터베이스명’

분리시킨 데이터베이스의 mdf 와 ldf 는 이제 삭제 혹은 이동이 가능합니다. 두개의 파일을 다른 드라이브로 이동을 시킵니다.

그리고 이동시킨 데이터베이스의 파일을 기존의 데이터베이스로 붙여야 정상적인 사용이 가능합니다. 그러기 위해서 사용하는 stroreprocedure가 sp_attach_db 입니다.

예제> sp_attach_db ‘데이터베이스명’, ‘mdf 파일경로’, ‘ldf 파일경로’

이렇게 하시면 기존의 데이터베이스명에 경로가 다르게 설정되게 됩니다.

위와같이 복잡한 과정을 거치는 이유는 데이터베이스의 트리에 해당 데이터베이스가 보인다는 것은 사용을 하고 있다는 것입니다. 그럼 삭제 혹은 이동이 불가능 합니다. MS-SQL에서 사용하고

명령어


  • isql -Uuser / isql -Uuser -P

  • sp_helpdb
    DB에 대한 정보를 본다.

  • sp_help / sp_help table_name

  • sp_who

  • sp_monitor

  • sp_spaceusedCurrent
    Dataabase의 특정 table 및 모든 table의 total row수, data page수

  • sp_lock
    현재 hold lock상태의 process에 대한 정보 제공

  • dump tran RASFAX with truncate_only
    트랙잭션 로그를 삭제한다.

  • sp_logdevice RASFAX, test_device
    로그 디바이스를 바꾼다