본문 바로가기
반응형

분류 전체보기361

AWS 04_CloudFormation 템플릿으로 웹호스팅 세팅하기 ●CloudFormation - aws 리소스를 모델링, 설계해주는 서비스이다. json, yaml 코드로 인프라를 구성할 수 있다. 직접 모델링을 해도 되지만, 많은 샘플 템플릿으로 빠르고 편리하게 인프라를 구성할 수 있다. aws에서는 desinger를 이용하여 코드가 아닌 시각적인 도구로 설계가 가능하다. ex) { “AWSTemplateFormatVersion” : “2019-07-01”, “Description” : "설명...”, “Parameters” : { }, “Resources” : { }, “Outputs” : { } } ●아래 그림과 같은 구성을 가진 인프라 구축 1. ELB 생성 2. RDS생성 3. 보안그룹 생성 4. 2개의 EC2 생성 ●EC2, ELB, RDS, 보안그룹 개념.. 2019. 7. 28.
AWS 03_EC2 키페어 생성하기 ●aws 키페어 - aws에서 가상 서버에 접속하려면 개인키와 공개키로 구성된 키페어가 필요하다. 공개키는 aws에 업로드하고, 개인키는 내가 소유한다. ●키페어 생성방법 1. aws 콘솔에 접속한다 주소 : console.aws.amazon.com 2.서비스->ec2 선택한다. 3.'네트워크 및 보안' 하위메뉴에서 '키페어' 클릭 후 '키페어 생성'버튼을 클릭한다. 4.키페어 이름을 입력하고 '생성' 버튼을 클릭하여 키페어를 생성한다. 키페어가 생성되면 testkey.pem이라는 키가 로컬pc에 다운로드 된다. 2019. 7. 27.
AWS 02_AWS 계정 만들기 1. 아마존 클라우드 서비스 사이트 접속 -주소 : https://aws.amazon.com/ko 2. 우측 상단 가입 클릭 3. 가입할 메일, 암호, 이름 입력 4. 계정유형 선택, 이름, 전화번호, 주소 입력 5. 과금 결제에 사용할 카드번호 입력(유효한 카드인지 확인하기 위해 1달러 결제됨) 6.휴대폰번호로 본인인증(국제번호로 sms문자 전송됨) 7. 원하는 서비스를 선택 8.가입완료 2019. 7. 27.
AWS 01_클라우드 기본 개념 ●클라우드 컴퓨팅 - 프로그램이나 데이터를 로컬PC에 저장해 놓는 것이 아니라 인터넷을 통하여 중앙 컴퓨터에 저장하고 사용하는 기법이다. - 클라우드의 유형은 크게 public(공용), private(사설), hybrid(하이브리드) 가 있다. - 클라우드 컴퓨팅의 서비스는 크게 IaaS(서비스형 인프라), PaaS(서비스형 플랫폼), SaaS(서비스형 소프트웨어)가 있다. ●클라우드 유형 1.public(공용) - 클라우드 서비스 제공업체가 인터넷 망을 통해 불특정다수의 기업이나 개인에게 서버, DB 등의 자원을 빌려주는 형태의 서비스이다. 인터넷을 통하여 공간을 빌려쓰는 일반적인 aws,애저 같은 서비스이다. 2.private(사설) - 오직 하나의 고객만을 위해 구성된 클라우드 서비스이다. 3.hy.. 2019. 7. 27.
아두이노 DC모터 움직이기 ●배터리연결빨간 + 검정 - ● #include #include byte INBYTE;SoftwareSerial BTSerial(3, 2); //Connect HC-06 TX,RXAF_DCMotor motor1(1);AF_DCMotor motor2(3); void setup() { Serial.begin(9600); // set up Serial library at 9600 bps Serial.println("Motor test!"); BTSerial.begin(9600);//블루투스 연결 // turn on motor motor1.setSpeed(200); motor2.setSpeed(200); motor1.run(RELEASE); motor2.run(RELEASE);} void loop() { uin.. 2016. 1. 5.
아두이노 블루투스로 안드로이드 연결하기 ●블루투스 모듈(HC-06)- 블루투스를 이용할 수 있게 해주는 모듈이다. 아두이노 스케치에서 SoftwareSerial를 사용하여 통신한다. ●안드로이드 블루투스로 LED 점멸하는 예제 #include byte INBYTE;const int ledPin = 10;String str=""; SoftwareSerial BTSerial(3, 2); //Connect HC-06 TX,RXvoid setup() { Serial.begin(9600); //PC와 연결 BTSerial.begin(9600);//블루투스 연결 pinMode(ledPin, OUTPUT);}void loop(){ if (BTSerial.available()){ INBYTE = BTSerial.read(); switch(INBYTE){ c.. 2016. 1. 5.
아두이노 Serial 사용해서 PC와 연결하기 ●Serial 사용해서 PC와 연결하기 char INBYTE;const int ledPin = 2; void setup() { Serial.begin(9600); pinMode(ledPin, OUTPUT);}void loop() {if(Serial.available()){ INBYTE = Serial.read(); if( INBYTE == '0' ){ Serial.println("0"); digitalWrite(ledPin, LOW); } if( INBYTE == '1' ){ Serial.println("1"); digitalWrite(ledPin, HIGH); } delay(50); } } 2016. 1. 4.
아두이노 7 segment LED 디지털 튜브 ●7 segment LED 디지털 튜브- 7개의 작대기로 문자를 표시하는 LED디저털 튜브이다. ●0~9까지 표시하는 예제 #define ledA 7#define ledB 8#define ledC 2#define ledD 3#define ledE 4#define ledF 6#define ledG 5 void setup() { pinMode(ledA, OUTPUT); pinMode(ledB, OUTPUT); pinMode(ledC, OUTPUT); pinMode(ledD, OUTPUT); pinMode(ledE, OUTPUT); pinMode(ledF, OUTPUT); pinMode(ledG, OUTPUT);} void loop() { // 1 digitalWrite(ledD, LOW); digitalWr.. 2016. 1. 2.
아두이노 RGB 제어하기 ●RGB- 'R','G','B'에 0~255의 값을 주고 '-'를 GND에 연결한다. ●RGB LED 색 변화 int rgbPin1 = 9;int rgbPin2 = 10;int rgbPin3 = 11; void setup() { pinMode(rgbPin1, OUTPUT); pinMode(rgbPin2, OUTPUT); pinMode(rgbPin3, OUTPUT); } void loop() { analogWrite(rgbPin1, random(0,255)); analogWrite(rgbPin2, random(0,255)); analogWrite(rgbPin3, random(0,255)); delay(500);} 2016. 1. 2.
아두이노 적외선 리모콘 ●아두이노 적외선 리모콘- 아래 사이트에서 라이브러리를 다운받아 내 컴퓨터의 아두이노 설치경로인 Arduino\libraries에 복사한다. 적외선 리모콘 기능을 쓰려면 #include 를 추가해야한다. https://github.com/shirriff/Arduino-IRremote/ ●적외선 리모콘 예제 #include int RECV_PIN=2;IRrecv irrecv(RECV_PIN);decode_results results; void setup() { Serial.begin(9600); irrecv.enableIRIn();} void loop() { if(irrecv.decode(&results)){ Serial.println(results.value, HEX); irrecv.resume(); }.. 2016. 1. 1.
아두이노 빛의 세기에 따라 소리,LED밝기 조절 예제 ●빛의 세기에 따라 소리,LED밝기 조절 예제 const int ledPin = 6;const int buzzerPin = 3;const int lightPin = A0;int lightValue;int brightness; void setup() {} void loop() { lightValue = analogRead(lightPin); brightness = map(lightValue, 0,1023,0,255); analogWrite(ledPin,brightness); brightness = map(lightValue, 0,1023,100,1000); tone(buzzerPin,lightValue);} 2016. 1. 1.
아두이노 능동 부저, 수동 부저 ●부저- 능동부저(사진 오른쪽)전류가 흐르면 자동으로 소리가 나는 부저이다. - 수동부저(사진 왼쪽)아두이노의 tone함수를 통해 소리를 내는 부저이다. 보통 31~65535의 주파수를 낼 수 있다. noTone함수로 소리르 끌수 있다. ●능동부저 소리내기 const int buzzerPin= 2; void setup() { pinMode(buzzerPin,OUTPUT);} void loop() { digitalWrite(buzzerPin, HIGH); delay(1000); digitalWrite(buzzerPin, LOW); delay(1000); digitalWrite(buzzerPin, HIGH); delay(5000); digitalWrite(buzzerPin, LOW); delay(5000);.. 2016. 1. 1.
아두이노 광센서, 온도센서 사용 예제 ●광센서- 빛에 노출되면 저항이 줄어드는 저항이다. ●빛 세기에 의해 LED밝기 조절하는 예제 const int ledPin = 3;const int lightPin = A0;int lightValue;int brightness; void setup() { Serial.begin(9600);} void loop() { lightValue = analogRead(lightPin); Serial.println(lightValue); //0~1023값을 0에서 255값으로 환산한다. brightness = map(lightValue, 0,1023,0,255); analogWrite(ledPin,brightness);} ●온도센서- 온도에 따라 저항값이 달라지는 저항이다. 아래 온도센서는 LM35DZ이다. 양쪽.. 2016. 1. 1.
아두이노 가변저항으로 아날로그 입력 조절 예제 ●가변저항- 가변저항은 3개의 선으로 회로에 연결된다. 양쪽에 5V, GND를 연결하고 가운데를 출력값으로 이용한다. 저항의 값이 높아지거나 낮아짐에 따라 전류량이 조절된다. 저항이 낮은 상태에서는 전류량이 많아지고 저항이 높아지면 전류량이 줄어든다. ●가변저항을 이용한 led 밝기 조절 예제 const int ledPin = 3;const int potentiometerPin = A0;int potentiometerValue;int brightness; void setup() { Serial.begin(9600);} void loop() { potentiometerValue = analogRead(potentiometerPin); Serial.println(potentiometerValue); //0~.. 2015. 12. 31.
아두이노 버튼 입력 받기 예제 ●버튼- 회로를 닫아주고 열어주는 역할을 한다. 아래 버튼은 손으로 누르고 있으면 전류가 흐르고 손을 때면 전류가 흐르지 않게 되는 버튼이다. ●아두이노 스케치를 이용하지 않은 버튼 테스트 ●버튼의 입력에 따라 LED가 점등이 되는 예제 const int ledPin = 2;const int buttonPin = 4;int currentButtonState; void setup() { pinMode(ledPin,OUTPUT); pinMode(buttonPin,INPUT); Serial.begin(9600);} void loop() { currentButtonState = digitalRead(buttonPin); digitalWrite(ledPin, currentButtonState); Serial.pr.. 2015. 12. 31.
아두이노 LED켜는 예제 ●브레드보드- 남땜이 필요없는 프로토타입용 보드이다. 빨간선에는 양의 전압을 연결해주고, 파란선은 접지(GND)로 연결해준다.중간에는 부품들은 연결하기 위해 사용한다. ●LED- 소량의 전류만 필요하여 과다 전류가 흐를 경우 불이 날수도 있다. LED가 파손되는 것을 막기위해 LED앞에 저항을 연결해준다. - LED는 방향성을 가진다. LED를 통과하는 전류는 한 방향으로 흐른다. 긴 쪽 다리는 양극, 짧은 쪽 다리는 음극(GND)에 연결한다. ●아두이노 스케치를 사용하지 않고 단순하게 전류를 흘려 LED를 켜는 사진 ●전구를 켰다 껐다하는 예제- 저항을 연속해서 LED에 연결한다. 보드의 2,3,4번 디지털 출력 핀이 저항에 연결되고, 저항은 LED의 양극에 연결한다. - pinMode()로 OUTPU.. 2015. 12. 31.
아두이노 개발환경 세팅 ●아두이노 보드 구입- 아두이노 보드를 구입한다. 아두이노 우노 보드의 경우 정품은 2~3만원, 호환보드(클론제품)의 경우 6000원 정도에 판다. 아두이노를 공부하고 테스트할 수 있게 아두이노 보드, 브레드보드, 기타 여러 부품등을 조합해서 스타터킷을 구성해서 판다. ●아두이노 통합 개발 환경 소프트웨어(스케치) 설치- 아래 사이트에서 스케치 프로그램을 다운받아 설치한다.https://www.arduino.cc/ ●아두이노 보드와 컴퓨터 연결- 아두이노와 컴퓨터를 USB로 연결한다. 아두이노 보드의 USB는 전원을 공급받을 수 있고, 컴파일한 프로그램을 업로드 받고 시리얼 포트를 통해 디버깅 메시지를 볼 수 있다. ●아두이노 보드용 드라이버 설치- USB로 아두이노 보드와 컴퓨터를 연결하니 자동으로 드.. 2015. 12. 26.
아두이노 기초 ●아두이노(arduino)- 입력,출력을 제어할 수 있는 프로세서와 메모리를 갖춘 소형 컴퓨터이다. 아두이노는 마이크로 컨트롤러를 컴퓨터에 연결한 후 명령어(코드)를 작성하여 메모리에 로드하면 기판에 연결한 여러가지 센서나 부품 등의 하드웨어 장비를 제어할 수 있다. 아두이노를 개발하기 위해선 아두이노 보드, 아두이노 개발 IDE(스케치), 브레드 보드, 점프선 및 기타 부품이 필요하다. ●아두이노 보드의 종류- 아두이노 우노->가장 많이 사용되는 기본적인 아두이노이다. atmega328p프록세스를 기본하고 보드의 핀 배열이 거의 표준과 같이 사용된다. - 아두이노 나노->아두이노 우노 보드와 거의 공일한 구성이지만 훨씬 작고 비싸다. 나노 보드는 USB-시리얼 어댑터가 장착되어 있지 않기 때문에 프로그.. 2015. 12. 21.
오라클 뷰(view) ●뷰(view)- 하나 또는 그 이상의 테이블이나 뷰를 이용하여 생성되는 논리적인 테이블로 실제 데이터는 저장하지 않는다.테이블의 전체 데이터중 일부칼럼, 일부 레코드만 보여주는 역할을 한다. 데이터의 보안과 사용편의성 때문에 사용한다. ex)create view test_viewas select empno, ename, sal from empwhere deptno=10; select * from test_view; ex)create view test_view2as select deptno, avg(sal) avg, sum(sal) sum from empgroup by deptno; select * from test_view2; 2015. 9. 2.
오라클 시퀀스(sequence) ●시퀀스(sequence)- 다중 사용자 환경에서 사용하는 숫자를 자동 생성한다. 테이블 또는 컬럼과는 독립적으로 생성,삭제된다. - ex)create sequence seq_test; --시퀀스 생성select seq_test.currval from dual; --시퀀스 현재 번호 조회select seq_test.nextval from dual; --시퀀스 다음 번호 조회 2015. 9. 2.
오라클 계층형 쿼리 ●계층형 쿼리 - 계층 관계가 있는 칼럼(외래키로 자기자신 테이블을 참조)이 있는 경우 계층 구조를 이용하여 데이터를 추출- 형식select 칼럼from 테이블start with 조건connect by [prior] [nocycle] ex)select empno, ename, mgr, connect_by_root ename, sys_connect_by_path(ename, '/')from empstart with mgr is nullconnect by prior empno = mgr; arex)select level,lpad(' ',(level-1)*2,' ')||ename, sal,deptnofrom empstart with ename = 'KING'connect by prior empno = mgr; 2015. 9. 2.
오라클 테이블 복사하기 ●테이블 복사하기 - create table 테이블명 as select 컬럼명 from 테이블명; ●데이터를 포함하지 않고 구조만 복사- create table 테이블명 as select 컬럼명 from 테이블명 where 1=0; 2015. 9. 2.
오라클 union, minus ●union- 연결된 select문의 결과 합을 보여준다. 중복된 것은 하나만 보유준다. ●union all- union과 같이만 중복된 것이 있어도 모두 보여준다. ●minus- 연결된 select문의 결과 차를 보여준다. ●ex-select * from test; -select * from test2; -select * from testunionselect * from test2; -select * from testunion allselect * from test2; -select * from testminusselect * from test2; 2015. 9. 2.
오라클 각종 함수들2 ●TO_CHAR- 숫자나 날짜형 자료를 문자로 변환한다.ex)select to_char(8000000,'999,999,999'), to_char(sysdate,'yyyy/mm/dd'),to_char(sysdate,'yyyymmdd') from dual; ●NVL(a,b)- a 데이터가 null일 경우 b로 변환해서 출력한다.ex)select comm, nvl(comm,'0') from emp; ●DECODE(a, b, c,d)- 조건함수이다. a데이터가 b와 같으면 c를 출력, 아니면 d를 출력한다.ex)select comm, decode(comm, 300, '300입니다', '300이 아닙니다') from emp; ●CASE~WHEN- decode함수와 비슷하지만 좀더 직관적인 함수이다.ex)selec.. 2015. 9. 2.
오라클 각종 함수들1 ●length- 인수의 길이를 반환한다.ex)select length('1234') from dual; ●lower- 인수를 소문자로 변환한다.ex)select lower('ABCD') from dual; ●upper- 인수를 대문자로 변환한다.ex)select upper('abcd') from dual; ●lpad - 인수의 왼쪽을 입력한 자리수가 되도록 입력한 문자로 채운다.ex)select lpad('111',5,0) from dual; ●trim- 인수의 좌우 공백을 제거한다.ex)select trim(' ABC ') from dual; ●substr- 인수의 문자열을 잘라낸다ex)select substr('ABC',0,2) from dual; ●avg- 칼럼의 평균을 구한다.ex)select a.. 2015. 8. 28.
오라클 칼럼 별명(alias), 합성연산자(||) ●컬럼별명(alias)- 컬럼 이름을 쓰고 공백 다음에 별명을 지어주거나 as를 사용하거나 큰따옴표를 사용하여 별명을 지어준다.ex)select job, job jj, job as jj2, job "jj3" from emp; ●합성연산자(||)- 하나의 칼럼과 문자열 또는 다른 칼럼을 연결시킨다.ex)select empno||'-'||ename||'-'||job from emp; 2015. 8. 28.
오라클 select, distinct, group by having, order by ●select 칼럼명 from 테이블명;- 칼럼명부문에 웬만하면 * 를 사용하지 말고 칼럼명을 적어주는게 좋다(서버 부하를 줄이기 위해)ex)select deptno from emp; ●distinct- 컬럼에서 중복을 제거하고 같은 값이면 하나만 출력한다.ex)select distinct(deptno) from emp; ●group by- 특정 칼럼을 기준으로 한 그룹으로 묶어서 합계, 평균, count 등에서 사용한다.ex)select deptno, avg(sal), sum(sal) from empgroup by deptno; ●having- group by 기준 칼럼,그룹핑 함수에 조건을 건다.ex)select deptno, avg(sal), sum(sal) from empgroup by deptn.. 2015. 8. 28.
오라클 현재 접속한 데이터베이스 이름, sid확인, 버전확인 ●select name from v$database- 데이터베이스명 확인 ●select instance from v$thread- sid 확인 ●select * from v$version- 현재 데이터베이스 버전 확인 2015. 8. 26.
오라클 sqlplus 기본 명령어(접속, 테이블리스트, 테이블정보,sql파일 실행) ●conn uid/pwd- 해당 uid의 데이터베이스에 접속한다. ●select * from tab- 현재 접속한 계정의 테이블 리스트를 출력한다. ●desc 테이블명- 해당 테이블의 칼럼리스트와 칼럼에 대한 구조를 나타낸다. ●start sql파일명 or @sql파일명- 파일명.sql 파일에 있는 sql문을 실행한다. cmd창에서 해당 파일이 있는 경로로 이동한 후 sqlplus실행한 다음 위 명령어를 실행하면 된다. 2015. 8. 26.
오라클 데이터베이스 시작, 종료 ●오라클 종료- shutdownn immediate - 가장 자주 사용되는 방법으로 실행중인 sql문장을 중지하고, 실행중인 트랜잭션이 있으면 rollback, 사용자의 새로운 로그인을 막고 db에 변경된 사항을 데이터파일에 기록한다. 사용자들이 로그아웃할때까지 기다리지 않고 db를 종료한다. ●오라클 시작- startup nomount -> startup mount -> startup open 2015. 8. 26.
반응형