자유게시판

제목 ubuntu 16.04 + php7 + nginx + mssql2005
글쓴이 개락 작성시각 2017/04/14 19:57:25
댓글 : 2 추천 : 1 스크랩 : 0 조회수 : 11296   RSS

어제 centos7에서 연결 성공하고 오늘 우분투에서 시도했습니다.

centos에서 성공 했으니 우분투는 쉽게 하겠구나 했는데 하루 꼬박 다 까먹었습니다.

이제라도 성공한걸 다행으로 생각해야하는데...;

http://stackoverflow.com/questions/34377338/linux-php-7-0-and-mssql-microsoft-sql

위 글대로 설치를 진행하는 대신에 위 sqlsrv는 server2008R2 이상인분들만 해당됩니다.

https://github.com/Microsoft/msphpsql/issues/252

위 글 처럼 server2003일 경우 오류가 납니다.

당연히 CI에서도 오류가 나구요..

tcp오류가 나니까 당연히 통신에 문제가 있는건데 방화벽 다 열려 있고 텔넷으로 연결시엔 연결이 잘 되니 문제찾는데 힘들었습니다.

위 글 내용을 보면 TLS1.2부터 지원을 한다고 하는데 정확히는 잘 모르겠습니다.

결론은 서버 버전이 2008R2 보다 낮은경우엔 sqlsrv로 연결이 안되고 pdo_libdb로 연결해야 된다는겁니다.

전 php7이라 apt-get install php7.0-sybase 설치하고 아래처럼 해서 연결 성공했습니다.

$db['MSDB'] = array(

    'dsn'    => '',

    'hostname' => 'dblib:host=111.111.111.111:1433',

    'username' => '',

    'password' => '',

    'database' => '',

    'dbdriver' => 'pdo',

    'dbprefix' => '',

    'pconnect' => FALSE,

    'db_debug' => (ENVIRONMENT !== 'production'),

    'cache_on' => FALSE,

    'cachedir' => '',

    'char_set' => 'utf8',

    'dbcollat' => 'utf8_general_ci',

    'swap_pre' => '',

    'encrypt' => FALSE,

    'compress' => FALSE,

    'stricton' => FALSE,

    'failover' => array(),

    'save_queries' => TRUE

);

다만 한글깨집니다.. ㅎㅎ; 아직도 2003서버를 쓰냐고 뭐라하실수도 있지만..

여러가지 이유로.. 아직까지 몇대 가지고 있습니다...ㅠㅠ

금요일인데 그래도 다른날보다는 좀 일찍 갈수 있겠네요 ㅎㅎ

 다음글 네이버 클라우드 서버 출시! (5)
 이전글 4월 정모 후기입니다. (3)

댓글

변종원(웅파) / 2017/04/17 16:49:21 / 추천 0
삽질은 언젠가 다 도움이 됩니다. ^^
개락 / 2017/04/17 20:41:23 / 추천 0

최종목적지는 mssql 다 없애고 mysql로 갈아타는건데 이게 언제 가능할지 모르겠네요..ㅠㅠ

항상 감사합니다 ㅎㅎ