안녕하세요.
SE로 일하고 있는 아재 입니다.
이번 회사에서 MS-SQL을 사용하고 있어서 부득이하게 조언 구하려 글 올립니다.
솔직히 MS-SQL을 많이 구성해 보지 않아서 복제 와 미러링 좀 헛 갈립니다.
MS-SQL은 HA 로만 구성해서 Active-standby 구성만 써봐서 더더욱 그런거 같습니다.
현재 구성상황을 설명드리자면
DB서버가 한대 있고 이곳에 상품 DB와 정산 DB가 같이 있습니다.
두개 DB를 분리하는게 답이지만 개발공수 떄문에 분리보다는 시스템적으로 해결해 보려고 합니다.
그래서 제가 생각한 것이
기존 DB서버 아래에 SAN스토리지를 하나 두고 (읽기 쓰기 성능 향상), 또 DB서버를 하나 더 만들어 정산 DB만 접근할 수 있는
서버를 만드려고 합니다.
이럴 때 복제라는 기능이 DB또는 테이블 단위로 복제가 가능하다고 해서 정산 쪽만 복제해와서 다른 DB서버는 정산쪽 Select만 하게 하려고 합니다. 정산 쪽 DB는 Inserts나 update를 하지 않습니다. 만약 할일이 생긴다면 기존 DB를 바라보게 합니다.
우선 이렇게 생각하고 있는데. 미러링이라는 기술을 보았습니다.
이 기술 읽다보니 양쪽에서 읽고 쓰기가 가능해 보이던데 제가 제대로 파악하고 있는 것인지 궁금합니다.
DB파일은 어차피 스토리지 안에 있기 때문에 동기화 하는데는 얼마 크게 시간이 걸릴 것 같지 않아 생각해낸 방법입니다.
mysql처럼 스토리지 하나 두고 리플 묶은후 메인에서만 인설트 업데이트 치고 , 나머지는 셀렉트만 하게 했으면 좋겠는데
MS-SQL는 어떻게 해야 제일 좋은 방법인지 아직 감이 안옵니다.
고수님들께 의견 여쭈어 봅니다. 부디 한줄이라도 좋으니 의견 남겨 주시면 감사하겠습니다.
수고하세요.
Comment 1
-
추억만이
2016.06.14 14:55
원하시는것은 Always ON 이라는 SQL2012 부터 지원하는 기능입니다.
HA+미러링 의 형태입니다.
미러링 대상은 Read ONLY 즉 조회만 가능한거죠