제품 여행

Windows 10에서 CUBRID linux 버전 사용하기

by 성진 posted Jun 27, 2018
MS에서 2016.08.02 기준으로 Windows 1주년 업데이트 버전을 배포했다. 해당 업데이트의 믄 변화에는 bash(Linux 용 Windows 하위시스템 beta)를 사용할 수 있다는 것이다.
해당 버전에서 정상 동작 하는지 테스트를 해 보았으나, 초기 버전에는 linux의 shared memory 관리 부분이 구현이 덜 되어 데이터베이스 서버 엔진은 구동이 가능하지만 
쉐어드 메모리를 사용하는 브로커는 정상 작동하지 않았다. 해당 버그는 MS의 GitHUB https://github.com/Microsoft/WSL/issues/92 에 보고 되어 수정이 되었다.

Windows 16215 버전 이후 버전 및 작년 가을에 레드스톤3 업데이트 Fall Creators Update 에 와서는 CUBRID가 정상 구동 할 수 있는 shared memory 환경이 되었다.

Windows 10 버전를 꾸준히 업데이트만 받았다면, 이제 CUBRID를 bash 환경에서 구동이 가능하다.
일단 기본적으로 활성화되는 기능은 아니기 때문에 제어판 > 프로그램 > 프로그램 및 기능 > Windows 기능 켜기/끄기에서 해당 기능을 활성화 해야한다.

control.png

활성화 이후에는 재부팅이 필요 할 수 있다. 또는 MS의 Install the Windows Subsystem for Linux 가이드 (https://docs.microsoft.com/ko-kr/windows/wsl/install-win10)를
따라하면 된다.

Windows Subsystem for Linux 가 설치된 이후에 WindowsKey + R 로 실행 창을 연 후 bash 하고 엔터를 치면 Windows 내부에 호환 가능한 Linux(Ubuntu) 기본 환경이 설치 되어 있다.
하지만 일반 기본 환경에는 추가로 glibc 등 공용 추가 라이브러리를 설치 해야 정상 동작이 가능 하지만
Microsoft Srore에서 Ubuntu 앱(필자는 18.04를 설치 하였음)을 설치하면 CUBRID 구동에 필요한 공용 라이브러리가 포함이 되어있다.

ms_store.png


이제 본격적으로 CUBRID를 설치 해 보자. Ubuntu 18.04 버전를 설치 후 실행하면 다음과 같은 화면이 나온다.


bash.png


와우! Linux bash 환경이다. 이제 CUBRID를 설치하기 위해서 wget으로 파일을 다운 로드 받아보자.


wget.png


이제 CUBRID 설치를 해보자. 


inst1.png


inst2.png


설치가 완료 되었다. 자동으로 계정 프로파일에 환경 설정 스크립트인.cubrid.sh 가 등록 되었다. 하지만 아직 실행은 되어 있는 상태가 아니기 때문에

로그아웃 한다음 다시 들어가거나 $ , ~/.cubrid.sh 를 수행 하면 된다.

(필자는 이미 한번 설치 했던 환경이기 때문에 기존환경 백업파일 생성 및 설치디렉터리 변경 등이 있으나 최초 설치시에는 y 두번 만 하면 되고 ~/CUBRID 디렉터리로 설치 된다.)


자이제 구동을 해보자.


inst3.png


정상 구동이 되었다.

이제 큐브리드 매니저로 접근이 되고 사용가능 한지 확인 해 보자.


cm.png


접근도 되고 실행 했던 리눅스 창을 꺼도 정상 동작한다.


아직도 약간의 Windows 10 bash 버그가 있기는 하다. Windows 내부 Linux 환경에서 포트 바인딩을 했을 경우 최초 1,2 회 연결 시 다음과 같은 에러가 발생한다.


bug.png


하지만 재 시도 1,2 회 후에는 연결도 되고, 계속 사용이 가능하다. 

윈도우즈 방화벽 정책에 위반이 될 수 있는 여지도 있고 리눅스 환경에서 수행한 프로세스를 바로 인지 하지는 못하는 것 같다.

이 또한 추후 Windows 업데이트 후에는 해소 되지 않을까 생각한다. 


또한 Windows 버전에는 HA기능이 포함되지 않지만 Linux버전은 가능하므로 추후에는 Windows OS에서 bash 환경 기능을 활용해서 HA도 가능 할 수 있을 것 같다.


이상 Windows 10의 bash 환경에서 CUBRID 구동하기 였습니다.