본문 바로가기

Database8

[realMySQL][5] 사용자 및 권한 사용자 식별 MySQL 는 사용자 계정 뿐만 아니라 사용자의 접속 지점(도메인 이름 또는 IP주소) 도 계정의 일부가 됩니다. select user ,host,account_locked from mysql.user 위 사진에서 보이듯 계정 이름이 'root' 인것이 2개가 존재합니다. 1) 'root'@'%' 2) 'root'@'localhost' 만약 'svc_id'@'192.168.0.10' 이라는 계정이 있다면 '192.168.0.10' 에서만 'svc_id'로 접속가능합니다. 모든 지점에서 접속을 가능하게 하려면 '%' 를 붙이면 모든 IP주소에서 접근할 수 있습니다. 그러면 'svc_id'@'192.168.0.10' 의 비밀번호는 123 이고 'svc_id'@'%'의 비밀번호는 abc라면 'sv.. 2022. 5. 7.
[realmySQL][4] 시스템 변수 MySQL 워크밴치를 오픈하고 아래 명령어를 통해 시스템변수들의 목록을 볼 수 있습니다. SHOW GLOBAL VARIABLES; MySQL 서버는 기동하면서 설정파일의 내용을 읽어 메모리나 작동방식을 초기화 합니다. MySQL 서버에서는 이렇게 저장된 값을 시스템변수라고 합니다. https://dev.mysql.com/doc/refman/8.0/en/server-system-variable-reference.html MySQL :: MySQL 8.0 Reference Manual :: 5.1.5 Server System Variable Reference MySQL 8.0 Reference Manual / ... / MySQL Server Administration / The MySQL Server / .. 2022. 5. 6.
[realMySQL][3] MySQL 서버설정파일 우선순위(my.cnf) MySQL 은 단 하나의 설정파일(my.cnf)을 가집니다. (일반적으로) my.cnf 를 찾기 위한 우선순위가 있습니다. 아래 명령어를 입력하고 중간 부분에 확인해봅니다. mysql --help 위사진에서 보이듯이 defaul option 의 순서는 다음과 같은 순서로 검색합니다. 1) /etc/my.cnf 2) /etc/mysql/my.cnf 3) ~/.my.cnf my.cnf는 수많은 시스템 변수설정들이 포함되어있습니다. 이러한 변수들의 설정들을 알아가는 과정이 책의 목적이라고 생각합니다. 2022. 5. 6.
[2] MySQL8 Docker 를 이용한 MySQL 설치(초간단) (MAC M1) https://docs.docker.com/desktop/mac/apple-silicon/ Docker Desktop for Apple silicon docs.docker.com 위 사이트에 접속해서 M1 칩 전용 도커를 다운로드 받습니다. 1. docker-compose.yml 파일 작성 아래 docker-compose.yml 파일을 복사하여 생성합니다. version: '3' # 파일 규격 번호 services: local-db: platform: linux/x86_64 # 추가된 라인 M1 에서만 추가 image: library/mysql:8.0.23 container_name: local-db restart: always command: # 명령어 실행 한글 깨짐 방지 - --character-s.. 2022. 4. 23.
[2] MySQL 8 설치 및 설정 (MAC) 다운로드 주소 : https://dev.mysql.com/downloads/mysql/ MySQL :: Download MySQL Community Server Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS Source Code Select OS Version: All Windows (x86 dev.mysql.com 1. MySQL 다운로드 저는 MAC 의 M1 CPU를 쓰고 있어서 A.. 2022. 4. 16.
[데이터베이스] transaction manager, storage manager, query manager transaction manager - 트랜젝션이란? 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미 트랜잭션 매니저는 동시다발적인 트랜잭션을 관리 할 수 있어야 한다. transaction manager 의 필수 기능 ACID Atomicity (원자성) - 트랜잭션의 실행이 완전하게 일어나던지 아니면 시작조차 하지 않던지 둘중에 하나만 하라. Consistency (일관성) - 트랜잭션이 성공적으로 완료 되면 일관적인 DB의 상태를 유지하는 것을 말한다. 데이터형이 정수형에서 string으로 변한다거나 하면 안된다. Isolation(격리성) - 트랜잭션 수행시 다른 트랜잭션은 끼어들 수 없다. durability.. 2020. 6. 11.
[데이터베이스] 기본키와 외래키 그리고 제약조건의 설계 기본키 - primary key - 데이터를 구분하는 가장 근본이 되는 값 - not null & unique 외래키 학번 이름 수강과목 b6xxxx 김길동 1 b7xxxx 조길동 2 b5xxxx 박길동 3 수강과목id 과목이름 1 자료구조 2 프로그래밍 언어 외래키는 위 처럼 다른 테이블의 '기본키'를 참조할때 외래키라고 한다. 박길동은 3번 과목이 없지만 3번 수강과목을 들었다고 되어있는 데 이런 현상을 dangling 이라고 한다. 이는 참조 무결성을 위반한 것이다. 제약조건의 설계 -개체 무결성(entity integrity) 기본키는 null 을 가질수 없다. - 참조 무결성 (referential integrity) 외래키는 참조하는 테이블에 존재하여야 한다. - 도메인 무결성 (domain .. 2020. 6. 11.
intro DBMS 기말고사 대비겸 데이터베이스 공부한 것을 정리해보고자 한다. 어디까지 정리할지는 모르겠지만 앞으로 데이터베이스 지식에 도움이 될거 같아서 정리해 두기로 한다. 본 장에서는 간단하게 개념위주로 설명한다. DBMS 란? - 데이터 베이스를 관리하는데 필요한 기능을 제공하는 소프트웨어 DBMS 필수 기능 4가지 사용자가 데이터베이스를 디자인 할 수 있어야한다. 모든 사용자가 데이터 베이스를 조작할 수 있어야 한다. 대량의 데이터를 안전하게 보관할 수 있어야 한다. 많은 사람이 동시에 데이터를 볼 수 있어야 한다. 데이터 딕셔너리 란? 데이터 베이스 자원을 효율적으로 관리하기 위한 다양한 정보를 저장하는 시스템 테이블 테이블을 생성 및 변경할 때, 서버에서 자동으로 갱신된다. 사용자가 직접 수정 및 삭제할 수 .. 2020. 6. 11.