FreeTDS - 리눅스에서 MSSQL 접속하기 - tsql
FreeTDS - tsql 설치
# wget http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz (지금은 버전이 0.91 )
# tar -xvzf freetds-stable.tgz
# cd freetds-0.91
# ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --disable-odbc --disable-debug --enable-msdblib
# make -j 4 (CPU core 4개를 사용해서 빠르게 컴파일하기)
# make install
MSSQL 서버설정 추가
/usr/local/freetds/etc/freetds.conf 에 아래 설정을 추가합니다.
MSSQL 2005 이상이라면 tds version = 8.0
MSSQL 2005 미만이라면 tds version = 7.0
[123.123.123.123]
host = 123.123.123.123
port = 1433
tds version = 8.0
client Charset = utf8
캐릭셋때문에 한글/일본어/중국어 등이 깨지면 client charset 부분을 아래중에서 하나로 바꿔보세요.
문자가 깨질때 아래와 같은 에러가 뜹니다.
Error 2403 (severity 4):
Some character(s) could not be converted into client's character set. Unconverted bytes were changed to question marks ('?')
# locale is "ko_KR.UTF-8"
# locale charset is "UTF-8"
# Latin1_General_CI_AS, Korean_Wansung_CI_AS
#client charset = ko_KR.UTF-8
#client charset = EUC-KR
client charset = UTF-8
#client charset = ANSI_X3.4-1968
#client charset = MS-ANSI
#client charset = Korean_Wansung_CI_AS
#client charset = Latin1_General_CI_AS
#locale charset = UTF-8
#locale = ko_KR.UTF-8
#locale charset = UTF-8
MS-SQL 접속 테스트
# /usr/local/freetds/bin/tsql -H MSSQL서버아이피 -p MSSQL서버포트 -U 디비계정 -P 디비비밀번호
# cd /usr/local/src/php-5.2.9/ext/mssql
# /usr/local/php/bin/phpize
# ./configure --with-mssql=/usr/local/freetds --with-php-config=/usr/local/php/bin/php-config
# make -j 4
# cp .libs/mssql.so /PHP_Extension_디렉토리
# vi /usr/local/php/lib/php.ini
extension = mssql.so --> 주석 풀기
# apache 재기동
모듈 설치 확인
phpinfo - mssql 항목을 확인하면 되는데, php -i 옵션으로 확인할 수 있습니다.
# /usr/local/php/bin/php -i | grep mssql
mssql
mssql.allow_persistent => On => On
mssql.batchsize => 0 => 0
mssql.charset => no value => no value
mssql.compatability_mode => Off => Off
mssql.connect_timeout => 5 => 5
mssql.datetimeconvert => On => On
mssql.max_links => Unlimited => Unlimited
mssql.max_persistent => Unlimited => Unlimited
mssql.max_procs => Unlimited => Unlimited
mssql.min_error_severity => 10 => 10
mssql.min_message_severity => 10 => 10
mssql.secure_connection => Off => Off
mssql.textlimit => Server default => Server default
mssql.textsize => Server default => Server default
mssql.timeout => 60 => 60
MSSQL 접속 PHP 샘플소스 코드
'Tech > Linux' 카테고리의 다른 글
AWS 리눅스 - 스왑 swap 파일 만들기 (0) | 2018.06.18 |
---|---|
리눅스 sed 줄바꿈 바꾸기 (0) | 2018.06.18 |
우분투 ubuntu - 패키지 삭제시 에러 처리방법 (0) | 2018.05.28 |
리눅스 설치후 커널 TCP 관련 파라미터 수정 (0) | 2018.01.11 |
nmap 옵션 (0) | 2017.08.24 |