Technical posts/MS-SQL 8

[Preparing DBMS Benchmark] Install SQL Server 14.0.900.75-1 on CentOS 7.2

[Preparing DBMS Benchmark] Install SQL Server 14.0.900.75-1 on CentOS 7.2두번째 설치이다 https://docs.microsoft.com/ko-kr/sql/linux/sql-server-linux-setuphttps://docs.microsoft.com/ko-kr/sql/linux/quickstart-install-connect-red-hat 쉽다 빨리 설치하자.. sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server.repo sudo yum update sudo yum install -y mssql-server ..

SQL server 2017 리눅스 버전 설치

mssql 리눅스버전 / sql server 2017 linux 오호~ 드디어 나왔다 linux버전 mssql 나만 늦게 알았어;; 설치를 해보자 https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-get-started-tutorial 먼저 설치가능한 OS는? 좋습니다 버전은? 음... 내가 가지고 있는 리눅스중에 가장 최신이............ 7.2......... 응? 리눅스 부터 업그레이드 갑니다 yum clean allyum updaterebootcat /etc/redhat-release 끝.. 명령은 간단하지만 오랜시간과 재부팅이 한번 필요하다 설치는https://docs.microsoft.com/en-us/sql/linux/sql-se..

SQL server 가 느리면? procedure가 갑자기 느려지면? 잘못된 플랜으로 돈다면?

SQL server 가 느리면? procedure가 갑자기 느려지면? 잘못된 플랜으로 돈다면? 문제의 원인은? parameter sniffing 때문이다.. 오라클에 익숙한 관리자라면 bind peeking을 생각하시면 된다 Sql server 의 경우 where 절에 전달이 되는 parameter 값에 따라 플랜이 생성되고 그 생성된 플랜은 cost가 적절하다면 계속 유지된다 근데? 왜 갑자기 성능이 안나올까????? 플랜은 옵티마이져가 잘 짰을텐데????? 생각해보자 왜 옵티마이저가 바보도 아니고 잘못된 플랜을 만들거나 효율적이지 못한 플랜을 계속 재사용 할까? 이유는 잘못된 통계정보, 적절한 index가 생성되어 있지 않는경우 로 보면 될것 같다 그럼? 어떻게 해결하지? 위의 쿼리를 보면 Produ..

MS-SQL 시작이 안돼요!! / TDSSNIClient initialization failed / TCP port is already in use.

MS-SQL 시작이 안돼요!! / TDSSNIClient initialization failed / TCP port is already in use. 금일 오전 의문의 전화가 내 외근길을 막았다..'씨퀄서버 구동이 안됩니다'흠.... 새벽3시부터 구동이 안된다는 고객님 원격으로 접속을 해본다 sql server가 죽어있었고 eventvwr를 실행해서 기록을 보았다startup시 Tcp port is already in use. 오류가 발생했고 아래의 오류로그를 확인할 수 있었다 A self-generated certificate was successfully loaded for encryption.Server is listening on [ 'any' 1433].오류: 26023, 심각도: 16, 상태:..

SQL Server_ linked server 이용 오라클과 연결하기

SQL Server_ linked server 이용 오라클과 연결하기 linked server를 이용하여 Oracle과 연결을 해보겠습니다 먼저 오라클 클라이언트 설치가 필요하다 클라이언트 와 SQL 서버 둘다 설치가 되어있다면 진행하도록 하자 tnsnames.ora를 열어서 접속 대상에 대해 써넣는다 opendb = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ip-address)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = SID_name) ) ) 요 opendb를 연결된서버 구축시 사용하도록 한다 linked server를 이용하여 오라클에 연결하기 위해서공급자에서 OraOLEDB.Or..

SQL Server AlwaysOn_3.AlwaysOn 테스트 하기

1.active-directory 서버 구성2. 장애 조치(Failover) 클러스터 관리자 설치3.SQL Server 설치하기4.AlwaysOn 설정하기 5.AlwaysOn 테스트 하기 마지막 테스트만 남았다 ㅜ.ㅜ 4장에서 insert를 해보았고 insert 불가한것을 확인했다읽기 전용이기 때문에 insert는 되지 않고 select만 가능하다 자! 작업표시줄이 우측에 있는 화면이 1번 노드 좌측에 있으면 2번 노드 이다1번에서 insert를 하고 select를 해봤다역시 잘 보인다 클러스터 상태를 보기 위해alwayson_SQL 항목의 가용성 그룹을 우클릭하고 대시보드 표시(B)를 눌러준다 대시보드가 잘 보이고 있고NODE1이 주 서버NODE2가 보조 서버 ... 그럼 failover를 통해 NOD..

SQL Server AlwaysOn_2.AlwaysOn 설정하기

1.active-directory 서버 구성2. 장애 조치(Failover) 클러스터 관리자 설치3.SQL Server 설치하기 4. AlwaysOn 설정하기 시작 > SQL server 구성관리자 SQL server 우클릭 > 속성(R) AlwaysOn 고가용성 탭 > alwayson 가용성 그룹 사용(E) 확인창을 확인하고 우클릭 > 다시 시작(T) AlwaysOn 고가용성이 활성화 된다 간단하게 seanDB를 만들고 테이블도 만들어서 데이터를 넣고동기화를 하려한다 node1에서 만들었기 때문에 node2에서는 seanDB가 사용가능 하지도 존재하지도 않는다 AlwaysOn 고가용성 > 가용성 그룹 > 우클릭 > 새 가용성 그룹마법사(N) 마법사가 뜬다다음(N) 가용성 그룹 이름을 정해준다 (아무거나..

SQL Server AlwaysOn_1.SQL server 설치하기

1.active-directory 서버 구성2. 장애 조치(Failover) 클러스터 관리자 설치 3.SQL Server 설치하기AlwaysOn을 사용하기 위해서 SQL server를 설치하게 되는데 이때 설치는 standalone으로 설치한다AlwaysOn = standaloneSQL Failover = failover 클러스터로 설치 SQL server DVD를 넣고 실행한다 '새 SQL Server 독립 싱행형 설치 또는 기존 설치에 기능 추가'를 누른다 확인 제품 키를 넣고 다음(N) 동의함(A) 다음(N) 설치(I) 다음(N) SQL Server 기능 설치(S) 필요한 옵션 선택 후 다음(N) 다음(N) 다음(N) 다음(N) 다음(N) 현재 사용자 추가(C) 및 혼합모드로 선택 후 암호 입력 다..