● Linux 환경의 PHP에서 Windows의 MSSQL과 연동해야하는 이슈가 있었음.
● 테스트 환경
- Linux OS : CentOS 6.4 64bit
- Windows OS : Windows 2008 R2
- Mssql 2008 R2
● 패키지 설치
- rpm -ivh http://ftp.neowiz.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
- yum install php-mssql freetds
- 끝. 정말 쉽다.
● SELinux 작업 (*중요)
- 이작업을 진행해야 나중에 실제적으로 웹화면에 php로 작성된걸 뿌릴수있다.
- /etc/sysconfig/selinux에서 enforcing (ON) 시켜준다.
- 자세한 내용은 다음 링크 참조 : http://goo.gl/J4Zel
- 아니면 아래와 같이 진행한다.
[root@localhost httpd]# getsebool -a | grep httpd_can_network_connect
이렇게하면 httpd에 대한 설정사항이 나온다.
- 아마 아래와 같이 나올듯
httpd_can_network_connect --> off
httpd_can_network_connect_cobbler --> off
httpd_can_network_connect_db --> off
- 이걸 on으로 변경해야한다. 아래와 같이 명령어 입력 : 시간이 좀 걸린다.
setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_network_connect_db 1
● 이제 PHPinfo로 아래와 같이 정상적으로 설치되어있는지 확인 필요.
- 아래와 같이 나오면 정상적으로 설치된것이다.
● 마지막으로 실제적으로 연동 테스트
- 구문 예시
- tsql -H [Server IP or Domain] -p [MSSQL Port] -U [계정] -P[계정암호]
- 이상하게 구문에다가 암호를 넣으면 현재 정상적이지 않고 저렇게 나중에 암호를 넣으면 정상적으로 접속
- 그리고 일반적인 Mssql 구문을 넣고 마지막에 go를 입력해야 데이터값이 나온다.
[root@localhost httpd]# /usr/bin/tsql -H 192.168.0.21 -p 1433 -U dev -P dev
locale is "ko_KR.eucKR"
locale charset is "EUC-KR"
using default charset "UTF-8"
1> SELECT * FROM [MHCOM].[dbo].[T_MEMBER];
2> go
NO UID PASSWD UNAME EMAIL ZIPCODE ADDRESS1 ADDRESS2 TELEPHONE CELLPHONE DOKJANUM REGDATE SENDMAIL BIRTHDAY COMMENT RECOMID RECOMNAME GUDOKCNT GUDOKPRICE RECENTGUDOKDATE MLEVEL JOINTYPE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'서버 Server' 카테고리의 다른 글
Windows Server 2022 Standard FTP 서버 설정 방법 (0) | 2023.08.30 |
---|---|
shell script에서 비밀번호 입력 여부 없이 scp 사용 하는 법 (0) | 2016.10.11 |
리눅스 서버 시간 설정 (0) | 2013.10.04 |
[아파치] Permission denied: access to / denied (0) | 2013.09.05 |
리눅스에서 apm설치 (0) | 2013.09.05 |