나는 인간 행위를 조롱하거나 한탄하거나 경멸하기보다는 이해하기 위해서 끊임없는 노력을 경주해 왔다

베네딕트 스피노자,정치논고,1677년

일하기 6

MSSQL File사이즈 축소

초기에 계획을 잘 세워 구성을 하긴 했는데, 뭐 몇년을 운영하다 보니, 여러가지로 손볼께 생긴다.특정 파일그룹에 부하가 좀 심해져서, 해당그룹의 파일을 좀 추가했더니만 정리할 필요가 생겼다.처음엔 UserDataTr이란 파일그룹에 UserData_Tr1~4까지 30G씩 생성해서 사용을 했었는데, 한 2년쯤 지난 후에 부하가 좀 있어서 파일을 4개를 더 추가했다. 물론 다른 Disk에...그리고 또 하나를 생성하고 그래서 총 10개 파일로 구성이 되어 있었다. 실은 한달에 1번정도 빈도로 이상하게 Avg. Disk Queue Length값이 10정도로 한 5시간정도 지속되는 경우가 있었다. 이것 때문에 여러가지 조치를 취한 것들의 결과였다. 사실 이 현상은 전혀 다른 문제로 인한 것이 였지만...아무튼 결..

일하기/기타 2012.04.01

CMD 배치파일에 날짜받아서 실행하기

서버프로그램을 주로 만들다 보니 txt파일로 로그를 남기는 경우가 많이 있다. 로그보기 프로그램을 매번 만들려고 하는데, 그놈에 귀챠니즘때문에 그냥 CMD모드의 tail프로그램을 쓰고 있다. 보통 로그는 일별로 기록하게 되는데 cmd창에 들어가서 해당일자의 로그를 보는게 귀챤아서 배치파일을 만들었다. 뭐..예전엔 많이 사용했지만, 이젠 거의 사용하지 않킨 하지만. 아래내용으로 .bat파일을 만들어 주면 된다. @echo off d: cd \myProj\Log set $tok=1-3 for /f "tokens=1 delims=.:/-, " %%u in ('date /t') do set $d1=%%u if "%$d1:~0,1%" GTR "9" set $tok=2-4 for /f "tokens=%$tok% d..

일하기/기타 2012.03.12

TcpClientChannel Timeout설정하기

.NET Remoting을 사용할때 요청 타임아웃 설정하는 법. 역시 오늘도 삽질을 하고 있습니다. private TcpClientChannel _channelTcp = null; // 채널생성을 위한 프로퍼터생성 IDictionary props = new Hashtable() as IDictionary; props["name"] = "TcpChannel"; props["timeout"] = 200; props["connectionTimeout"] = 200; // Timeout 200msec props["socketcachetimeout"] = 0.2; // Timeout 200msec // 채널생성 : 바이너리 포맷터 _channelTcp = new TcpClientChannel(props, new ..

일하기/C# 2012.03.12

[MSSQL 2005] SQL Server Configuration manager wmi 0x0007007e

테스트서버에 디벨로퍼 버젼을 깔고 환경설정을 하려 했는데. "WMI공급자에 연결할 수 없습니다. 사용 권한이 또는 서버에 연결할 수 없습니다" 란 메세지가 뜨고 실행이 않되는 현상이 발생. 구글링을 해 보면, MS홈페이지에 아래와 같은 항목이 있다. http://support.microsoft.com/kb/956013/ko CMD에서 아래 명령을 실행하면 된다는 내용 (버젼에 따라 폴더는 다를수 있슴) mofcomp "%programfiles (x 86) %\Microsoft\Microsoft SQL Server\100\Shared\sqlmgmproviderxpsp2up.mof" 그러나 않됨. 한참을 삽질했지만 실패. OS를 다시 깔아야 하나 망설이다가, 검색의 신인 배대리한테 부탁. 아래 파일을 카피하..

일하기/기타 2011.05.24

[MSSQL2005] 운영중 데이터 파일 이동하기

특정 드라이브에 I/O가 몰릴때, 특정 데이터 파일들을 이동시켜야 하는 경우가 생긴다. 운영환경일 경우엔 alter database ... move file이걸 사용할 수가 없다. 이 경우엔 다른 드라이브에 파일을 추가한후에 해당파일을 비우고 삭제하는 방식을 사용한다. Management Studio에서 파일축소/데이터축소에서 [같은 파일 그룹의 다른파일로 데이터를 마이그레이션하여 파일비우기] 를 한후에 데이터베이스 속성에서 파일페이지에서 해당 파일을 지우는 작업과 동일하다. -- 요건 현재 파일들 정보보는것. select * from sys.database_files; 1. 일단 같은 그룹으로 파일을 추가한다 alter database testDb add file ( Name = test_Tr1, Fi..

일하기/기타 2009.10.30

[MSSQL2005] 64bit버젼에서 오라클 Linked Server시 삽질중

드디어 스토리지를 구입했다. 그동안 DB가 깨질까봐 노심초사 했는데... HP MSA2000으로 요청했는데..고맙게도..IBM DS3000을 사줬다. 32bit버젼을 깔려고 하다가...64bit버젼으로 설치를 한다. Linked Server생성하려고 하는데 공급자 부분에 "Microsoft OLE DB Provider for Oracle" 이놈이 나타나지 않는다. "어!! 왜 않보이지....SQL서버 설치하면 기본으로 깔리는거 아니였나" 인터넷에서 한참을 뒤지다가.. 64bit버젼은 MS에서 지원하지 않는다는 사실을 알게 된다....빌어먹을 놈의 MS.. 오라클싸이트에서 해당 프로그램을 다운받아서 설치를 했다. "Oracle Provider for OLE DB" 이놈이다. 근데..좀 찜찜하다...Orac..

일하기/기타 2009.09.28