블로그 이미지
Rootrator
1개를 알면 모르는 10개가 튀어나온다..!

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

2015. 5. 20. 15:25 Mssql


[환경]

Windows 2003 32bit / MSSQL 2000 / MSSQL 2005


2000에서 백업받은 bak파일을 가지고 2005에서 복원을 진행하였다.




백업파일의 내용 확인

restore filelistonly from disk ='백업파일의 전체경로';


백업파일을 이용해 복원

restore database cmjob from disk ='백업파일의 전체경로';


여기서 2000 서버에서 사용했던 MDF,LDF파일의 경로가 달라져서 오류가 발생할 수 있다.


restore database 디비명 from disk ='백업파일의 전체경로'

with move '디비명_DATA' to 'MSSQL의 데이터 디렉토리\디비명.MDF',

move '디비명_Log' to 'MSSQL의 데이터 디렉토리\디비명.LDF';


위의 디비명_DATA와 디비명_Log는 restore filelistonly로 조회했을시 확인된 이름을 사용한다.


이렇게 복구가 완료되었다면 기존의 로그인 정보를 업데이트


use 디비명;

sp_change_users_login 'Update_one', '유저ID', '유저ID'

go



반응형
posted by Rootrator
2015. 4. 15. 14:55 Mysql

DB 테이블 내용에 8자리의 Date형식이 보이는데 이는 unix_timestamp를 이용해

형식을 변환한 것이다. 


2015-04-15 10:00:00


Date Time -> UnixTime

select UNIX_TIMESTAMP('2015-04-15 10:00:00');

1429059600


UnixTime -> DateTime

select FROM_UNIXTIME('1429059600');

2015-04-15 10:00:00



반응형
posted by Rootrator
2015. 1. 20. 13:59 Linux

rpm이 아닌 컴파일하여 설치하였을때


--with-config-file-path 경로를 수정하고 싶을경우 재컴파일을 하는 방식보단


간단히 심볼릭링크를 걸어두면 자동적으로 링크된 파일로 변경된다.




--with-config-file-path=/etc/httpd 옵션을 주어 컴파일 한 경우


/etc/httpd/php.ini 을 참조하지만..


ln -s 심볼릭 링크를 이용하여 링크를 걸어주면


phpinfo에서 자동으로 인식이 된다.

반응형
posted by Rootrator
2014. 12. 8. 14:06 Security

게시판을 이용한 upload 디렉토리는 퍼미션이 777로 잡아줘야


정상적으로 사용이 가능한 경우가 꽤나 많다. 이런 경우 악성코드나 스팸봇이 업로드 되어 악용될 위험이 


상당히 높기 때문에 php파일을 실행금지 시키는 설정을 넣어두면 좋다.



아래의 설정 문구는 httpd.conf나 혹은 가상호스트 설정내에 적어 넣어줘도 된다.


<Directory /업로드 디렉토리 경로/*>

php_admin_flag engine off

<FilesMatch "\.(cgi|pl|php|htm|html)$">
 Order allow,deny

 Deny from all

</FilesMatch>

 </Directory>



혹은 업로드 디렉토리에 .htaccess를 이용한 방법으로

httpd.conf에 AllowOverdride 가 적용되어 있어야 한다.


php4.x 경우

<IfModule mod_php4.c>

php_flag engine off

</IfModule>


php5.x 경우

<IfModule mod_php5.c>

php_flag engine off

</IfModule>


물론 두버전을 동시에 넣어주어도 상관없다.

반응형

'Security' 카테고리의 다른 글

su 제한하기  (0) 2012.01.02
리눅스 웹서버정보 숨기기  (0) 2011.12.13
/tmp 보안설정하기  (2) 2011.09.05
SPF 레코드 확인 방법  (0) 2011.04.14
SSH IP / 계정 차단  (0) 2011.03.24
posted by Rootrator
2014. 9. 23. 15:06 Windows

먼저 포트찾기


netstat -ano


-a 모든 연결과 수신 대기 포트를 표시합니다.

-n 주소와 포트 번호를 숫자 형식으로 표시합니다.

-o 각 연결의 소유자 프로세스 ID를 표시합니다.


이렇게 해서 나온 결과 값의 우측에 PID값이 표시되는데


의심되는 PID를 통해 아래의 명령어로 프로세를 확인할 수 있다.


PID가 1234일 경우


tasklist /FI "PID eq 1234"



아니면 fport라는 프로그램을 통해서도 쉽게 확인이 가능하다.

반응형
posted by Rootrator
2014. 9. 16. 11:13 Mssql

각 서버의 MSSQL은 SP1이상의 서비스팩을 설치해 준다.

(서비스팩 버전이 서로 달라도 상관없다.)


MSSQL2005 SP1

http://www.microsoft.com/ko-kr/download/details.aspx?id=22954


MSSQL2005 SP2

http://www.microsoft.com/ko-kr/download/details.aspx?id=9969


MSSQL2005 SP3

http://www.microsoft.com/ko-kr/download/details.aspx?id=14752


MSSQL2005 SP4 

http://www.microsoft.com/ko-kr/download/details.aspx?id=7218



적용후엔 MSSQL서비스 계정을 서로 맞춰주자.


여기서는 편의상 administrator를 사용했지만 실서버에서는 따로 계정을 생성해 사용하는게 좋다.




서비스 재시작 후에는 주서버의 DB를 미러서버로 백업해 준다.


이때 데이타베이스 복구모델은 "전체(FULL)"로 되어 있어야 하며, 


DB와 Transaction Log 둘 모두 백업이 되어야 한다.



DB복원시에는 옵션에서 RESTORE WITH NORECOVERY를 선택한 후에 Transaction Log도 동일하게 


복원해 준다.



복원중에 잘못하여 미러서버의 DB를 Online시키기 위해선 아래의 쿼리문을 입력한다.


RESTORE DATABASE DB이름 WITH RECOVERY;



 

미러링 메뉴는 주서버에서 우클릭 > 작업 > 미러 메뉴로 들어가도 되고 우클릭 > 속성 에서 미러링 메뉴를 사용해도 된다.


보안구성을 선택하여 구성 마법사을 실행. 여기서는 미러링 모니터 서버를 제외하고 진행한다.










이전에 서비스계정을 주서버 미러서버 동일하게 맞추었다면 아래는 서비스 계정을 공란으로 두고


진행한다.


이후 끝점이 생성되고 다시 미러속성 페이지로 돌아가면 바로 동기화를 시작할것인지


나중에 시작할 것인지 선택하게 되는데 


시작하게 될경우 서버 네트워크 주소가 FQDN이 아니라는 에러가 뜨면서 다시 미러 마법사를 실행해야 된다.


여기서는 "미러링 시작 안함" 을 선택하고 주 서버와 미러 서버의 네트워크 주소를 IP:포트번호를 입력.



미러링 시작을 선택하면 아래와 같이 상태에 동기화되었습니다 라는 메세지가 뜬다.


반응형
posted by Rootrator
2014. 8. 12. 16:21 Linux


설치전 필요한 인증서 파일들

개인키파일 / 개인인증파일 / 외부root인증파일


설치전 필요한 설정

httpd.conf에서

LoadModule ssl_module modules/mod_ssl.so

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

Include conf/extra/httpd-ssl.conf


주석제거


vi로 httpd-ssl.conf 파일 수정


SSL포트 지정한다. 기본(443)외에 사용할 포트가 있다면 여기서 수정해주면 된다.

Listen 443


crt, crl 파일을 인식하게끔 추가한다.

AddType application/x-x509-ca-cert .crt

AddType application/x-pkcs7-crl    .crl



SSL시작시 패스워드를 자동으로 인식하게끔 쉘프로그램 등록

SSLPassPhraseDialog exec:쉘파일경로



[쉘파일 내용]

#!/bin/sh

echo 패스워드

*퍼미션은 700



가상호스트 설정
<VirtualHost 가상호스트네임:SSL포트번호>
ServerName SSL신청시 입력했던 도메인

SSLCertificateFile 개인인증파일 경로

SSLCertificateKeyFile 개인키파일 경로

SSLCACertificateFile 외부root파일 경로



httpd -t로 구문검사후 실행

반응형
posted by Rootrator
2014. 7. 3. 17:48 Mysql

퍼포먼스를 올리기 위한 몇가지 튜닝법


MySQL 접속구문

메모리가 2GB이상은 pconnect

메모리가 2GB이하는 connect



인덱스추가

where 구문과 일치하는 열을 찾을때

join문 실행시 다른 테이블에서 열을 추출할때

열을 검색대상에서 빨리 제외할때


생성

create index 인덱스명 on 테이블명 (컬럼명1,컬럼명2,...);

alter table 테이블명 add index 인덱스명(컬럼명1,컬럼명2,...);


인덱스보기

show index from 테이블명;


삭제

alter table 테이블명 drop index 인덱스명;



쿼리속도

2개의 쿼리를 질의할때의 쿼리 속도는


쿼리2개 > join문 > 서브쿼리


쿼리가 많을땐 차라리 쿼리문을 나누자

반응형
posted by Rootrator
2014. 6. 24. 17:04 Scripts


php5.3 부터는 session_register()와 session_unregister()가 사용되질 않는다.


session_register('ID',$ID);

> $_SESSION['ID']=$ID;


session_unregister("ID");

> unset($_SESSION['ID']);



반응형
posted by Rootrator
2014. 6. 24. 16:59 Linux

[root@localhost bin]# ./httpd -t

httpd: Syntax error on line 150 of /usr/local/apache/conf/httpd.conf: Cannot load modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: undefined symbol: unixd_config


아파치 시동시에 위와 같은 에러가 뜬다.


버전정보는

Server version: Apache/2.4.9 (Unix)

PHP 5.2.17 (cli)


보통 위 에러는 apache2와 php4.x로 컴파일 할때에 생기는 오류지만 apache2.4와 php5.2에서도 발생이 되기도 한다.

php압축해제경로/sapi/apache2handler/에서 php_functions.c 파일을 일부 수정한다.



>line 386

#if !defined(WIN32) && !defined(WINNT) && !defined(NETWARE)

        AP_DECLARE_DATA extern unixd_config_rec ap_unixd_config;

#endif


>line 417

#if !defined(WIN32) && !defined(WINNT) && !defined(NETWARE)

        snprintf(tmp, sizeof(tmp), "%s(%d)/%d", ap_unixd_config.user_name, ap_unixd_config.user_id, ap_unixd_config.group_id);

        php_info_print_table_row(2, "User/Group", tmp);

#endif


다시 컴파일 후 Syntax 테스트


[root@localhost bin]# ./httpd -t

Syntax OK




반응형

'Linux' 카테고리의 다른 글

php.ini PATH 변경  (0) 2015.01.20
apache 2.4.x SSL설치  (0) 2014.08.12
특정 사용자의 소유자 변경  (0) 2014.06.24
Note that the MySQL client library is not bundled anymore!  (0) 2014.05.27
soft raid 디스크 미러링  (0) 2014.05.21
posted by Rootrator