우선.. mysql을 접속합니다. 접속까지의 명령어는 기본 명령어 설명에 있으니 생략을;;로그파일이 많이 쌓여서 디스크 용량이 부족한 경우 일단 로그파일을 지웁니다. mysql>RESET MASTER로그 파일은 XXX-bin.000001 같은 형식으로 쌓입니다. 위치는 디폴트로 설치했다면 /usr/local/mysql/var/에 있을 겁니다. RESET MASTER를 입력하면 로그 파일들이 지워집니다.백업을 하는 방법은 쉘에서 하는 법과 mysql내에서 ...
다음 script를 /etc/cron.daily/mysql_back.sh로 만들어 두면 백업이 끝납니다. MySQL DB를 dump해서 다른 server에 옮겨 둡니다. 같은 서버에 데이타를 두면 server crash가 발생할 때... 대응이 불가능하죠?... -..-a #!/bin/bash BACKUP_DIR=/home/backup DATE=$(date +%Y%m%d) rm -rf $BACKUP_DIR/people2-$DATE.sql /usr/loca...
1. mysql_backup.bat 파일은 만든다. mysqldump -u유저명-p패스워드 디비명 > C:serverBackup\%2%DATE%_BACKUP.sql2.위에서 만든 파일을 APM_SetupServerMYSQLinmysql_backup.bat 로 이동 3. 제어판 -> 예약된 작업 -> 예약된 작업 추가 자동으로 매일 백업 설정...
데이터베이스 관리자와 개발자들은 정기적인 데이터 백업의 중요성을 잘 알 것이다. 만약 디스크나 서버가 고장날 경우 백업을 미리 해 뒀는지 여부는 1년치 업무결과를 잃어버리느냐 아니면 몇시간만에 정상으로 복귀하느냐를 결정한다.하지만 다행스럽게도 MySQL 사용자는 백업과 복구를 할 수 있는 간편하게 할 수 있는 내장 전용 툴을 사용할 수 있다. 이툴을 이용하면 이기종 플랫폼으로 MySQL 데이터베이스를 간편하게 옮길 수 있으며, 또 다른 포맷으로 레코드를 ...
1>암호 초기화# killall mysqld (데몬을 죽입니다)# cd /usr/local/mysql (mysql이 깔린 곳으로 갑니다)# ./bin/safe_mysqld --skip-grant &여기까지가 초기화2>새 암호 넣기# ./bin/mysql (sql 실행)mysql>use mysqlmysql>update user set password=password('새암호') where user='root';(root 암호 변경합니다. '새암호' 자리에 ...
delete나 truncate 같은 명령으로 데이터를 지웠을때 복구하는 방법입니다. mysql의 모든 명령들은 로그를 남기기때문에 가능합니다. 일단 mysql의 DB가 쌓이는 디렉토리로 이동합니다. 대게 /usr/local/mysql/data /usr/local/mysql/var 등으로 설정해 놓으셨을겁니다. 해당 디렉토리로 이동하면 xxx-bin.001 xxx-bin.002 같은 바이너리 파일들이 존재할겁니다. 이게 바로 DB를 첨 생성할때부터 지금까지...
Centos 6.x를 Minimal Install로 설치하면 Apache 및 MySQL이 설치되어져 있지 않습니다. 본 포스트에서는 이런 환경에서 Apache, PHP, MySQL을 설치하고 기본 설정까지 해 보도록 하겠습니다. 참고로 저는 Centons 6.8을 설치하였습니다. 먼저 Root로 로그인하여 다음과 같이 패키지를 설치합니다. 여기서 Apache, MySQL이 부팅시 자동실행 되도록 하기 위해 다음의 커맨드를 실행합니다. 설치가 완료 되었는지...
집에 방치되어져 있는 Mac Mini를 서버로 사용해보려고 이것 저것 찾다 보니 MAMP라는 솔루션을 찾았습니다. MAMP는 Mac OS에서 Apache, MySQL, PHP를 사용하게 해 주는 솔루션입니다. 각각 따로 따로 설치하지 않아도 되며, 하나만 설치하면 MySQL, PHP, Apache가 한방에 설치됩니다. 참고로 MAMP는 http://www.mamp.info/en/downloads/ 에서 받으실 수 있습니다. 즉, 맥에 웹서버 ...
오라클 홈페이지에 가니 플러거블 스토리지 엔진 기반으로 동작하는 MySQL 아키텍쳐 그림을 볼 수 있었습니다. 플러거블(Pluggable)이라 함은 스토리지 방식을 선택할 수 있다는 것인데요. 이는 각각의 스토리지가 컴포넌트처럼 동작한다는 의미를 내포합니다. MySQL 5.5.5 이전 버젼에서는 MyISAM이 기본 스토리지 엔진이었습니다, 그런데 5.5.5부터는 InnoDB가 기본적으로 붙도록 바뀌었습니다. 쓰는 입장에서는 별 차이를 느낄 수 없을 것이라...
리눅스 마스터 2급 시험은 1년에 4회(1월,4월,7월,10월) 실시하며, 일정은 아래의 사이트에서 확인 가능합니다. https://www.ihd.or.kr/guidecert1.do 또한 코딩능력마스터 시험 일정은 아래의 사이트에서 확인 가능합니다. https://www.ihd.or.kr/guidecert8.do 1. 신분증 국가 공인 자격증이다 보니 시험볼 때 신분증이 있어야하는데, 중학생은 “청소년증” or 학생증(사진부착 학...
mov, avi 같은 포멧으로 Centos 기반 서버에 저장된 동영상을 mp4로 변환할 일이 생겨 ffmpeg을 설치하는 방법을 공유하고자 합니다. STEP 1. epel-release를 설치합니다.STEP2. nux repository를 설치합니다.STEP3. ffmpeg과 ffmpeg-devel 패키지를 설치합니다.STEP4. 동작 여부를 테스트 해 봅니다. 위와 비슷한 정보가 뜬다면 일단 ffmpeg 설치에 성공하신 것입니다. 이후...
마이크로 서비스 아키텍쳐(Micro Service Architecture)는 줄여서 MSA라고 부르며 서비스를 기능별로 작게 쪼개는 서버 아키텍쳐의 디자인 패턴으로, 기본 컨셉은 하나의 서비스는 한가지 일에 초점을 맞춘다는 것입니다. 또 다른 서비스와의 연계는 API로 구현합니다. 마이크로 서비스 아키텍쳐 구현 프로세스는 크게 4단계로 나눌 수 있는데, 구체적인 처리 절차는 다음과 같습니다. STEP 1. 기능별로 서비스 어플리케이션 구분 STEP 2. ...
인터넷 기반으로 서비스를 하는데 서버 없는 아키텍쳐가 있다고 하여 이를 올려 봅니다. 제목에 서버가 없다고 했지만, 서버가 아예 없는건 아닙니다. 정확한 표현은 최소화했다고 보는 것이 맞을 것 같습니다. 아래의 사례는 Amazon S3를 기반으로 하는 서비스 아키텍쳐 입니다. Amazon CloudFront를 통해 콘텐츠르 배포하고, Amazon API Gateway를 이용하여 필요한 기능은 AWS Lamda를 이용한 사례입니다. AWS La...
글로벌 비디오 서비스 강자인 넷플릭스는 아마존 AWS를 운영환경으로 사용합니다. 그들이 온라인 비디오 시장에서 티격태격하면서 경쟁하고 있지만, 아이러니하게도 넷플릭스는 아마존과 끈끈한 관계를 유지하고 있습니다. 아마도 아마존은 넷플릭스덕분에 그들의 아마존 프라임 비디오 서비스를 위한 환경 구축을 북미 전역에 쉽게 얻었을 것이라는 생각을 하게 만듭니다. 서비스 트래픽에 따라 서버 인스턴스를 늘렸다 줄였다 하는 오토스케일링(AWS Auto Scaling)을...
아틀라시안 뱀부(Atlassian Bamboo)는 CI(Continuous Integration) Tool입니다. 여기서 CI는 어플리케이션 소스가 변경되면 이를 자동으로 빌드하고, 테스트하고 서버에 배포까지 완료해주는 일련의 프레스를 자동으로 수행하는 것을 가능하게 해주는 툴입니다.일반적으로 개발자가 소스코드를 수정하여 소스코드 저장소에 올립니다. 이때 CI Tool이 저장소를 모니터링 하고 있다가, 뭔가 새로 변경된 것이 발견되면 소스코드를 다운로드하...
외국인회사에 있다 보면 개발자 채용시 아키텍쳐 설계 부분도 이야기를 하게 됩니다. 그러면 어떤 어프로치로 소프트웨어를 설계해야 하느냐에 대한 논의를 하게 됩니다.소프트웨어 개발/설계시 아키텍쳐링을 하다 보니 반복되는 패턴이 나오기 시작했고, 사람들은 이 패턴에 이름을 붙이기 시작했습니다. 즉, 아키텍쳐 패턴(Archiectural Patterns)이라 함은 소프트웨어 디자인 패턴이라고 할 수 있습니다. 참고로 패턴(Pattern)=유형,종류 라고 간주하셔...
인터프리터 아키텍쳐 패턴(Interpreter Architectural pattern)은 프로그래밍 언어의 특정 구문을 해석/분석하는 컴포넌트 디자인에 많이 사용됩니다. 이 아키텍쳐의 기본 아이디어는 각각의 표현마다 클래스를 가지도록 하여 이를 조합하는 구조를 만드는 것입니다. 인터프리터 아키텍쳐 패턴(Interpreter Architectural pattern)은 SQL과 같은 Database Query Language 또는 특정 통신 프로토콜을 기술하...
블랙보드 아키텍쳐 패턴(Blackboard Architectural pattern)은 Non-deterministic algorithm(비결정성 알고리즘)을 구현하는데 널리 이용되고 있습니다. Non-deterministic algorithm(비결정성 알고리즘)은 그 다음 단계의 결과가 실행할때마다 다르게 나올 수 있는 알고리즘을 의미합니다. 참고로 Deterministic algorithm(결정성 알고리즘)은 결과가 유니크(Unique)합니다. 즉, 특...
MVC(Model-view-controller) 아키텍쳐 패턴(Architectural pattern)은 웹 어플리케이션 개발에 주로 이용되는 아키텍쳐 패턴입니다. MVC는 다음의 3개 파트로 구성되어져 있습니다. 모델(model) - 기본 함수와 데이터를 포함합니다 뷰(view) - 정보를 사용자에게 보여줍니다. 웹페이지 그 자체를 생각하시면 될 것 같습니다 컨트롤러(controller) - 사용자로부터의 입력을 처리합니다 이 패턴의 기본 아이디어는 ...
이벤트-버스 아키텍쳐 패턴(Event-bus Architectural pattern)은 4개의 주요 컴포넌트로 구성되어져 있는데, 이들 컴포넌트는 이름에서 예상되듯 이벤트를 다루는 컴포넌트 입니다. 이벤트 소스(event source) 이벤트 리스너(event listener) 채널(channel) 이벤트 버스(event bus) 아래의 그림에서 특정 채널을 통해 메시지가 메시지 버스를 통해 전달 되면, 리스너(listener)는 등록(subscribe)...
P2P는 Peer-to-Peer의 줄임말입니다. P2P 아키텍쳐 패턴(Architectural pattern)에서 개개의 각각의 독립적인 컴포넌트를 피어(peer)라고 부릅니다. 각각의 피어는 클라이언트로서 다른 피어에게 서비스를 요청하면서 한편으로는 서버로서 요청받은 서비스를 동적으로 처리해주는 기능을 가집니다. 2000년대 초반에 많이 쓰이던 당나귀(eDonkey), 냅스터(Napster), 소리바다와 같은 소프트웨어가 P2P 아키텍쳐 패턴에 해당하며...
브로커아키텍쳐 패턴(Broker Architectural pattern)은 클라이언트-서버(Client-Server) / 마스터-슬레이브(Master-Slave) 처럼 역할이 분리된 컴포넌트(decoupled components)를 구조화하는데 주로 응용되는 패턴입니다. 여기서 브로커 컴포넌트는 컴포넌트간 통신(communication)을 조율(coordination) 하는 역할을 담당합니다. 클라이언트가 어떤 요청사항을 전달하면, 브로커가 중간에 받아서...
파이프-필터 아키텍쳐 패턴(Architectural pattern)은 웹로그와 같은 텍스트 기반의 데이터 또는 프로그램 소스 코드 등과 같은 데이터 스트림을 처리하는데 적합합니다. 각각의 프로세스는 필터 컴포넌트 내에서 처리되며, 데이터는 파이프를 통해 전달되어 처리되어집니다. 이러한 파이프는 버퍼링을 하거나 동기화 하는 목적으로 사용됩니다. 컴파일러, DNA정보 분석 소프트웨어가 파이프-필터 아키텍쳐 패턴(Architectural pattern)기반이라...
마스터-슬레이브 아키텍쳐 패턴(Master-Slave Architectural pattern)은 마스터(master)와 슬레이브(slave)로 구성되어져 있는데, 마스터는 일을 분배하는 역할을 가지고 있으며, 슬레이브는 전달된 기능을 수행합니다. 즉, 마스터(주인)이 업무를 지시하면, 슬레이브(하녀)는 그 일을 완료하여 결과물을 전달 하는 것입니다. 마스터-슬레이브 아키텍쳐 패턴(Master-Slave Architectural pattern)의 예로는 데...
클라이언트-서브 아키텍쳐 패턴(Client-Server Architectural pattern)은 서버와 다수의 클라이언트로 구성된 2-Tier Architecture입니다. 서버는 다수의 클라이언트 컴포넌트에게 서비스를 제공하고, 클라이언트는 서버로부터 서로 약속한 서비스를 받는 구조입니다. 따라서, 이 구조에서는 서버가 클라이언트로부터 지속적으로 요청을 받아 처리하도록 설계되어져 있습니다. 응용분야로는 TCP/IP를 기반으로하는 Clien...
레이어드 아키텍쳐 패턴(Layered architectural pattern)은 특정 수준의 추상화 된 레벨의 서브 펑션으로 구성된 스트럭쳐드 프로그램(Structure programs)에 널리 이용되고 있습니다. 각각의 레이어는 차상위 레벨의 레이어에게 서비스를 구성하도록 설계되어져 있는데, 통상 다음과 같이 4단계의 레이어를 이용하여 일반적인 정보 시스템을 구성하고는 합니다. Presentation layer (UI layer라고도 부름) Applic...
Machine Learning Tool의 종류는 어떤 것이 있고, 그 용도는 어떤 것으로 설계되었는지 살펴봅니다. 1. Tensorflow Google Brain Team에서 개발했고, Neural Network 및 Machine Learning에 대한 연구에 사용되고 있습니다. Gmail, 음성 인식, Google 포토 및 Google 검색과 같이 일상적으로 사용하는 인기있는 Google 서비스에는 Tensorflow가 탑재되어 있다고 합니다. Tens...
자연어 처리의 역사는 1950년대로 거슬러 올라가야 합니다. 당시 지금과 같은 컴퓨터 기술이 없었을때도 로봇이 사람의 말을 알아들을 수 있을까에 대한 의구심이 있었습니다. 또한 어떻게 하면 로봇이 사람의 말을 인지할 수 있을까에 대한 궁금증 또한 있었습니다. 인공지능의 가장 큰 도전과제는 어떻게 지식을 이해하고 표현할 것인가일 것입니다. 이해하는 것과 표현하는 것은 다를 것 같지만, 결국 그 둘의 공통분모는 이를 어떻게 정보화 할 것이냐에 대한 결과로 도...
오늘은 Collaborative Filtering에 대해 간단히 정리해보려고 합니다. 업무상 이와 관련된 내용을 자주 접하지만, 어딘가 정리를 해서 놓을 필요가 있다는 생각이 들어 블로그에 올려봅니다. 참고로 이는 전혀 새로운 알고리즘이나 방법이 아니며, 이미 학술적으로도… 또한 업계에서도 널리 응용되고 있는 방법입니다. 본 포스트에서는 Collaborative Filtering에 대해 그 정의와 응용(Application)에 대해 간단히 소개하고자 합니...
서버 인프라 설계시 장애를 최소하려는 시도를 아키텍쳐 측면에서 바라보면 다음과 같이 4가지 아키텍쳐가 존재합니다.Single InfraActive-Stand-byActive-ActiveActive-Stand-by/Active-Active + DR Center 그러면 각각을 하나하나 살펴 보겠습니다. 1. Single Infra일반적으로 대다수의 서비스들이 이 아키텍쳐를 기반으로 만들어졌다고 보시면 됩니다.이 아키텍쳐의 특징은 나름 확장성...
일본 동경 여행시 방문했던 미래관. 원래 명칭은 일본과학미래관이고, 줄여서 그냥 미래관이라고 부릅니다. 일본 가족 여행은 하고 있고 뭔가 아이들에게 교육이 되는 뭔가를 하고 싶었는데, 미래관은 일본에서도 아예 여행 코스로 추천하는 곳입니다. 미래관은 최신식 건물로 되어져 있고, 안에 들어가면 흥미진진한 볼거리를 만들어 그야말로 미래의 주축이 될 어린이들에게 많은 지식을 넣어주려고 노력한 흔적이 보이는 곳이기도 합니다. 대략의 층별 배치도는 다...
아이폰 프로그래밍에 feel 받아서 MAC OS를 설치하고자 자료를 정리한 것을 공유합니다.1. 먼저 레오파드 시즌3 이미지를 다운받습니다... (약 4.5G)2. 아크로니스 디스크 슈트10으로 파티션을 설정 (또는 본인이 선호하는 형태로)3. 구운DVD를 넣고 부팅4. OS X로 부팅이 되면 첫화면에서 F8 누르시고 다음화면에서 -v 치고 엔터누르시면 로딩되는 파일들등등이 나옴. - 간혹 멈춘듯이 보여도 인내심을 가지고 기다려 볼것 -...
아키텍쳐를 디자인하다 보면 2-Tier이냐 3-Tier이냐에 대한 질문을 까끔 듣습니다.이는 보통 Java개발자들에게서 많이 듣는 질문이기도 한데요. 왜냐하면 J2EE 어플리케이션이 2-Tier 또는 3-Tier로 구분되기 때문입니다.아래는 2-Tier 아키텍쳐의 사례입니다.위에서 보시면 클라이언트가 비즈니스로직과 데이터베이스로직, 그리고 UI까지 다 가지고 있는 구조라고 할 수 있습니다. 위의 그림상에서 보면 다음의 두개 티어(Tier)로 구성되어져 있...
도스에 나가서 Windows가 깔린 드라이버나 Windows가 있는 cdrom에서 system.1st 파일을 찾습니다. 이건 어느 폴더 같은데 안들어 있습니다. 그냥 C:에 있습니다(C:가 Windows가 깔린 드라이버일 경우)! 이 파일(sysyem.1st)은 숨겨진 파일임으로 mdir에서는 Alt+Z를 사용하여 찾습니다. 이걸 DOS용 에디터(Edit 등)로 불러냅니다. 거기서 검색하여 productkey를 찾습니다. ...
메일을 보낸 컴의 IP가 어떻게 된느지요?local에서 보낸 것이라면 /etc/mail/access 에localhost RELAY가 있어야 합니다.그외에는 현재 설정으로는 203.251.135.X 에서만보내기가 가능하도록 설정이 되어 있습니다.만약 현재 님이 메일을 보내려고 시도하는 컴의 IP가 위의 대역에 속해 있다면 db 갱신을 새로 해 보시기바랍니다. db 갱신은makemap hash /etc/mail/access < /etc/mail/access로...
Kurapa답:/etc/resolv.conf가 다음과 같이 되져 있는지 확인해보라nameserver [자기IP]nameserver 211.62.58.16nameserver 168.126.63.1nameserver 168.126.63.2 다른사람답:혹시.. dns 서버에서 메일서버 설정 = MX 레코드 가 올바로 되어 있는지 확인해보세요.. 자세한 내용은 kldp.org 에서 powered By DNS 문서를 참고하시고요.. @ ...
참고 ~ http://www.oops.org/lecture.php?n=4&sb=sendmail이 part는 virtual hosting시에 여려명의 user가 서로 같은 계정을 요구할때의 곤란함을 해결하기 위한 방법을 제시한다. 이 방법은 sendmail의 virtual user table을 이용하며 sendamil의 compile 방법 및 기본 설정에 대해서는 KLDP에 한글 자료가 있으니 참고하기를 바라고, 이 강좌에서 설정할 virtual user ...
# 가상 유저 (virtual user) 설정방법/etc/mail/virtual***파일에 설정하고자 하는 user를 설정하고 다음과 같이 실행rm -rf *.dbmake/etc/rc.d/init.d/sendmail restart# 다중 도메인 (virtual domain; 가상 도메인) 설정 방법/etc/mail/local-domain-names 파일에 쓰고자하는 도메인명을 추가하고 다음과 같이 실행rm -rf *.dbmake/etc/rc.d/init....
어떤 변수들이 post 또는 get method로 넘어왔는지 알아낼 수 있는 함수//HTTP_POST_VARS 란 인수에서 POST 값들을 이름:값 형식으로 하나씩 추출해 냅니다. while(list($Post_Name, $Post_Val)=each($HTTP_POST_VARS)) { echo("$Post_Name: $Post_Val "); } 이 방법을 사용하면 http://m.kurapa.com/?바보=천치 라는 식으로 파라메터...