cheezzapisse.tistory.com Open in urlscan Pro
211.249.222.33  Public Scan

URL: https://cheezzapisse.tistory.com/
Submission: On November 27 via api from US — Scanned from DE

Form analysis 16 forms found in the DOM

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

<form class="tt_form_pwd">
  <fieldset>
    <legend class="screen_out">비밀번호 입력</legend><input class="tt_inp_g" type="password" title="비밀번호" placeholder="비밀번호를 입력하세요." maxlength="12" value=""><button type="submit" class="tt_btn_submit" disabled=""><span
        class="tt_img_area_reply tt_ico_check">입력하기</span></button>
  </fieldset>
</form>

<form style="margin: 0px;">
  <div class="tt-area-write">
    <div class="tt-box-thumb"><span class="tt-thumbnail"
        style="background-image: url(&quot;https://img1.daumcdn.net/thumb/C44x44@2x.fwebp.q85/?fname=https%3A%2F%2Ft1.daumcdn.net%2Ftistory_admin%2Fblog%2Fadmin%2Fprofile_default_01.png&quot;);"></span></div>
    <div class="tt_wrap_write">
      <div class="tt-box-account"><input type="text" title="이름" placeholder="이름" maxlength="32" value=""><input type="password" title="비밀번호" maxlength="12" placeholder="비밀번호" value=""></div>
      <div class="tt-box-textarea">
        <div class="tt-inner-g"><textarea id="comment" placeholder="로그인 댓글만 허용한 블로그입니다"></textarea></div>
      </div>
      <div class="tt-box-write"><label class="tt-xe-label"><input type="checkbox" id="secret"><span class="tt_img_area_reply tt-xe-input-helper"></span><span class="tt-xe-label-text">비밀글</span></label><button type="submit" class="tt-btn_register"
          disabled="">등록</button></div>
    </div>
  </div>
</form>

Text Content

치자피즈

 * 분류 전체보기 (17)
   * 한화 BEYOND SWCAMP (1)
     * 한화 BEYOND SWCAMP 12기 회고 (1)
   * Linux (3)
   * 알고리즘공부 (7)
     * 프로그래머스 연습 (6)
   * Git (3)
   * DB (3)
   * SW 공학 (0)

 * 홈
 * 태그
 * 방명록


 * 포스팅 잘 보고 가요^^❤️


9 / 0 / 38
블로그 내 검색




전체 글

 * [Linux] 가상머신의 IP 설정 17:48:19
   
 * [DB] SQL 기초 문법 15:47:56
   
 * [DB] 데이터베이스(DB)란?? 12:18:53
   
 * [DB] 가상환경에서 DB 초기설정 10:21:35
   
 * [Git] Branch 브랜치란? 2024.11.26
   
 * [Linux] Linux 기본 명령어 정리 2024.11.26
   
 * [Git] README.md 설정하기 2024.11.26
   
 * Git 사용법 2024.11.25 1
   


[LINUX] 가상머신의 IP 설정

치자피즈토핑추가 2024. 11. 27. 17:48
2024. 11. 27. 17:48
IP, Linux, ubuntu, VMware, 가상머신, 고정


 

VMware 또한 일종의 컴퓨터이니 인터넷과 연결되야하지 않을까?

현실의 컴퓨터는 인터넷선이나 와이파이를 연결하면 되지만 가상컴퓨터는 어떻게 해야 인터넷을 사용할 수 있을까?

정답은 자동으로 된다이다.

 

Ubuntu를 이용해 linux 환경세팅이 끝났다면 윈도우의 virtual network editor를 실행시켜보자.

vmnet8이라는 가상 라우터가 생긴 것을 볼 수 있다.

라우터는 공유기라고 생각하면 될 것 같다. 실제 컴퓨터와 가상 컴퓨터가 vmnet8이라는 가상 공유기를 통해 통신하고 있는 것이다.

virtual network editor를 관리자권한으로 실행시키면 subnetMask, gateway, portforwarding 등을 설정할
수도 있지만 나중에 설명하기로 하자.

 

다시 가상컴퓨터로 돌아가서 만약 ubuntu를 설치할 때 별다른 조작을 하지않았다면 ip가 자동으로 설정되어있을 것이다.

하지만 ip주소가 자동으로 설정되게 해놓으면 앞으로 가상컴퓨터를 서버로 사용하거나 테스트할 때 ip 주소가 바뀐다거나 내가 기억하기 어려울
것이다.

따라서 고정 ip주소를 사용할 것이다.

 

ip주소 설정에 관한 건

/etc/netplan/ 폴더의 .yaml 파일을 설정해주면 된다.

50-cloud-init.yaml 파일이 기본적으로 있으니 이걸 사용할 것이다.

아래의 명령어로 yaml 파일을 수정해보자.

 

> vim /etc/netplan/50-cloud-init.yaml

 

만약 root 계정이 아닌 사용자 계정으로 파일을 수정하려하면 접근이 거부될 것이다.

 

sudo su - root 로 root 계정으로 접속하거나 위 명령어 앞에 sudo를 붙여 관리자 권한을 추가해주자.

 

다시 yaml 파일로 돌아오면 기본적으로 별 내용없이 dhcp : true  이렇게 적혀있을 것이다.

dhcp가 바로 ip주소를 자동으로 할당해주는 시스템이다.

하지만 우리는 ip를 고정하고 싶은거니까 지워주거나 false로 바꿔주고 아래처럼 바꿔주면 된다.

network:
   ethernets:
   version: 2
      ens33:  					// 사용자마다 다를 수 있음.
         addresses:	
         - 100.100.100.100/24	// 사용하고 싶은 ip를 서브넷마스크를 지켜서 입력 24는 서브넷마스크를 의미
         nameservers:			// dns서버 설정 여기선 google dns 서버를 사용
            addresses:
            - 8.8.8.8
         routes:
         - to:default
            via: 100.100.100.1	// gateway의 ip를 입력

 

 

저장하고 

netplan apply  명령어를 실행하면 ip 변경이 끝난다.

 

ip addr이나 ifconfig로 잘 바뀌었는지 확인해보고 ping 8.8.8.8로 잘 되는지도 확인해보자.

좋아요1
공유하기
URL 복사카카오톡 공유페이스북 공유엑스 공유
게시글 관리

구독하기치자피즈


'LINUX' 카테고리의 다른 글

[Linux] Linux 기본 명령어 정리  (0) 2024.11.26 Ubuntu 설치 및 세팅  (0) 2024.11.24

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[DB] SQL 기초 문법

치자피즈토핑추가 2024. 11. 27. 15:47
2024. 11. 27. 15:47
DCL, DDL, dml, SQL, 기초, 문법, 언어



SQL이란??

SQL은 데이터베이스에서 데이터를 저장, 조회, 수정, 삭제할 때 사용하고,

데이터베이스 자체의 성능 유지관리, 최적화에 사용되는 언어이다.

 

 


SQL의 종류

 SQL은 크게 DDL, DML, DCL로 나눌 수 있고 각각의 개념을 알아볼 것이다.

 

DDL (DATA DEFINITION LANGUAGE) 데이터 정의어

--------------------------------------------------------------------------------

데이터베이스 구조 정의에 사용하는 언어로, 테이블이나 컬럼 등을 생성, 수정, 삭제한다.

 

DDL의 종류

 

CREATE : 테이블 생성

ALTER : 기존 테이블 구조 변경

DROP : 기존 테이블 삭제

TRUNCATE : 기존 테이블 초기화

RENAME : 기존 테이블 이름 변경

 

 

DML (DATA MANIPULATION LANGUAGE) 데이터 조작어

--------------------------------------------------------------------------------

 

데이터 조작에 사용되는 언어로, 테이블의 데이터를 조회, 저장, 수정, 삭제한다.

데이터베이스 내부에 실제로 저장된 데이터들을 다루는 역할을 한다.

 

DML의 종류

 

SELET : 저장된 데이터를 조회 

INSERT : 새로운 데이터를 저장

UPDATE : 저장된 데이터를 수정

DELETE : 저장된 데이터를 삭제

 

 

DCL (DATA CONTROL LANGUAGE) 데이터 제어어

--------------------------------------------------------------------------------

데이터베이스에 대한 접근 권한 제어에 사용되는 언어로, 각종 권한을 부여, 회수한다.

권한 관리를 통해 시스템 보안을 유지한다.

 

DCL의 종류

 

GRANT : 유저에게 권한부여

REVOKE : 유저로부터 권한을 회수

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'DB' 카테고리의 다른 글

[DB] 데이터베이스(DB)란??  (0) 2024.11.27 [DB] 가상환경에서 DB 초기설정  (0) 2024.11.27

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[DB] 데이터베이스(DB)란??

치자피즈토핑추가 2024. 11. 27. 12:18
2024. 11. 27. 12:18
db, 데이터베이스


 


DB의 정의

 

데이터베이스 또는 DB는 구조화된 정보, 조직화된 데이터의 모음이라고 말할 수 있다.

 

데이터베이스는 일반적으로 DBMS(데이터베이스관리시스템) 에 의해 관리된다.

또 대부분의 데이터베이스는 데이터 작성 및 쿼리에 SQL을 사용한다.

 


DBMS란?

 

DBMS는 데이터베이스와 최종 사용자 또는 프로그램 간의 인터페이스 역할을 하여 사용자가 정보의 구성 및 최적화 방법을 검색, 업데이트 및
관리할 수 있게 해준다.

또한 DBMS는 데이터베이스의 감독 및 제어가 용이하여 성능 모니터링, 튜닝, 백업, 복구 같은 다양한 관리 작업이 가능하다.

주로 사용되는 DBMS로는 MySQL, Microsoft Access, Microsoft SQL Server, FileMaker Pro,
Oracle Database 및 dBASE가 있다.

 


SQL이란?

 

데이터를 쿼리, 조작 및 정의하고 액세스 제어를 제공하기 위해 거의 모든 관계형 데이터베이스에서 사용되는 프로그래밍 언어.

 


DB의 유형

 

데이터베이스의 유형은

계층형(HDBMS), 네트워크형(NDBMS), 관계형(RDBMS), 객체형(ODBMS), noSQL 등 매우 다양하다. 

주로 RDBMS와 noSQL이 가장 많이 사용되고 각각의 장단점이 존재한다.

데이터의 사용 방식에 따라 유형을 선택해 사용하면 될 것 같다.

 

 

 


DB의 특징

 

자료 추상 

복잡한 자료를 쉽게 사용할 수 있고, 자료의 개념화, 자료의 공통 성질 추출이 가능하다.

 

자료 독립

자료와 프로그램간의 독립성 유지가 가능하다.

 

자기 정의

자료의 구성과 내용을 DB 자체에서 저장 및 관리를 한다.

 

 


DB의 장점

 

데이터의 논리적 독립성

논리적 구조가 변경되어도 DB를 이용하는 프로그램에는 영향을 끼치지 않는다.

 

데이터의 물리적 독립성

저장장치의 구조를 변경해도 DB를 이용하는 프로그램 및 개념에 영향이 없다.

 

데이터의 무결성 유지

데이터를 사용할 때 다양한 제약조건으로 데이터에 결점이 생기지 않도록 유지한다.

 

데이터의 중복성 최소화

데이터를 통합하여 구성함으로 중복을 미리 통제한다.

 

데이터의 불일치 제거

중복을 최소화하여 불일치를 제거한다.

 

 

 

 

 

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'DB' 카테고리의 다른 글

[DB] SQL 기초 문법  (0) 2024.11.27 [DB] 가상환경에서 DB 초기설정  (0) 2024.11.27

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[DB] 가상환경에서 DB 초기설정

치자피즈토핑추가 2024. 11. 27. 10:21
2024. 11. 27. 10:21
Database, db, mariaDB, MySQL, VMware, 가상머신, 설정, 세팅, 원격


 

 

저번에 설치해놓은 VMware을 이용해 가상환경에서 mariaDB를 세팅해보자.

VMware를 설치 안했다면 클릭

 

Ubuntu 설치 및 세팅

1. VMware 설치Linux는 윈도우같은 운영체제의 일종이다. 따라서 윈도우환경에서 Linux를 사용하고 싶다면 가상머신을
이용해야한다.가상머신은 기존 컴퓨터의 자원을 조금씩 떼서 하나의 가상컴퓨

cheezzapisse.tistory.com

 

1. 관리자 로그인
2. IP 설정
3. IP 설정 적용
4. 레포지토리 목록 갱신
apt update

04. mariadb 설치
apt install -y mariadb-server

05. mariadb 설정
vi /etc/mysql/mariadb.conf.d/50-server.cnf
27번 라인에 있는 설정을 다음처럼 변경
bind-address      = 0.0.0.0

 

> * bind-address를 0.0.0.0으로 변경해주는 이유 *
> 127.0.0.1이 기본으로 설정되있을것이다.
> bind-address는 해당주소에서 오는 요청을 허용해준다고 하는 의미다.
> 0.0.0.0으로 설정하면 외부에서 오는 모든 요청을 허용하는 것.

>  
> 
> 06. mariadb 실행
> systemctl restart mariadb
> 
> 07. mariadb 실행 확인
> systemctl status mariadb
> apt install -y net-tools
> netstat -anlp | grep :3306

 

sudo mysql_secure_installation 로 초기 설정을 해준다.

 

( 루트 패스워드 설정 여부 )

( 익명 사용자 삭제 여부 )

root 계정의 원격 접속을 막을껀지

test 데이터베이스 삭제 여부

등 여러가지 물어보는데 읽어보고 Y/N 선택하고 비밀번호 입력하고 설치하면 된다.

 

 

이제 mariadb나 mysql을 콘솔창에 입력해 db로 들어간다.

 

사용자 생성
CREATE USER '[이니셜]'@'%' IDENTIFIED BY '비밀번호';

DB 생성
CREATE DATABASE [DB 이름];

사용자한테 DB 관리 권한 부여
GRANT ALL PRIVILEGES ON [DB 이름].* TO '[이니셜]'@'%';

 

권한 적용

FLUSH PRIVILEGES;

클라이언트 프로그램 종료
exit

 

 

이렇게 새로운 db와 새로운 사용자를 만들었다!

다음엔 테이블을 채워보자

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'DB' 카테고리의 다른 글

[DB] SQL 기초 문법  (0) 2024.11.27 [DB] 데이터베이스(DB)란??  (0) 2024.11.27

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[GIT] BRANCH 브랜치란?

치자피즈토핑추가 2024. 11. 26. 18:53
2024. 11. 26. 18:53
branch, GIT, master, Merge, 명령어, 사용법, 장점


모든 버전 관리 시스템은 브랜치를 지원한다.

개발을 하다 보면 원래 코드와는 상관없이 독립적으로 개발을 진행할 때가 있는데,

이럴때 브랜치가 사용된다.

 


그래서 브랜치란 무엇인가

--------------------------------------------------------------------------------

브랜치는 커밋 사이를 이동할 수 있는 포인터 같은 것이다. 

기본적으로 Git은 master 브랜치를 만든다. 처음 커밋하면 이 master 브랜치가 생성된 커밋을 가리킨다.

이후 커밋을 만들면 master 브랜치는 자동으로 가장 마지막 커밋을 가리킨다.

 



git init 후에 커밋 두번 한 상태



 

그럼 여기서 브랜치를 만든다면 어떻게 될까?

아래의 명령어로 새로운 브랜치를 만들 수 있다.

아래의 버전은 새로운 브랜치를 만들고 바로 이동하는 명령어이다.

$ git branch new_branch

$ git checkout -b new_branch

 



branch를 생성후 아직 new_branch로 이동하지 않은 상태



 

그럼 지금 작업중인 branch가 어느것인지 확인은 어떻게 할까?

답은 git branch를 이용하는 것이다.

*가 앞에 있는 것이 현재 branch다.

$git branch

 

 

이제 new_branch로 이동해보자.

 

$git checkout new_branch

 



checkout 명령어로 new_branch로 이동한 상태



 

그럼 여기서 commit을 해보면 어떻게 될까??

 



커밋을 하나 더 한 상태



 

master 브랜치는 그대로지만 new_branch와 그걸 가리키는 head는 새로운 커밋을 가리키게 되었다!

그럼 여기서 아래의 코드로 master 브랜치로 돌아가면??

$git checkout master

 



다시 master 브랜치로 돌아간 상황



 

다시 master 브랜치가 가리키던 커밋으로 돌아온 걸 볼 수 있다. 

이제부턴 new_branch와 별개로 진행되는 것이다.

여기서 커밋을 한번 해보면 어떻게 될까?

 



master 브랜치에서 추가 커밋을 한 상황



 

이렇게 프로젝트가 10e9q라는 커밋을 기점으로 분리되어 진행할 수 있는 것이다.

이제 checkout을 통해 자유롭게 브랜치를 옮겨다니며 작업을 하고 적절할 때 두 브랜치를 merge한다.

 


그렇다면 브랜치를 사용하는 장점은?

--------------------------------------------------------------------------------

1. 작업 분리와 안정성 유지

 

브랜치는 새로운 기능이나 버그 수정을 독립적으로 진행할 수 있는 환경을 제공한다.

이를 통해 작업 도중 발생할 수 있는 오류가 메인 코드에 영향을 주지 않으므로 프로젝트의 안정성을 유지할 수 있다.

 

2. 효율적인 협업 지원

 

여러 명의 개발자가 각각의 브랜치에서 동시에 작업할 수 있어 개발 속도가 빨라지고,

개발자간의 충돌을 최소화할 수 있다.

 

3. 유연한 버전 관리와 릴리즈 전략

 * 브랜치를 이용해 기능별, 릴리즈별로 코드베이스를 분리할 수 있어, 특정 시점의 코드로 되돌아가거나 긴급한 버그 수정을 독립적으로 적용하는
   것이 용이하다. 이는 릴리즈 관리와 긴급 패치 처리에 매우 유리하다.

4. 코드 품질 유지와 테스트 용이성

 * 기능 개발이 완료되면 코드 리뷰를 통해 품질을 검토하고 테스트한 후 메인 브랜치에 병합할 수 있어, 프로젝트의 코드 품질을 높일 수 있다.
 * * 테스트용 브랜치를 생성하여 새로운 기능이나 버그 수정을 테스트해볼 수 있으며, 테스트 결과에 따라 안전하게 수정 및 업데이트가
     가능하다.

 

다음은 브랜치를 병합(Merge)하는 방법에 대해 알아볼 것이당.

 

 

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'GIT' 카테고리의 다른 글

[Git] README.md 설정하기  (0) 2024.11.26 Git 사용법  (1) 2024.11.25

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[LINUX] LINUX 기본 명령어 정리

치자피즈토핑추가 2024. 11. 26. 17:58
2024. 11. 26. 17:58
Linux, 기초, 명령어, 정리


 

 

Linux에는 어마어마하게 많은 명령어가 있다.

모든 걸 다 외우긴 힘드니까 가장 많이 사용하는 것들 위주로 정리해보았다.

더 알고 싶으면 여기에서 찾아보는 걸 추천한다.

 


1. LS

 * ls : 현재 디렉토리의 모든 파일 및 폴더를 기본 형식으로 보여준다.
 * ls -l : 파일 및 폴더에 대한 자세한 정보와 함께 리스트업 한다.
 * ls -a : 숨겨진 파일을 포함하여 모든 파일을 보여준다.

 


2. CD

 * cd : 현재 디렉토리를 변경한다.
 * cd [폴더경로] : 해당 디렉토리로 이동한다. 상대경로 or 절대경로 사용
 * cd .. : 현재 디렉토리의 상위 디렉토리로 이동한다. ex) ../.. 2단계 상위로 이동


 


3. PWD

 * pwd : 현재 작업중인 디렉토리의 경로를 표시한다.

 


4. RM

 * rm : 디렉토리나 파일을 삭제한다.
 * rm [파일명] : 해당 파일을 삭제한다. 상대경로 or 절대경로 사용가능
 * rm -r [폴더명] : 해당 폴더와 그 안의 모든 내용을 삭제한다.

 


5. CP

 * cp : 파일이나 디렉토리를 복사한다.
 * cp [파일명1] [파일명2] : 파일명1을 파일명2라는 이름으로 복사한다. 파일명2가 이미 존재하면 덮어쓴다.
 * cp -r [디렉토리_1] [디렉토리_2] : 디렉토리_1과 내용을 디렉토리_2로 복사한다.

 


6. TOUCH

 * touch : 새로운 파일을 생성한다. 기존 파일의 타임스탬프를 현재 시간으로 갱신하기도 한다.
 * touch [파일명] : 새로운 파일을 생성한다.

 


7. MV

 * mv : 파일이나 디렉토리의 위치를 이동시키거나 이름을 변경한다.
 * mv [파일_1][파일_2] : 파일_1의 이름을 파일_2로 변경한다.
 * mv [파일] [디렉토리경로] : 파일을 지정된 디렉토리로 이동한다.
 * mv 명령어는 파일의 위치정보만 변경하기때문에 처리 속도가 빠르다,
 * 이동하려는 대상 경로에 이미 있으면 덮어쓰기

 


8. MKDIR

 * mkdir : 새로운 디렉토리를 생성한다.
 * mkdir [폴더명] : 현재 디렉토리에 새로운 디렉토리를 생성한다.

 


8. RMDIR

 * rmdir : 디렉토리를 삭제한다.
 * rmdir [폴더명] : 해당 이름의 디렉토리를 삭제한다.
 * rmdir은 디렉토리가 비었을 때만 작동! 안에 파일이 있을땐 rm -r 사용

 


10. CAT

 * cat : 파일의 내용을 화면에 출력한다.
 * cat [파일명] : 해당 파일의 내용을 출력한다.
 * cat [파일_1] [파일_2] > [새파일] : 파일_1과 파일_2를 합쳐 새파일로 저장한다.

 


11. CHMOD

 * chmod : 파일이나 디렉토리의 권한을 변경한다.
 * chmod 660 [파일명] : 해당 파일에 660 권한을 준다.
 * 숫자는 사용자, 그룹, 다른 사용자에 대한 권한으로 나뉜다.
 * 읽기권한인 r 은 4, 쓰기권한인 w 는 2, 실행권한인 x 는 1 로 계산 ex) -wx = 3, r-- = 4

 


12. GREP

 * 파일 내용중에 지정된 패턴이나 문자열을 검색한다. 한마디로 상세검색기능
 * grep "text" [파일명] : 해당 파일에서 "text"라는 문자열이 포함된 모든 줄을 표시한다.
 * 정규 표현식을 사용하여 더 복잡하게 검색 패턴을 지정할 수 있어 로그 파일 분석이나 특정 데이터 추출에 유용하다.

 


13. EHCO

 * 주어진 문자열을 출력한다.
 * echo "hello world" : 터미널에 hello world를 출력한다.
 * echo "text" > [파일명] : text를 해당 파일에 저장한다.


 


13. SUDO

 * 관리자 권한을 부여하는 명령어이다.
 * sudo apt-get update : 패키지 리스트를 업데이트 한다.
 * sudo su - root : 관리자 계정으로 로그인한다.

 


16. FIND

 * 파일이나 디렉토리를 검색한다.
 * find . -name [파일명] : 현재 디렉토리에서 해당 파일을 찾는다.
 * find / -type d -name [디렉토리명] : 루트 디렉토리에서 해당 디렉토리를 찾는다.

 

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'LINUX' 카테고리의 다른 글

[Linux] 가상머신의 IP 설정  (0) 2024.11.27 Ubuntu 설치 및 세팅  (0) 2024.11.24

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


[GIT] README.MD 설정하기

치자피즈토핑추가 2024. 11. 26. 14:20
2024. 11. 26. 14:20
GIT, Github, Markdown, readme, 굵게, 문법, 작성, 줄내림


이번엔 README.md 파일 작성하는 법을 알아보자

 

README.md 는 개발자가 이 프로젝트 또는 파일에 대한 설명을 적어놓는 곳이라고 생각하면 된다.

 

Github에서 자주 접하는데 들어가자마자 보이니 약간 프로젝트의 첫인상? 같은 느낌이다.

사람도 첫인상이 좋으면 호감이 생기는 것처럼 우리도 아끼는 프로젝트의 README.md를 잘 꾸며주자.

 

그럼 시작하기전에 README의 확장자인 .md가 무슨 뜻일까?

README는 markdown(마크다운언어) 라는 뜻이다.

마크다운언어는 마크업언어의 일종으로 특수기호와 문자를 이용한 매우 간단한 구조의 문법을 사용하여 웹에서도 빠르게 컨텐츠를 작성하고 직관적으로
인식할 수 있다.

Github에서는 기능을 더 추가한 Github-Flavored Markdown 을 사용한다. 

 

그래서 여기에도 문법이 존재한다.

아래 소개할 다양한 문법들로 README.md 파일을 잘 작성해보자

 


1. 제목

 

# 내용 으로 사용가능하다.

#을 많이 쓸수록 크기가 줄어든다.

6개까지 가능하다.

 

> # 제목입니다
> ## 제목입니다

 

 





 

아니면 이렇게도 가능하다.

> 다른제목
> ===
> 작은다른제목
> ---





 

 


2. 개행 (줄내림)

마크다운은 기본적으로 강제개행(enter키 누르면 줄내림 되는것)을 인식하지 않는다.

개행을 하려면 띄어쓰기를 두번 하거나 역슬래시를 넣으면 된다. 

가독성 문제로 띄어쓰기는 권장하지 않는다.

> 치즈피자  
> 먹고싶다
> 
> 치즈피자\
> 더\
> 먹고싶다





 


3. 목록

*이나 -로 목록 표시가 가능하다.

> * 목록1
> * 목록2
> * 목록3
> - 목록1
> - 목록2





 

순서도 가능하다.

근데 앞에 숫자는 안 맞춰도 작동한다. 어차피 각 행이 HTML의 <li> 형태로 변환되어 정보가 사라지기 때문이다.

> 1. 1번
> 2. 2번
> 3. 3번
> 6. 4번
> 3. 5번

 





 

 

아래처럼 목록안의 목록도 가능하다.

 

> * 목록
>     * 목록
>         * 목록
> 1. 목록
>     1. 목록
>     3. 목록
> 1. 목록
>     1. 목록

 






4. 굵게와 기울기

** 이나 __ 로 감싸주면 굵은 글씨가 가능하다.

> 너만 **굵냐** 나도 __굵다__





 

*와 _를 하나씩 사용하면 기울여진 글자가 나오는데, 위의 기능과 같이 쓰면 둘 다 사용가능하다.

> *기울게* _기울게_
> ***굵게기울게*** ___굵게기울게___

 

 





 

 


5. 코드

기본 마크다운과는 다르게 Github는 ``` 로 감싸기만하면 여러 줄까지 지원해준다.

위 ``` 옆에 프로그래밍언어를 쓰면 색깔도 나온다.

참 좋은 세상이다.

> ``` c
> printf("Hello world!");
> printf("Bye world!");
> ```





 

 


6. 인용문

 

> 을 사용하면 된다. 많이 쓰면 중첩된다.

 

> > 피자에는
> >> 치즈크러스트다
> >>> 아니다 고구마무스다

 





 

 

 

 


7. 링크

 

[내용](링크)  내용을 클릭하면 링크로 이동한다.

 

> [네이버](https://www.naver.com)





 


8. 이미지

 

![내용](링크) 내용에 이미지 설명과 이미지 주소를 링크에 쓰면된다. 

이거 전체를 위 링크의 내용란에 넣고 링크를 설정해주면 이미지링크로도 사용가능하다.

 

> ![발로란트곰](https://valorantinfo.com/images/kr/tactibear-spray_valorant_gif_3946.gif)





 

❗ 그냥 내용에 특수문자를 사용하고 싶을 땐 앞에 \ 를 붙여주면 된다!

 

 

더 다양한 기능을 알고싶다면 아래 링크로!

 

추가 기능

 

 

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'GIT' 카테고리의 다른 글

[Git] Branch 브랜치란?  (0) 2024.11.26 Git 사용법  (1) 2024.11.25

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록


GIT 사용법

치자피즈토핑추가 2024. 11. 25. 19:26
2024. 11. 25. 19:26
GIT, git checkout, init', swcamp, 설치, 한화시스템



GIT 설치

UBUNTU 에서 설치 명령어

> $ sudo apt install git-all

 

WINDOW 에서 설치 

 

Standalone Installer 64bit 받으면 된다.

 

GIT 홈페이지

 

Git - Downloading Package

Download for Windows Click here to download the latest (2.47.0(2)) 64-bit
version of Git for Windows. This is the most recent maintained build. It was
released on 2024-10-22. Other Git for Windows downloads Standalone Installer
32-bit Git for Windows Setup

git-scm.com

 

 

GIT INIT 

새로운 Git 저장소(repository)를 생성할 때 사용하는 Git 명령어 

디렉토리 우클릭 하고 git bash로 열기

 

GIT DIFF

 

commit 이나 branch 사이에 다른점 혹은 파일이나 Repository와 Working Directory 사이의 다른점을 보여주는 명령어

 

 

GIT ADD [파일이름]

 

staging area로 추가 - 대기공간같은 느낌 

git add . -> 모든 파일 추가

 

GIT COMMIT -M “메시지”  

Staging Area에 추가한 파일들을 Commit을 한다면 최종적으로 저장소(Repository)로  저장되게 됩니다.

 





 





Untracked : Working Directory에 있는 파일이지만 Git으로 버전관리를 하지 않는 상태
Unmodified : 신규로 파일이 추가되었을 때, new file 상태와 같다. ( $ git add 상태 )
Modified : 파일이 추가된 이후 해당 파일이 수정되었을 때의 상태
Staged : Staging Area에 반영된 상태

 

왜 Staging Area에 들릴까?

 

Git의 Staging Area는 어떤 점이 유용한가

Git에는 Staging Area라는 공간이 있다. 어떤 변경사항이 저장소에 커밋되기 전에, 반드시 거쳐야만 하는 중간단계이다. 다른
버전관리도구에는 이에 정확히 대응하는 것은 없다. 저장소가 추적하는

blog.npcode.com

 

 

GIT RM

파일 삭제

> git rm => 원격 저장소와 로컬 저장소에 있는 파일을 삭제한다.
> 
> git rm --cached => 원격 저장소에 있는 파일을 삭제한다. 로컬 저장소에 있는 파일은 삭제하지 않는다.

 

GIT COMMIT --AMEND 커밋 해시

 

commit 취소하고 다시 날림   commit ID가 바뀌므로 포크해온 저장소의 커밋을 --amend 로 수정하고 PR을 날리려 하면 커밋
트리가 일치하지 않아 컨플릭트의 원인이 될 수도 있다.

 

GIT CHECKOUT

+ branch name - Branch 혹은 Commit 전환 (switch)

+ 해시 - 내용 되돌리기 (restore)

 

GIT RESET 해시

내용 되돌리기

 

checkout과 차이점

reset = HEAD가 가리키던 브랜치가 다른 커밋을 가리키도록 한다.

checkout = HEAD 자체가 다른 커밋이나 브랜치를 가리키도록 한다.

둘 다 HEAD가 다른 commit을 가리키는 결과가 나오지만 reset은 브랜치를 통해, checkout은 HEAD 자체가 가리키는
Detached head가 된다.

 

 

작업을 저장하지않은 상태에서 다른버전으로 왔다갔다 하지 않아야한다.

저장하지 않고 왔다갔다 하면 HEAD가 특정 브랜치가 아닌 커밋을 가리키는 상태가 됨

정상 : HEAD -> branch -> commit

비정상 HEAD -> commit                      -> detached head

해결 git branch -f main HEAD

 

 1. 이전버전 파일 확인만 할때
    1. git checkout 커밋해시
 2. 이전버전(현재상태유지)
    1. git reset –soft 해시
 3. 이전버전(작업디렉토리유지)
    1. git reset -mixed  해시
 4. 이전버전(완전 이전버전으로)
    1. 1. git reset –hard 해시

 


GIT PUSH ORIGIN BRANCH OR MASTER

원격저장소로 업로드

 


GIT PULL ORIGIN BRANCH OR MASTER

원격저장소에서 변경사항 가져오기

 

커밋 메시지 규칙

 1. 템플릿
 2. [제목타입] 로그인 기능 구현 (# 이슈번호)
 3. 로그인 기능을 ~랑 ~랑 ~사용해서 어떻게 구현했다.
 4. 꼬리말 타입 : #이슈번호

git flow 전략에 관해서

 

https://inpa.tistory.com/entry/GIT-%E2%9A%A1%EF%B8%8F-github-flow-git-flow-%F0%9F%93%88-%EB%B8%8C%EB%9E%9C%EC%B9%98-%EC%A0%84%EB%9E%B5

 

좋아요1
공유하기

게시글 관리

구독하기치자피즈


'GIT' 카테고리의 다른 글

[Git] Branch 브랜치란?  (0) 2024.11.26 [Git] README.md 설정하기  (0) 2024.11.26

치자피즈피즈치자 먹고싶다.구독하기
댓글1
 * 익명비밀댓글
   
   비밀댓글입니다.
   
   2024. 11. 25. 20:01
   더보기
    * 링크복사
   
   비밀번호 입력입력하기

비밀글등록
PREV 이전 123 NEXT 다음

+ RECENT POSTS

 * [Linux] 가상머신의 IP 설정
 * [DB] SQL 기초 문법
 * [DB] 데이터베이스(DB)란??
 * [DB] 가상환경에서 DB 초기설정
   


Powered by Tistory, Designed by wallel
Rss Feed and Twitter, Facebook, Youtube, Google+



티스토리툴바

치자피즈구독하기
관리메뉴열기


개인정보

 * 티스토리 홈
 * 포럼
 * 로그인