Data/DB

[DB]MYSQL Workbench 시작하기

뚱요 2021. 11. 10. 04:50
반응형

MYSQL Workbench

MySQL 워크벤치는 SQL 개발과 관리, 데이터베이스 설계, 생성 그리고 유지를 위한 단일 개발 통합 환경을 제공하는 비주얼 데이터베이스 설계 도구이다.

SQL 편집기

데이터베이스 모델링&관리

데이터베이스 마이그레이션

다운로드

OS 버전에 맞는 버전 설치 

https://dev.mysql.com/downloads/workbench/

MySQL Workbench 시작하기

1. MYSQL Connections 생성

Local instance가 없는 경우 + 버튼을 클릭해서 생성해준다.

2. 새로운 컨넥션 설정한다.

Connection Name 이름과 Password 비번을 설정해준다.

Store in Keychain을 누르면 하단과 같은 창에 비번을 입력할 수 있다.

3. 짠~ 생성 완료

지정한 컨넥션을 클릭하면 하단과 같은 서버 상태 화면이 나온다.

맨 오른쪽에 서버 상태가 Running으로 나오면 성공적으로 연결된 것

 

스키마 생성하기

Schemas섹션에서 오른쪽 마우스 클릭하면 스키마 생성하기를 누른다.

스키마 에디터엣 이름과 인코딩 설정 후 적용하기 누른다.

스키마 쿼리 적용하기

연결 성공적

테이블 생성

생성한 테이블에 컬럼 추가하면서 컬럼명, 데이터 타입과 제한, 디폴트 값을 설정한다.

column flags

  • PK (primary key, 기본키)
  • NN.(NOT NULL , Null 아님)
  • BIN(Binary,이진)
    • 데이터를 이진 문자열로 저장
    • 문자 집합이 없으므로 정렬 및 비교는 값에 있는 바이트의 숫자 값을 기반으로 합니다.))
  • UN( Unsigned , 부호 없음)
    • 0에서부터 시작하는 양수 값
      • 예. 범위가 -500 ~ 500 인 경우 대신 0 ~ 1000 인 경우 범위는 동일하지만 0에서 시작)
  • UQ( Unique, 고유 키 생성 / 제거)
  • ZF(Zero Filled,0으로 채우기)
    • 길이가 INT (5)와 같이 5 인 경우 모든 필드는 5 번째 자리까지 0으로 채워집니다. 12 = 00012, 400 = 00400 등)
  • G(Generated column, 생성된 열
    • 다른 열을 기반으로 하는 수식에 의해 생성된 값)
  • AI( AutoIncrement, 자동 증가)

Data types 데이터 종류

https://www.w3resource.com/mysql/mysql-data-types.php

 

MySQL Data Types - w3resource

MySQL supports a number of data types in several categories: numeric types, date and time types, and string (character and byte) types. This article provides details of these data types.

www.w3resource.com

CREATE TABLE `new_schema`.`User` (
  `user_id` INT NOT NULL,
  `name` VARCHAR(45) NOT NULL,
  `sex` VARCHAR(2) NOT NULL,
  `tel` VARCHAR(20) NOT NULL,
  PRIMARY KEY (`user_id`),
  UNIQUE INDEX `tel_UNIQUE` (`tel` ASC) VISIBLE);

엔진 선택도 가능

트러블 슈팅

Prob1. 시작부터 서버에 연결 안 되는 경우

mysql.server stop  #서버 멈추기
pkill mysqld_safe
#rm -rf /usr/local/var/mysql  #sql 지우기

brew reinstall mariadb      #mariadb 재설치

Prob2. 서버 접속 실패 - 접근 차단

 

Cannot Connect to Database Server
Your connection attempt failed for user 'root' to the MySQL server at 127.0.0.1:3306:
  Access denied for user 'root'@'localhost'

Please:
1 Check that MySQL is running on address 127.0.0.1
2 Check that MySQL is reachable on port 3306 (note: 3306 is the default, but this can be changed)
3 Check the user root has rights to connect to 127.0.0.1 from your address (MySQL rights define what clients can connect to the server and from which machines) 
4 Make sure you are both providing a password if needed and using the correct password for 127.0.0.1 connecting from the host address you're connecting from

 

 

sudo mysql -u root

ALTER USER 'root'@'localhost' IDENTIFIED by '비번?';

반응형