데이터베이스 이론 및 MySQL 설치 및 환경 설정

데이터베이스 이론 및 MySQL 설치 2023-2-27 업데이트 5.7 버전 MySQL 다운로드 다운로드 및 압축 해제 설치 패키지를 다운로드한 후 적절한 폴더에 압축을 해제합니다. my.ini 설정 파일 생성 5.7 버전의 MySQL은 기본적으로 설정 파일과 data 폴더가 없으므로 초기화 과정에서 수동으로 생성해야 합니다: [mysqld] port = 3306 basedir=C:\MySQL\mysql-5.7.40-winx6 ...

7월 17일 20:42에 게시됨

Docker를 이용한 MySQL 마스터-슬레이브 복제 설정

Docker를 이용한 MySQL 마스터-슬레이브 복제 설정 MySQL 5.7 이미지 다운로드 [root@localhost ~]# docker pull mysql:5.7 [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql 5.7 c20987f18b13 2 years ago 448MB 1. 마스터 서버 컨테이너 생성 (3309 포트 사용) 포맷: docker run -d -p 3309:33 ...

7월 17일 04:55에 게시됨

SQLAlchemy ORM 사용법: 데이터베이스 작업 및 관리

SQLAlchemy은 Python에서 가장 널리 사용되는 ORM(객체-관계 매핑) 프레임워크로, 효율적이고 유연한 데이터베이스 조작 기능을 제공합니다. 본문에서는 SQLAlchemy ORM을 활용한 데이터베이스 작업 방법에 대해 설명합니다. 설치 pip install sqlalchemy 특정 데이터베이스와 연동하려면 추가 드라이버 설치가 필요합니다: # PostgreSQL pip install psycopg2-binary ...

7월 16일 16:28에 게시됨

SQLAlchemy를 활용한 데이터베이스 관리 및 운영

ORM 기반의 데이터 접근: SQLAlchemy 소개 Python 환경에서 가장 널리 사용되는 객체 관계 매핑(ORM) 도구인 SQLAlchemy는 데이터베이스 작업을 객체 지향 방식으로 간편하게 처리할 수 있도록 지원합니다. 이 문서에서는 실제 애플리케이션 개발에 적용 가능한 핵심 개념과 실용적인 예제를 중심으로 다룹니다. 설치 및 환경 구성 pip install sqlalchemy 다른 데이터베 ...

7월 15일 01:15에 게시됨

Etcd v3 백업 및 복구 가이드

일반 환경 변수 # etcd v3.4.13 환경 변수 파일 ETCD_DATA_DIR=/var/lib/etcd ETCD_ADVERTISE_CLIENT_URLS=https://192.168.1.190:2379 # 서버 IP 및 포트 ETCD_INITIAL_ADVERTISE_PEER_URLS=https://192.168.1.190:2380 # 서버 IP 및 포트 ETCD_INITIAL_CLUSTER_STATE=existing ETCD_METRICS=basic ETCD_LISTEN_CLIENT_URLS=https://192.168.1.190:2379,https://127.0.0.1 ...

7월 14일 02:31에 게시됨

SQL 실행 순서, SELECT는 5번째다

많은 SQL 초보자들이 SELECT로 쿼리를 시작하지만, 실제 실행 순서는 전혀 다릅니다. 이 글에서는 SELECT 쿼리가 내부적으로 어떤 순서로 처리되는지 살펴보겠습니다. 어제 윈도우 함수에 대한 설명을 준비하다가 "윈도우 함수 결과를 WHERE나 HAVING에서 필터링할 수 있을까?"라는 질문에 직면했습니다. 결론적으로 윈도우 함수는 WHERE와 GROUP BY 이후에 실행되므로 불 ...

7월 11일 19:04에 게시됨

MySQL 조인 연산 이해

테이블 구조 예시 도서ID도서명 101Java 102C++ 103PHP 도서ID저자 102장길동 103왕서방 104이순신 저자출판년도 장길동2003 마동탁2006 유재석2011 내부 조인(INNER JOIN) 공통 컬럼 값을 기준으로 두 테이블의 교집합 반환 SELECT 도서.도서ID, 도서명, 저자 FROM 도서 INNER JOIN 저자정보 USING (도서ID); +--------+--------+- ...

7월 11일 18:35에 게시됨

ThinkPHP에서의 데이터 조작: 삽입, 삭제, 수정, 조회

1. 데이터 객체 생성 폼을 통해 제출된 데이터를 기반으로 모델 객체를 생성할 수 있다. $userModel = M('User'); // User 모델 인스턴스화 $userModel->create(); // POST 데이터를 기반으로 자동으로 데이터 객체 생성 2. 데이터 삽입 새로운 레코드를 데이터베이스에 추가하려면 add() 메서드를 사용한다. 이 메서드는 삽입된 행의 기본 키 값을 반환한다. $userModel ...

7월 10일 05:42에 게시됨

몽고DB 기본 가이드

몽고DB 소개 서버 시작 몽고DB 서버를 시작하기 위한 최소 파라미터는 다음과 같습니다: --port: 기본값 27017 --dbpath: 기본값 /data/db --logpath: 기본값 stdout로 출력 서버 시작 후 mongo 클라이언트로 연결하려면 mongo --port=27017을 사용합니다. --port는 기본값이므로 생략 가능합니다. 기본 개념 몽고DB는 Database, Collections, Documents 구조로 구성 ...

7월 8일 08:59에 게시됨

PL/SQL 성능 최적화 전략

테이블 조인 및 파싱 순서 최적화 효율적인 테이블 순서 선택 오라클의 규칙 기반 옵티마이저(RBO)는 FROM 절을 오른쪽에서 왼쪽으로 처리하므로, 가장 작은 테이블을 마지막에 배치하는 것이 유리하다. 현재는 대부분 비용 기반 옵티마이저(CBO)를 사용하지만, 좋은 습관은 유지하는 것이 바람직하다. -- 효율적인 접근: 소형 테이블 먼저 처리 SELECT COUNT(*) FROM a ...

7월 7일 01:33에 게시됨