아주 별의 별 것 다 해봅니다-_-;
모 고객사가 서버가 Windows 2003 server에 MSSQL을 사용한다고해서 MSSQL까지 삽질하게 되었습니다. MS계열의 것은 학교다닐 때 MFC나 C#을 배운 것 빼고는 제대로 배워본 적이 없어서 MS제품과는 좀 인연이 없었습니다. 하지만, 일하다보니 이런 MSSQL Database를 만지게 되었네요.

우선 공짜버전인 Express Edition버전을 설치해봤습니다.
http://www.microsoft.com/korea/msdn/vstudio/express/sql/download/


이 사이트가면 3. 다운로드 및 설치 부분에서 2개로 나눠진 것을 볼 수 있습니다. 초간단을 원하면 왼쪽에 있는 것을 받고, 다 되는 것을 받으려면 오른쪽 것을 받으라는 말 같습니다. 저는 초간단만 필요해서 왼쪽것을 받았습니다.

Microsoft SQL Server 2005 Express Edition
SQL Server Management Studio Express

요렇게 두개를 받았는데요. 위에 것은 MS SQL Server구요. 요 아래것은 MySQL에서 따지면 MySQL Administrator라고 하면 될까요? DB조작을 쉽게 해주는 툴입니다.


설치할 때 이것저것 옵션을 많이 물어보는데요. 저도 그냥 잘 몰라서 대충 설치했습니다-_-;

윈도우인증, mssql인증 뭐 이런게 있는데요. 저는 JDBC를 이용해서 접속할 것이라서 둘다 인증되는 걸루 설치하는 것 빼곤 별 특의사항 없네요.


우선 설치하고 JDBC로 접속하는데 좀 힘들었던 것이....

디폴트로 TCPIP가 꺼져있다는 겁니다. 이것때문에 엄청 고생했습니다.

Microsoft SQL Server 2005 -> 구성 도구 -> SQL Server 구성관리자를 실행하고,

SQL Server 구성 관리자 -> SQL Server 2005 네트워크 구성 -> INSTANCE이름(SQLEXPRESS)에 대한 프로토콜을 선택하면, TCP/IP가 꺼져있습니다.

이걸 사용으로 바꾸고 나서,

시작 -> cmd -> telnet locahost 1433(mssql은 1433이 기본포트라고 하네요)

저렇게 해서 아래와 같이 나온다면

C:\Documents and Settings\mudchobo>telnet localhost 1433
연결 대상 localhost...호스트에 연결할 수 없습니다. 포트 1433: 연결하지 못했습니다.
C:\Documents and Settings\mudchobo>
포트설정이 잘못 되어있을 겁니다.
TCP/IP 오른쪽버튼 클릭하고 속성누르면, 프로토콜에 모두 수신합니다가 예로 되어있으면, IP주소탭에서 IPALL부분에 포트가 설정이 잘못 되어있었을 껍니다. TCP 동적 포트는 비워두고, TCP포트는 1433으로 바꿔줍니다.
DB를 재시작하고 telnet 때리면 될 겁니다.

그다음에 DB를 컨트롤해야하니까 아까 두번째로 설치한 SQL Server Management Studio Express를 실행해봅시다.
그럼다음 아까 설정한 인증으로 로그인 하고, 보안 -> 로그인 부분에 사용자를 추가할 수 있습니다.
사용자를 추가한다음에 데이터베이스를 생성해서 해당 사용자에게 할당할 수 있습니다.
이건 뭐 삽질 해보면 됩니다.

JDBC는 이곳에서 받을 수 있습니다.
http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=c47053eb-3b64-4794-950d-81e1ec91c1ba
이건 1.2버전인데, 2.0 preview버전도 있는 것 같아요. 이것도 다른 jdbc driver처럼 사용하면 돼요.
대신 주소입력하는 게 좀 틀리더라구요.
jdbc.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc.url=jdbc:sqlserver://localhost;databasename=mudchobo
jdbc.username=mudchobo
jdbc.password=mudchobo
저렇게 사용합니다.

음 DB컨트롤은 쉽네요. ORACLE만 해왔는데, 칼럼type도 완전 틀리고, SQL문에서 어떤 난간을 만날지 두렵네요-_-;
 
Posted by 머드초보
,