IT수업/데이터베이스 28

it 수업 5주차 (8) ER다이어그램

mysql에 들어가 ER다이어그램을 만들어 볼 것이다. 홈 화면에서 File의 New Model을 클릭한다. 그러면 이런 화면이 나오는데 여기서 db이름을 지정해주기 위해 'mydb'를 더블클릭한다. 이름을 LMSDB로 지정하고 Add Diagram을 더블 클릭해 다이어그램을 만들 준비를 해준다. 예시로 하나 만들어 본다. 저 아이콘을 눌러 테이블을 만들 수 있다. 만들어진 테이블을 더블클릭하면 이렇게 테이블안에 값을 넣을 수 있다. 나머지 하나도 만들어 둘을 1:n 으로 연결해 볼 것이다. 이렇게 만들었으면 연결해 볼 것인데 하나의 부서에 여러 직원들이 존재 할 수 있으니까 부모테이블은 department테이블이라 할 수 있고 employee테이블은 자식테이블이라 할 수 있다. 둘을 연결 시켜주기 위해..

it 수업 5주차 (7) 유스케이스, ERD

1. 후보키 - 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별할 수 있는 속성들의 부분집합을 의미 - 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야 함 - 릴레이션에 있는 모든 튜플에 대해서 유일성과 최소성을 만족시켜야 함 - 기본키가 될 수 있는 키들을 후보키라고 한다. 2. 기본키(PK : Primary Key) - 후보키 중에서 선택한 주키(Main Key) - 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성 - Null 값을 가질 수 없음 (개체 무결성의 첫번째 조건) - 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없음 (개체 무결성의 두번째 조건) 3. 외래키(FK : Foreign Key) - 관계(Relation)를 맺고 있는 릴레이션 R1, R2에서 ..

it 수업 5주차 (6) 백업, 내보내기, 가져오기

데이터 백업(내보내기)를 해볼 것이다. administration의 data export를 선택한다. db는 testdb를 선택하고 더블클릭하면 테이블들이 나오는데 백업할 테이블들을 선택해준다.. 그리고 dump 3개도 선택해주고 원하는 위치에 백업을 하기 위해 두번째에 있는 export to self-contained file을 선택해준다. 마지막으로 start export를 눌러준다. 그럼 다운로드 파일에 testdb.bak이 백업 된 것을 볼 수 있다. 이번엔 백업했던 파일을 가져와 볼 것이다. 먼저 기존에 있던 testdb파일은 삭제하고 시작할 것이다. testdb파일을 삭제해줬다. schemas의 칸에서 마우스 오른쪽 버튼을 눌러 create schema를 해준다. 이름은 testdb로 해준다...

it 수업 5주차 (5) DCL

grant는 권한을 부여하는 명령어 이다. user10에게 주어진 권한을 보려한다. user10에게 select, insert권한을 줘 보려 한다. GRANT 명령어, 명령어... ON DB명.테이블명 TO 계정명@접속위치; 확인해보면 user10에게 select와 insert의 권한이 주어진 것을 볼 수 있다. GUI화면에서도 보면 user10에게 select와 insert의 권한이 주어진 것을 볼 수 있다. user20에는 GUI로 권한을 부여해보려고 한다. 현재는 이렇게 권한 설정이 되어있지 않다. 여기서 Add Entry...를 눌러 testdb의 DELETE, INSERT, SELECT, UPDATE 권한을 체크하여 apply하면 해당 권한들이 주어지게 된다. 만약 여기서 권한을 체크하지 않고 ..

it 수업 5주차 (4) 계정생성, 삭제

실행 창(window+r) 에서 services.msc를 치면 mysql이 실행되는지의 유무를 확인 할 수 있다. gui인 workbench에서 먼저 유저를 생성해 볼 것이다. Administration의 Users and Privileges를 클릭 한 후 Add Acount를 클릭한다. 이름은 user10 접속위치는 localhost로 주었다. 그리고 홈으로 와서 새로운 localhost를 만들어 준다. 다시 root의 Users and Privileges에 들어와 user10을 선택한 뒤 Add Entry를 클릭해 testdb를 선택해 준다. 그리고 select권한만 준다. 그러고 apply 하면 이렇게 적용 된 것을 볼 수 있다. 모든 창을 끈 뒤 다시 user10@localhost에만 로그인하여 ..

it 수업 5주차 (3) 기본 명령어

information_schema : 테이블, 컬럼, 권한 등 메타데이터가 저장 performance_schema : MySQL 관련 서버의 성능과 관련된 정보가 저장 ex) 스레드 정보, Lock Table, 쿼리 실행시간 등... MySQL : MySQL 서버 자체를 관리하기 위한 스키마 사용자 정보, 권한 및 다양한 설정정보 저장 sys : MySQL 8.x 부터 도입된 DB 성능 모니터링 및 최적화를 위한 도구와 뷰를 제공 DB확인 : show databases; Tbl확인 : show tables; Source가져오기 : source sql파일명 Tbl구조 : desc 테이블명 삽입 : insert into 테이블명(열1,열2...) values(값1,값2...); 수정 : update 테이블명..

it 수업 5주차 (2) DDL, DML

work bench가 아닌 cmd 창에서 testdb안의 tbl_user 테이블과 그 안의 정보들을 생성해 볼 것이다. 테이블을 생성할 때는 이렇게 하면 된다. create table 테이블명( 컬럼명 자료형 제약조건, 컬럼명 자료형 제약조건, 컬럼명 자료형 제약조건, ... ); 먼저 testdb를 사용하기 위해 use testdb;를 치고 show tables;를 치면 아무것도 없이 비어있는 것을 볼 수 있다. 여기에 tbl_user를 생성 해볼 것이다. 이렇게 코드를 치고 show tables;를 하면 tbl_user테이블이 생성된 것을 볼 수 있다. desc tbl_user; 를 치면 tbl_user테이블 안의 정보들을 볼 수..

it 수업 5주차 (1) 기본 설정

먼저 mysql을 다운받아 준다. - mysql 다운로드 다운로드를 눌러 밑에 버튼을 눌러준다. 다운을 받은 후 myspl의 bin 폴더에 들어와 경로창에 cmd를 친 다음 mysql -u root -p 명령어를 친다. 비밀번호 까지 치면 이런화면이 나온다. 윈도우의 cmd창에서도 mysql이 사용이 될 수 있게 설정을 할 것이다. 윈도우의 cmd창에 sysdm.cpl을 치고 고급->환경변수->시스템변수의 path를 찾아 편집의 새로만들기를 하여 mysql의 bin주소를 복사 붙여넣기 한다. 그러고 윈도우의 cmd창을 열어 mysql -u root -p를 쳐서 확인해본다. 성공하면 이렇게 윈도우 cmd창에서 mysql을 실행 시킬 수 있다. mysql을 실행해 왼쪽 스키마부분에 testdb와 test2d..