회사에서 오늘 MongoDB 관련 설명회 가 있었습니다.

주인공은 우리의 개발팀 팀장님.. :)

"이번 모바일 프로젝트에서 저희가 사용한 NoSql 중 유명한 오픈 소스 MongoDB .... "..... ㅡ,.ㅡ zzZZZZZ

말씀하시는 중에 쿨쿨 자버렸기 때문에.. 어쩔 수 없이.. 나중에 물어봤을 시..

대답을 하기 위해 설치를 하여 바로 설치해 보기로 헀습니다... 

제가 회사에서 사용하는 시스템은.. Mac 외에 데스크탑에 설치되어 있는 Ubuntu 11.10

참고한 싸이트 (http://www.mongodb.org/display/DOCS/Ubuntu+and+Debian+packages)

설치는 간단합니다.

1. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

위의 명령어로 키를 받아 옵니다.

2. /etc/apt/sources.list 파일을 열어 3번을 추가한 뒤 저장합니다. 

3. deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen

4. 터미널 창에서 sudo apt-get update

5. 터미널 창에서 sudo apt-get install mongodb-10gen

끝입니다.

간단하지요? :)

아래는 설치가 끝난 뒤 mongo 명령어를 실행해 주자 버전과 test 에 연결되는 화면이네요.. :)

설치가 간략하게 끝이 났습니다.

ㅡ,.ㅡ 그리고 이젠 뭐 해야 하지? ㅋㅋ

여하튼 Ubuntu 11.10 에 MongoDB 설치하는 간략한 방법이였습니다. (시간도 그닥 걸리지 않네요)

설정하는 방법이 좀 기네요.. 설치는 일단 여기서 끝@!!

다음은.. CakePHP 랑 mongodb 같이 쓰기입니다. (참고링크: http://mark-story.com/posts/view/using-mongodb-with-cakephp)

posted by Sungyoup Han matrim



MS SQL 쿼리 전체 테이블 이름 가져오기

간혹, DB 내 전체 테이블 이름만 가지고 오고 싶을때가 있습니다.

SQL 쿼리 한줄로 해결됩니다.

select *  from information_schema.TABLE_CONSTRAINTS


간혹 전체 테이블과, 각 테이블 별 컬럼명들까지 그리고 그외 상세 내역을 보고싶다면..

select *  from information_schema.Columns


db 내 PK 등만의 정보를 보고 싶다면..

select * from information_schema.KEY_COLUMN_USAGE


posted by Sungyoup Han matrim
  • 개똥이 2016.12.06 11:42

    관리자의 승인을 기다리고 있는 댓글입니다


현재 사용하는 SQL 이 2개있다.
SM 하는 서버는 3대이지만 2대는 2005 이고 1대는 2000 이다.

둘다 별 다를꺼 없겠지 하고 사용해 왔지만 오늘 조회해 보면서 다른점중 하나가 눈에 띄었다.

2000 에서는 프로시저에서 인자 받을때 넘어오는 값이 null 이면 Null 로 받아 버린다.
2005 에서는 프로시저에서 인자 받을때 넘어오는 값이 null 이면 '  ' (빈칸) 으로 받는다.

이때 프로시저에서 인자의 값이 NULL 일때 빈칸으로 받아줘도 되고, 넘기는 인자를 빈칸으로 보내줘도 상관은 없더라.

Null 과 빈칸의 차이는 크다. 따라서 Sql 2005 프로시저로 인자 넘길때는 별로 그닥 신경 안썼던 부분이지만 2000 서버에서는 신경 써줘야 할 부분이다.

뭐 주위에서는 설정을 해주는 부분이 있을지도 모른다고 찾아보라고 하셨는데.. 귀차니즘의 극을 달리고 있는 요즘으로써는.. 패수~를 때리고.. ㅋㅋㅋ

여하튼 DB 쪽은 신경 써주시는 분이 있어서 수월하게 일을 하고 있고 차츰 적응해 가고 있어 재밌다.

posted by Sungyoup Han matrim

누구나 실수를 한다..

오랜 경험이 있는 dba 도, 서버 운영자도, 그리고 개발자도.. 모두모두..

어이없는 실수라도.. 한번씩은 하는거 같다.

지난 주말에 정말로 어이없는 오류가 났다

토요일 오후, 잘 돌아가던 포스가 디비로의 연결이 끊어져 버린것이다.

이유가 몰까..

그날 난 넘 정신없이 잠자다 연락을 받은건 오후 2시..

커넥션 연결 COM + 다운도 아니고, 같은 서버에서 도는 웹도 잘 돌고 있다고 한다.

유독 하나의 싸이트만 디비가 떨어져 나가버리고..

디비서버에 문제가 있던것도 아니다..

툐요일 오후 늦게 출동 연락을 받은 내 몸은 2배로 무거워진 듯한 느낌..

샤워를 하다 문득 생각이 나서 확인차 연락을 했다.

연락받으신 분도 어이 없다는 듯이 확인해 보겠다고 했고.. 난 머리를 말리며

문제의 실마리를 찾고 있었다.

그뒤 전화 한통화.. "정말 어이없네.. 정말 그게 문제였어.. 해결했구.. 안와도 돼~"

넘 기쁜 나머지, 한숨 더 잤다.

이불에 들어가기전.. 정말 이런 실수도 하는구나.. 라는..

사용자 삽입 이미지


문제는 이렇다..

디비 서버 세팅시 웹-디비 연결 계정 기간 만료로, 연결시 암호 변환이 되어야 하는데..

주로 세팅에서 기간을 지정해주는데, 이번에 새로 세팅하면서 까먹은듯..

하아아아웅..

posted by Sungyoup Han matrim

참고한 링크 : http://blog.naver.com/coolnmax

A 디비에서 B서버 디비 연결 및 Access..하려면..

MS SQL 관리자에서 연결된 서버 -> 새 연결된 서버에서 해도 되고..
아니면 밑의 스크립트를 실행하면된다.

/* mssql */

exec sp_addlinkedserver
 @server='Tulip',
 @srvproduct = 'mssql',
 @provider = 'sqloledb',
 @datasrc = 'Tulip',
 @provstr='',
 @catalog=''
go

exec sp_addlinkedsrvlogin 'TUlip', 'false', null, 'sa', '<sqlpass>'
go

오라클일때..
/* Oracle */
EXEC sp_addlinkedserver
  @server = 'INSIDER'
  , @srvproduct = 'oracle'
  , @provider = 'MSDAORA'
  , @datasrc = '211.169.***.***'
Go

EXEC sp_addlinkedsrvlogin
  'INSIDER'
  , 'false'
  , NULL
  , 'scott'
  , 'tiger'
Go

파일링크
/* File Linked */
-- Create File Linked Srv
exec sp_addlinkedserver FileSrv, 'Jet 4.0',
'Microsoft.Jet.OLEDB.4.0',
'c:\',
null,
'Text'

-- Login At File Linked Srv
exec sp_addlinkedsrvlogin FileSrv, false, sa, null

-- Drop File Linked Srv Drop
exec sp_droplinkedsrvlogin 'FileSrv', null
exec sp_dropserver FileSrv

-- Show TxtTable File Linked Srv
exec sp_tables_ex FileSrv



use master
go
-- Linked Server를 등록한다.
EXEC  sp_addlinkedserver   
 @server='SecondInstance'
,  @srvproduct=''
,             @provider='SQLOLEDB'
,  @datasrc='snoopy\second'
-- sp_addlinkedserver의 구성을 살펴보면 Linked Server의 정보가 sysserver 테이블에 있음을 알 수 있다.
exec sp_helptext sp_addlinkedserver
-- 등록이 되었나 확인해보자.
select * from sysservers
-- 등록된 Linked Server에 접속할 수 있는 계정을 만들어야 한다.
EXEC sp_addlinkedsrvlogin 'SecondInstance', 'false', NULL, 'id', 'passwd'
-- sp_addlinkedsrvlogin의 구성을 살펴보면 계정 정보가 sysxlogins 테이블에 있음을 알 수 있다.
exec sp_helptext sp_addlinkedsrvlogin
-- 등록이 되었나 확인해보자.
select * from sysxlogins
-- 이제 등록된 Linked Server에 쿼리를 날려보자.
select * from secondinstance.pubs.dbo.sales
-- 등록된 Linked Server의 정보를 지운다.
EXEC sp_droplinkedsrvlogin 'SecondInstance',NULL
EXEC sp_dropserver 'SecondInstance', 'droplogins'


posted by Sungyoup Han matrim
SQL



티스토리 툴바