PURGE MASTER LOGS BEFORE 날짜

저작자 표시
신고
Posted by 봉보리봉봉
LDF 파일을 읽을 수 없어서 MS-SQL Server에서 데이터베이스 상태가 '주의대상'으로 표시되는 경우, 다음과 같은 작업으로 데이터베이스 복구 작업을 수행할 수 있다.
use master
go

sp_configure 'allow update', 1
reconfigure with override
go

update sysdatabases set status=32768 where name='db name'


MS-SQL Server를 중지시키고, 문제가 되는 LDF 파일의 이름을 다른 이름으로 변경한다.

DBCC REBUILD_LOG('db name', 'LDF file path')

MS-SQL Server를 시작한다.

SELECT * FROM SYSDATABASES

sp_configure 'allow update', 0
reconfigure with override
go

DBCC CHECKDB('db name')

ALTER DATABASE {db name} SET MULTI_USER

만약, DBCC CHECKDB 명령으로 데이터베이스를 확인하여 데이터베이스에 오류가 발생한 경우는 다음의 명령으로 데이터베이스를 복구할 수 있다.

DBCC CHECKDB('db name', 옵션)
들어갈 수 있는 옵션은 다음과 같다.

(1)REPAIR_FAST : 데이타의 손실 위험 없이 빨리 복구 작업을 수행할 수 있다.(클러스터되지 않은 인덱스 복구 가능)

(2)REPAIR_REBUILD : REPAIR_FAST이 하는 모든 작업, 인덱스 재생성과 같이 시간이 소요되는 작업이 복구 과정에서 진행됨. 역시 데이터의 손실 위험은 없다.

(3)REPAIR_ALLOW_DATA_LOSS : REPAIR_REBUILD이 하는 모든 작업, 할당 오류, 구조적 행 오류나 페이지 오류, 손상된 텍스트 개체 삭제를 수정하기 위한 행과 페이징의 할당 및 할당 취소 등의 작업이 행해진다.


신고
Posted by 봉보리봉봉
ALTER TABLESPACE [tablespace name]
ADD DATAFILE '[datafile]' SIZE [size] REUSE AUTOEXTEND ON NEXT [size] MAXSIZE [unlimited|size]
신고
Posted by 봉보리봉봉

column "File Count" format 999999
column "Size(MB)" format 999,999,999.99
column "Free(MB)" format 999,999,999.99
column "Used(MB)" format 999,999,999.99
column "Max Ext(MB)" format 999,999,999.99
column "% Free" format 999.99
column "% Free Ext" format 999.99
column "Graph" format a11
column tablespace_name format a20

SELECT ts.tablespace_name,
"File Count",
TRUNC("SIZE(MB)", 2) "Size(MB)",
TRUNC(fr."FREE(MB)", 2) "Free(MB)",
TRUNC("SIZE(MB)" - "FREE(MB)", 2) "Used(MB)",
df."MAX_EXT" "Max Ext(MB)",
(fr."FREE(MB)" / df."SIZE(MB)") * 100 "% Free",
RPAD('*', TRUNC(CEIL((fr."FREE(MB)" / df."SIZE(MB)") * 100)/10), '*') "Graph"
-- ,((DECODE(df."MAX_EXT", 0, df."SIZE(MB)", df."MAX_EXT") - fr."FREE(MB)") / DECODE(df."MAX_EXT", 0, df."SIZE(MB)", df."MAX_EXT")) * 100 "% Free Ext"
FROM (SELECT tablespace_name,
SUM(bytes) / (1024 * 1024) "FREE(MB)"
FROM dba_free_space
GROUP BY tablespace_name) fr,
(SELECT tablespace_name,
SUM(bytes) / (1024 * 1024) "SIZE(MB)",
COUNT(*) "File Count",
SUM(maxbytes) / (1024 * 1024) "MAX_EXT"
FROM dba_data_files
GROUP BY tablespace_name) df,
(SELECT tablespace_name
FROM dba_tablespaces) ts
WHERE fr.tablespace_name = df.tablespace_name (+)
AND fr.tablespace_name = ts.tablespace_name (+)
ORDER BY "% Free"
/

신고
Posted by 봉보리봉봉

간단한 오라클 데이터 import / export 명령어

Export

exp {userid}/{passwd} file={dump filename}


Import

imp {userid}/{passwd} file={dump filename} ignore=y commit=y
신고
Posted by 봉보리봉봉

출처 : http://www.petefreitag.com/item/466.cfm

Select a random row with MySQL:

SELECT column FROM table
ORDER BY RAND()
LIMIT 1

Select a random row with PostgreSQL:

SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1

Select a random row with Microsoft SQL Server:

SELECT TOP 1 column FROM table
ORDER BY NEWID()

Select a random row with IBM DB2

SELECT column, RAND() as IDX 
FROM table 
ORDER BY IDX FETCH FIRST 1 ROWS ONLY

Thanks Tim

Select a random record with Oracle:

SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1
신고
Posted by 봉보리봉봉
오라클의 휴지통 기능이 있었다니... 이것때문에 테이블을 삭제한 뒤에 목록을 조회해보면 이상한 이름의 테이블들이 남아있었구나...

그것도 모르고 개발하다가 지저분해지면 tablespace 지우고 다시 생성해서 쓰곤 했었는데...
역시 아는게 힘이고, 무식한게 죄구나 ㅠ.ㅠ

아래 내용은 보관용~~
 

more..

신고
Posted by 봉보리봉봉
이전버튼 1 이전버튼

블로그 이미지
봉보리봉봉

공지사항

Yesterday33
Today5
Total131,868

티스토리 툴바