개요데이터베이터 시스템은 다양한 이유로 비정상 종료될 수 있으며, 이로 인해 데이터 손실이나 손상이 발생할 수 있습니다. 본 글에서는 MySQL의 비정상 종료 원인과 데이터 복구 방법을 중점적으로 간략하게 다뤄보도록 하겠습니다. 명령어 예시MySQL 비정상 종료의 원인디스크 손상이나 메모리 오류MySQL 소프트웨어 버그메모리, CPU, 디스크 자원 부족운영체제 문제 (커널 패닉)잘못된 명령어 입력이나 설정 변경 MySQL 데이터 복구 방법1. 백업 복구가장 일반적인 데이터 복구 방법입니다.정기적으로 DB의 백업을 수행해두면, 데이터 손실 시 쉽게 복구할 수 있습니다.MySQL에서 지원하는 백업 도구가 존재하고, 그외의 백업 방법도 있습니다. 1) mysqldumpMySQL 커뮤니티 에디션에서 제공하는 기..

네트워크 기본 - IP주소, PORT, DNS, URL, URI 1. IP주소 1) IP란? IP(Internet Protocol)는 인터넷을 통해 데이터를 주고받을 때 사용되는 통신 규약으로서 OSI 7계층중 LAYER 3에 위치하는 프로토콜이다. IP는 데이터를 패킷 단위로 나누어 전송하고, 받는 쪽에서는 그 패킷들을 다시 조립하여 원래의 데이터로 변환하는 과정을 거친다. IP를 통해 전송되는 데이터는 인터넷 상의 다양한 기기들과 통신할 수 있다. 2) IP주소란? - 인터넷에 연결된 각각의 기기를 구별하기 위해 사용되는 고유한 번호이다. IP주소는 네트워크 내에서 특정 기기를 찾아 데이터를 전송할 수 있도록 도와주며, 기기들이 서로 통신할 때 필수적인 요소이다. IP주소는 IPv4와 IPv6의 두 ..

관계형 데이터베이스란? 관계형 데이터베이스는 고정된 행(레코드)과 열(속성)로 구성된 테이블에 데이터를 저장한다. 각 열에는 하나의 속성에 대한 정보가 저장되고, 행에는 각 열의 데이터 형식에 맞는 데이터가 저장된다. 관계형 데이터베이스에는 핵심적인 특징이 두 가지 있다. 1. 데이터가 정해진 데이터 스키마에 따라 테이블에 저장된다. 2. 데이터가 관계를 통해 여러 테이블에 분산된다. 따라서, 테이블의 구조와 데이터 타입등을 사전에 정의해야만 하고, 테이블에 정의된 내용에 알맞은 형태의 데이터만 삽입할 수 있다. RDB의 장점 - 스키마가 명확하게 정의되어 있다. - 데이터 무결성을 보장한다. - SQL을 사용하여 데이터에 대한 효율적인 질의를 수행할 수 있다. - 정규화와 같은 방법을 이용하여 중복을 ..
OOP란? OOP(Object-Oriented Programming)는 필요한 데이터를 추상화하여 속성과 행위를 가진 객체를 만들고, 그 객체들 간의 유기적인 상호 작용을 통해 로직을 구성하는 프로그래밍 방법이다. 데이터를 중심으로 필요한 기능을 함수로 구현하는 방식의 절차 지향 프로그래밍과 달리, OOP에서는 데이터와 함수들을 묶고 이를 객체로 관리한다. 절차 지향 프로그래밍에서 데이터가 돈, 제품이라고 하면, 데이터와 행위를 별도로 생각하기 때문에 데이터에 대한 모든 행위를 '돈을~', '제품을~'과 같이 표현한다. 하지만 현실세계에서 데이터를 통해 어떤 행위를 할 때, 목적의 대상이나 주체가 정해져 있는 경우가 많다. 예를 들면, '고객이 돈을~', '기계가 제품을~'과 같은 경우이다. 이는 데이터..
1. 객체지향 프로그래밍의 5가지 설계 원칙, SOLID SOLID란 객체 지향 프로그래밍을 하면서 지켜야하는 5대 원칙으로 각각 SRP(단일 책임 원칙), OCP(개방-폐쇄 원칙), LSP(리스코프 치환 원칙), DIP(의존 역전 원칙), ISP(인터페이스 분리 원칙) SOLID 원칙을 철저히 지키면 시간이 지나도 변경이 용이하고, 유지보수와 확장이 쉬운 소프트웨어를 개발하는데 도움이 되는 것으로 알려져 있다. [단일 책임의 원칙(SRP, Single Responsibility Principle)] • 모듈이 변경되는 이유가 한가지여야 한다. → 해당 모듈이 여러 대상 또는 액터들에 대해 책임을 가져서는 안되고, 오직 하나의 액터에 대해서만 책임을 져야 한다. • 단일 책임 원칙을 제대로 지키면 변경이..
이벤트 : 웹 브라우저와 사용자 사이에 상호작용이 발생하는 특정 시점 중요 이벤트 종류 구분 이벤트 설명 마우스 이벤트 onClick 마우스로 클릭 ondblclick 마우스로 빠르게 두 번 클릭 onmouseover 마우스 포인터를 올리면 발생 onmouseout 마우스 포인터가 빠져나가면 발생 onmousemove 마우스 포인터가 움직이면 발생 onwheel 마우스 휠을 움직이면 발생 키보드 이벤트 onkeypress 키보드 버튼을 누르고 있는 동안 발생 onkeydown 키보드 버튼을 누른 순간 발생 onkeyup 키보드 버튼을 눌렀다가 뗀 순간 발생 포커스 이벤트 onfocus 요소에 포커스가 되면 발생 onblur 요소가 포커스를 잃으면 발생 폼 이벤트 onsubmit 폼이 전송될 때 발생 리소..

문서 객체 : 브라우저 객체 모델에 속하여 있는 구성 요소에 속하는 객체 중에서 DOCUMENT 객체 문서 객체 모델의 생성 : 웹 브라우저가 HTML 문서를 해석하고, 해석한 HTML 문서 구조를 객체로 변환하는 방식으로 생성됨. 그리고 생성한 문서 객체 모델을 웹 브라우저에 표시함. 따라서 웹 브라우저에 표시되는 HTML 문서는 내부적으로 무넛 객체 모델을 해석해서 보이게 됨. 문서 객체 모델은 트리 구조를 가진다. 따라서 이를 DOM 트리 라고 부름 DOM(Document Object Model, 문서 객체 모델) : HTML, XML 문서의 Programminginterface로 HTML과 JavaScript가 상호작용 할 수 있도록 하는 도구이다. ex. DOM API를 이용해 DOM 구조에 접..
브라우저 객체 모델 : 웹 브라우저에서 제공하는 객체 window.innerWidth : 웹브라우저 화면 너비 window.ineerHeight : 웹브라우저 화면 높이 window.outerWidth : 웹브라우저 창의 너비 (스크롤 포함) window.outerHeight : 웹브라우저 창의 높이 (스크롤 포함) 등 여러가지 속성들이 있음 window.open('파일이름', '팝업창이름', '기타설정들') : 새로운 창을 오픈할 때 사용 window.close() : 팝업을 닫게 해주는 메소드 window.scrollTo(100, 200); : 특정 x좌표와 y좌표로 한번에 이동 window.scrollBy(100, 200); : 특정 x좌표, y좌표 만큼 이동 + behavior:'smooth'를 ..