개발 일을 하다가 보니 MS SQL2008R2 를 사용하고 있습니다.

고객사의 모니터링 시스템을  만들고 있었습니다.

이미지를  저장에 대하여 관리적인 측면에서  파일을 DB에 저장을 합니다.

SQL2008부터 FILESTREAM이 있고 강력하다는 말에 사용하게 되었습니다.

하지만, 내 생각과 다른 부분이 있어서,  힘들게 셋팅 된 부분과 내용을 지워야 했습니다.

그래서, 제거(삭제) 순서를 이렇게 하였습니다.

1. FileStream이 들어간 테이블  삭제 –> drop table filestream_tablename

2. DB FILE 삭제 -> alter database dbname remove file filestream_filename

3. DB FILEGROUP 삭제 -> alter database dbname remove filegroup filestream _groupname

4. FILE STREAM 기능 해제 –> SQL구성관리자 => SQL Server => 속성 =>FILESTREAM TAB => T-SQL 엑세스에 FILESTREAM사용 해제 => SQL SERVER 재시작

4번에서 기능을 해제하고 재 시작하면 DB접속이 되지 않을 경우가 있습니다. 이 때, 다시 사용을 체크하고 DB 연결이 후 재시작하면 연결되고, 이후  다시  1,2,3,4 을  해 주면  됩니다.

일단 지우고 예전 소스를 돌려도 아직까지는 깔금하게 동작하고 있습니다. 관리 측면도 편합니다.

하지만, FILE STREAM 를 꼭 사용해야 할 경우가 있습니다 .

예전방식에서 FILE이 너무 크면 DB저장이 부적절했습니다.  SELECT와 INSERT가 문제였습니다.

이를 나름 해결점을 제시 하는 방식이 FILESTREAM입니다. 즉, 대용량의 파일을 SQL관리시스템 하에 둘 때

성능저하를 가져오지 않고 사용하고자 할 때 괜찮습니다.

단점은 백업과 저장 위치, 파일삭제 등의 문제가 조금 있습니다. 이곳에 CHECKPOINT 등을 두어 시스템적으로 해결 할 수 도 있습니다.   개인적으로 아직은 편리함 보다 불편함이 많은 기능인 것 같습니다.

블로그 이미지

UART

,