본문 바로가기

프로그래밍언어/DB

(5)
MYSQL 아키텍처 - 스토리지 엔진 InnoDB MySql 8.0의 기본 스토리지 엔진이며 보편적으로 가장 많이사용함 (오라클과 유사한 구조) - 성능이 뛰어나고 commit,rollback 및 장애 복구 기능을 가지고 있으며, 결제 정보와 같이 무결성을 필요로하고 손실되면 안되는 데이터들이 필요할 때 사용 (ACID, 원자성,일관성,격리성,내구성) - 핵심 특징은 Buffer Pool을 사용하여 디스크상의 Data파일이나 인덱스 정보를 메모리에 캐시 해두어, 디스크의 I/O를 줄 일 수 있고 , 프라이머리키를 기준으로 클러스터링 되어 저장되는데, 키값 순서대로 디스크에 저장이되어 스캔히 상당히 빠름 - InnoDb에서만 사용가능한 외래키는 참조 대상값이 바뀌는 것에 대한 보장을 할 수 있음(데이터의 무결성) , 단 잠금(lock)을 발생..
MySQL 5.7/8.0 외부 접근 허용 ,권한, 유저 추가 ODBC등 외부에서 MySQL에 접속을 하려면, MySQL 접속이 허용이 필요 mysq 5.7 버전 까지는 grant all 설정으로 유저생성과 권한을 같이 줄 수 있었지만 8버전은 유저 생성과 권한 부여를 따로 해주어야 한다 mysql> create user 계정@'%' identified by '암호' mysql> grant all privileges on DB.테이블(*) to 계정@'%' with grant option; mysql > flush privileges; ----------------------5.7버전---------------------- 1. 테이블 살펴보기 먼저, mysql에 들어가서 다음 방법을 이용해 접근 상태 확인. mysql> use mysql; mysql> select..
무결성 관리 및 보안과 권한부여에 대한 팁 무결성(Integrity)과 보안(Security) 무결성과 보안 무결성은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것이고 보안은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것입니다. 무결성 데이터의 정확성을 보장하는 특징입니다. 개체 무결성: 한 릴레이션의 기본 키(Primary Key)를 구성하는 어떠한 속성도 NULL이나 중복할 수 없는 특징 참조 무결성: 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없는 특징 도메인 무결성: 주어진 튜플의 속성 값이 속성에 정의한 도메인에 속해야 한다는 특징 보안 권한이 없는 사용자로부터 데이터베이스를 보호하는 기법입니다. 권한 부여 기법과 암호화 기법으로 나눌 수 있습니다. 권한 부여 기법 GRANT로 권한을 부여하고 REVOKE로 권한을 취소합..
INSERT 데이터삽입 INSERT 데이터삽입 2가지 유형 INSERT INTO 테이블명 (COLUMN_LIST) VALUES(COLUMN_LIST에 넣을 VALUE_LIST); ex) insert into menu(NAME, PRICE, SUB_MENU, NO) VALUES('샐러드' , '9800' , '치즈' , '02'); insert into menu(NAME, PRICE, SUB_MENU, NO) VALUES('샐러드' , '9800' , '치즈' , '02'); 또는 INSERT INTO 테이블명 VALUES(COLUMN_LIST에 넣을 VALUE_LIST); ex) insert into menu VALUES('샐러드' , '9800' , '치즈' , '02'); insert into menu VALUES('샐러드..
database mysql mariadb 명령어 데이터베이스 생성/보기 마리아DB 접속 [root@xorms0707-33632 ~]# mysql -uroot -p Enter password : 암호입력 데이터베이스 생성/보기 데이터베이스를 생성, mysql> CREATE DATABASE dbname;현재 존재하는 데이터베이스 목록. mysql> SHOW DATABASES; 특정 데이타베이스를 사용하겠다고 선언. mysql> USE dbname; 쓸모 없으면 과감히 삭제. mysql> DROP DATABASE [IF EXISTS] dbname;ISTS 옵션은 비록 데이타베이스가 없더라도 오류를 발생시키지 말라는 뜻 테이블 생성/보기 테이블을 생성하고, mysql> CREATE TABLE tablename ( column_name1 INT, column_..