본문 바로가기

Web/DB/Dev

APM Setup 7에 제로보드5(XpressEngine) 설치하기. 최근에 미니 PC를 한대 구입했다. 회사에서 이것 저것 잡다한 테스트와 파일저장소로 사용하기 위해서다. 이것 저것 따지다.. 궂이 강력한 퍼포먼스가 필요한 것이 아니어서.. 전력소모 적고 발열이 적은 아톰CPU를 가진놈으로 샀다. 다만 그래도~ 서버로 쓸거라서 아톰 듀얼인 D510이 들어간 놈으로 주문했다. CPU : Atom D510 1.66GHz RAM : 2 GByte HDD : 1.5 T 그리고 거기에 Windows 7을 설치하고 체험지수를 봤다. 아...1.0.... 그런데.. 그래픽성능이 1.0이었다. ㅋㅋ 그나마 다행... 뭐.여기서 게임할건 아니니까.. 상관없다. ㅋㅋㅋ 의외로 프로세서나 메모리는 그런대로 쓸만했다. 이제 테스트용으로 쓸 웹서버와 게시판소스를 골랐다. 별 고민없이 그냥 AP.. 더보기
[SQL Server] 데이터베이스를 다른 디스크(경로)로 이동시키기. 디스크를 증설하거나 다른 디스크로 데이터베이스를 이동해야하는 경우가 있다. 이런 필요성이 있는 경우는 대부분 데이터베이스에 데이터가 무척 빠른 속도로 증가하여 디스크의 공간이 부족한 경우가 대부분이다. 때문에 Export / Import 하기도 부담스럽고 또 귀찮기도 하다. 만약 중간에 에러가 나면... 큰일이기도 하고... 그렇기 때문에 데이터베이스의 물리적인 데이터파일을 이동시키는 것이 어찌보면 가장 빠르고 편한 방법이다. 이때는 다음과 같이 데이터베이스를 떼어내고 파일을 복사한 뒤 다시 붙이는 방법으로 진행하면 된다. SQL엔터프라이브 매니저에서 새쿼리 창을 열고 (그 전에 데이터베이스를 사용하는 다른 서비스들을 종료한다.) 1. sp_detach_db 으로 데이터베이스를 분리시킨다. USE mas.. 더보기
SQL 서버 데이터베이스 백업과 파일의 자동 FTP 전송 SQL서버의 데이터베이스를 주기적으로 백업하기 위해서는 다음과 같은 설정을 통해 수행할 수 있다. 먼저 다음 화면과 같이 Management Studio를 실행하고 SQL 서버 에이전트에 "작업"을 등록한다. 위의 작업을 등록할 때 이름은 어떤 백업 작업인지 알기 쉽도록 주면된다. 작업을 등록하게 되면 두번째 항목에 "단계"라는 것이 인다. 이 단계에는 모두 2개가 등록된다. DB를 백업하는 T-SQL 수행단계와 백업된 DB 파일을 FTP로 다른 서버로 전송하는 운영체제의 CmdExec 수행단계이다. 먼저 DB 백업 단계는 다음과 같이 Backup이라는 T-SQL이 등록되어야 한다. 이 스크립트는 ATCDB라는 데이터베이스를 "ATCDB-200807009.BAK"와 같이 데이터베이스명과 날짜를 포함하는파.. 더보기
Apache2에서 한글이름의 파일 다운로드 안되는 문제 해결 아파치2.x/PHP5.x 에서 파일다운로드 시 한글이름의 파일이 다운로드 안될 때는 아파치 웹서버의 httpd.conf 파일에 한글 URL의 인코딩이 가능하도록 하는 다음의 내용이 포함되어 있는지 확인한다. LoadModule redurl_module modules/mod_url.so CheckURL On 만약 위의 내용이 포함되어 있지 않다면 서버와 브라우저가 실행되는 PC의 캐릭터셋이 호환되지 않을경우 이름이 영문으로 되어 있지 않는 더블바이트(한글, 일본어 등등)로 이름이 되어 있는 파일은 파일을 찾을 수 없다는 메시지와 함께 다운로드가 되지 않는다. 해결방법은 다음과 같다. 1. 다음의 URL에서 mod_url.c 소스를 다운로드 받는다. 나는 1.20을 다운로드 받았다. 사실 어디서든 소스만 구.. 더보기
파일시스템 Full로 인한 mysql 구동/종료/테이블 접근 장애 복구하기 갑자기 운영하던 웹사이트(RedHat Linux, Apache, PHP, MYSQL)에 접근이 안되는 장애가 생겼다. root 계정으로 로그인하여 확인하니 httpd 대몬이 평소보다 훨씬 많은 숫자가 실행중이었고 mysql 대몬은 정상적으로 실행중인 것 처럼 보였다. 급하게 apache와 mysql을 재구동 하려 하였으나 mysql의 종류(mysql.server stop)가 안되었고 강제로 kill한 뒤 mysql을 구동하려 하였으나 평소와는 달리 프로세스는 한참만에 떴으나 mysql 클라이언트 및 apache를 통한 db 접근이 안되었다. mysql 로그를 확인하니 Filesystem의 full로 인해 오류가 발생하였음을 확인할 수 있었다. 먼저 mysql db가 위치한 파일시스템의 불필요한 파일..... 더보기
phpMyAdmin 설치 중 에러 - "#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client" .. 리눅스에 apache...mysql...php를 우여곡절끝에 설치하고 phpMyAdmin을 설치한다.. MYSQL은 5.0 버전이다. VMWARE에 설치된 RedHat Enterprise 4 update 4 (i386)에서는 별 문제없이 최신버전의 A.P.M을 설치했지만 이상하게도 회사의 Intel X86 서버에서는 libphp5.so가 생성되지 않는다... 결국 apache 5.0의 안정버전과 mysql 5.2.. 그리고 php 4.4.4를 설치했다. 이 조합에서는 잘 된다... -.- 하지만 phpMyAdmin 최신버전을 설치하여 로그인하려는데... #1251 - Client does not support authentication protocol requested by server; consi.. 더보기
[MYSQL] MYSQL 5.0.33 설치 중 "query_cache_init_query" 관련 오류 패치 금일 (2007년 1월25일) 기준 최신버전의 MYSQL인 5.0.33 설치 중 다음과 같은 에러가 발생한다. 네이버...구글 등 한글 검색사이트 검색 결과 관련 정보가 하나도 -.- 없었다. ./configure -- ..... sql_class.cc: In constructor 'THD::THD()': sql_class.cc:265: error: 'query_cache_init_query' was not declared in this scope make[5]: *** [sql_class.o] Error 1 이 에러는 configure 옵션 중 ./configure --without-query-cache 위의 옵션을 줄 경우 발생한다. --- 해결방법--- 소스디렉토리 아래의 sql 디렉토리에 sql_.. 더보기
[MYSQL] mysql의 client library 설치하기 mysql 5.0 이상버전의 소스로 컴파일하여 설치할 때에는 client library를 별도로 한번 더 컴파일해주어야 했다. mysql 설치 후 ./configure \ --enable-thread-safe-client \ --with-charset=euckr \ --without-server \ --without-query-cache \ --without-docs \ --without-man \ --without-bench \ --without-readline \ --without-libedit make && make install 위와 같이 prefix 를 지정하지 않고 MySQL 클라이언트만을 설치할 경우에는 /usr/local/lib/mysql 디렉토리에 library들이 설치된다. 그리고 /u.. 더보기
[MYSQL] 부팅 시 자동 실행 되도록 서비스 등록하기 MySQL을 설치할 때는 Daemon 들이 root 소유자로 실행되지 않도록 하는 것이 좋다. 보안상 MySQL의 취약성이 발결되어 공격을 당하게 되면 곧바로 root shell을 획득하는 것이 가능하기 때문이다. 따라서 MySQL을 mysql과 같이 일반 계정으로 실행되도록 설치하라. 그리고 부팅 시 자동으로 실행되도록 하기 위해서는 다음과 같은 작업 절차를 거친다. 1. 설치된 디렉토리 (여기서는 /app/mysql5 로 가정한다.) 아래의 support-files 디렉토리로 이동하고... 2. mysql.server 라는 파일을 /etc/init.d 로 적당한 이름을 주어 복사한다. (여기서는 mysql5022 로 복사했다.) 3. chkconfig --add mysql5022 명령을 실행하여 서비.. 더보기
[MYSQL] root 및 계정의 패스워드 분실 시 초기화 방법 1. mysql 을 다음과 같이 --skip_grant 옵션으로 실행한다. mysqld_safe --skip_grant & 패스워드 없이 접근이 가능합니다. 2. mysql 만 치고 접속합니다. 3. connect mysql; (root의 패스워드 수정할 때) 4. update user set password=password('new-password') where user='root'; 5. flush privileges; root 패스워드를 잊어 버렸을 경우 root 패스워드 재설정해 주는 과정임 더보기